import { ASN1Element as _Element } from '@wildboar/asn1';
import * as $ from '@wildboar/asn1/functional';
/**
 * @summary Unbind
 * @description
 *
 * ### ASN.1 Definition:
 *
 * ```asn1
 * Unbind{OPERATION:operation}  ::=  CHOICE {
 *   unbind-invoke  [19]  OPERATION.&ArgumentType({operation}),
 *   unbind-result  [20]  OPERATION.&ResultType({operation}),
 *   unbind-error   [21]  OPERATION.&Errors.&ParameterType({operation})
 * }
 * ```
 */
export type Unbind = {
    unbind_invoke: _Element;
} | {
    unbind_result: _Element;
} | {
    unbind_error: _Element;
};
/**
 * @summary Decodes an ASN.1 element into a(n) Unbind
 * @function
 * @param {_Element} el The element being decoded.
 * @returns {Unbind} The decoded data structure.
 */
export declare function _decode_Unbind(el: _Element): Unbind;
/**
 * @summary Encodes a(n) Unbind 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 Unbind, encoded as an ASN.1 Element.
 */
export declare function _encode_Unbind(value: Unbind, elGetter: $.ASN1Encoder<Unbind>): _Element;
//# sourceMappingURL=Unbind.ta.d.mts.map