import * as $ from "@wildboar/asn1/functional"; import { type NAME_FORM } from "../InformationFramework/NAME-FORM.oca.mjs"; import { RuleIdentifier } from "../InformationFramework/RuleIdentifier.ta.mjs"; /** * @summary STRUCTURE_RULE * @description * * ### ASN.1 Definition: * * ```asn1 * STRUCTURE-RULE ::= CLASS { * &nameForm NAME-FORM, * &SuperiorStructureRules STRUCTURE-RULE.&id OPTIONAL, * &id RuleIdentifier } * WITH SYNTAX { * NAME FORM &nameForm * [SUPERIOR RULES &SuperiorStructureRules] * ID &id } * ``` * * @interface */ export interface STRUCTURE_RULE { /** * @summary A fixed string that can be used for external programs to determine the object class of this object. */ readonly class: "STRUCTURE-RULE"; /** * @summary A map of type fields to their corresponding decoders. */ readonly decoderFor: Partial<{ [_K in keyof STRUCTURE_RULE]: $.ASN1Decoder; }>; /** * @summary A map of type fields to their corresponding encoders. */ readonly encoderFor: Partial<{ [_K in keyof STRUCTURE_RULE]: $.ASN1Encoder; }>; /** * @summary &nameForm */ readonly "&nameForm"?: NAME_FORM; /** * @summary &SuperiorStructureRules */ readonly "&SuperiorStructureRules"?: RuleIdentifier; /** * @summary &id */ readonly "&id"?: RuleIdentifier; } //# sourceMappingURL=STRUCTURE-RULE.oca.d.mts.map