import { ASN1Element as _Element } from '@wildboar/asn1';
import * as $ from '@wildboar/asn1/functional';
import { ASO_qualifier_form1 } from '../ACSE-1/ASO-qualifier-form1.ta.mjs';
import { ASO_qualifier_form2 } from '../ACSE-1/ASO-qualifier-form2.ta.mjs';
import { ASO_qualifier_form3 } from '../ACSE-1/ASO-qualifier-form3.ta.mjs';
import { ASO_qualifier_form4 } from '../ACSE-1/ASO-qualifier-form4.ta.mjs';
/**
 * @summary ASO_qualifier
 * @description
 *
 * ### ASN.1 Definition:
 *
 * ```asn1
 * ASO-qualifier  ::=  CHOICE {
 *   aso-qualifier-form1  ASO-qualifier-form1,
 *   aso-qualifier-form2  ASO-qualifier-form2,
 *   ...,
 *   aso-qualifier-form3  ASO-qualifier-form3,
 *   aso-qualifier-form4  ASO-qualifier-form4
 * }
 * ```
 */
export type ASO_qualifier = {
    aso_qualifier_form1: ASO_qualifier_form1;
} | {
    aso_qualifier_form2: ASO_qualifier_form2;
} | {
    aso_qualifier_form3: ASO_qualifier_form3;
} | {
    aso_qualifier_form4: ASO_qualifier_form4;
} | _Element;
/**
 * @summary Decodes an ASN.1 element into a(n) ASO_qualifier
 * @function
 * @param {_Element} el The element being decoded.
 * @returns {ASO_qualifier} The decoded data structure.
 */
export declare function _decode_ASO_qualifier(el: _Element): ASO_qualifier;
/**
 * @summary Encodes a(n) ASO_qualifier into an ASN.1 Element.
 * @function
 * @param value The element being encoded.
 * @param elGetter A function that can be used to get new ASN.1 elements.
 * @returns {_Element} The ASO_qualifier, encoded as an ASN.1 Element.
 */
export declare function _encode_ASO_qualifier(value: ASO_qualifier, elGetter: $.ASN1Encoder<ASO_qualifier>): _Element;
//# sourceMappingURL=ASO-qualifier.ta.d.mts.map