BCPNFR20 - User-defined types - Export
ID: BCPNFR20 - User-defined types - Export
User-defined types (UDTs) SHOULD always be exported via the @export()
annotation in every template they’re implemented in.
@export()
type subnetType = { ... }
Doing so has the benefit that other (e.g., parent) modules can import them and as such reduce code duplication. Also, if the module itself is published, users of the Public Bicep Registry can import the types independently of the module itself. One example where this can be useful is a pattern module that may re-use the same interface when referencing a module from the registry.