# BCPNFR21 - User-defined types - Decorators Module Specification for the Azure Verified Modules (AVM) program ID: BCPNFR21 - User-defined types - Decorators Similar to BCPNFR9, User-defined types (UDTs) MUST implement decorators such as description & secure (if sensitive). This is true for every property of the UDT, as well as the UDT itself. Further, User-defined types SHOULD implement decorators like allowed, minValue, maxValue, minLength & maxLength (and others if available) as they have a big positive impact on the module’s usability. @description('My type''s description.') type myType = { @description('Optional. The threshold of your resource.') @minValue(1) @maxValue(10) threshold: int? @description('Required. The SKU of your resource.') sku: ('Basic' | 'Premium' | 'Standard') } --- Source: https://raw.githubusercontent.com/Azure/Azure-Verified-Modules/refs/heads/main/docs/content/specs-defs/includes/bicep/shared/non-functional/BCPNFR21.md Last Modified: 0001-01-01