import { ASN1Element as _Element } from '@wildboar/asn1';
import * as $ from '@wildboar/asn1/functional';
import { Bind } from '../Remote-Operations-Generic-ROS-PDUs/Bind.ta.mjs';
import { Unbind } from '../Remote-Operations-Generic-ROS-PDUs/Unbind.ta.mjs';
import { ROS_SingleAS } from '../Remote-Operations-Abstract-Syntaxes/ROS-SingleAS.ta.mjs';
/**
 * @summary AllValues
 * @description
 *
 * ### ASN.1 Definition:
 *
 * ```asn1
 * AllValues{APPLICATION-CONTEXT:ac}  ::=  CHOICE {
 *   bind          Bind{ac.&associationContract.&connection.&bind},
 *   unbind        Unbind{ac.&associationContract.&connection.&unbind},
 *   ros-singleAS
 *     ROS-SingleAS{{ROSEInvokeIds},
 *                 combine{{ac.&associationContract.&OperationsOf |
 *                        ac.&associationContract.&InitiatorConsumerOf |
 *                        ac.&associationContract.&ResponderConsumerOf},
 *                        {...},
 *                        {ID
 *                           {1 2--OID to be provided -- }-- Information Object of class OPERATION-PACKAGE to be defined -- }}}
 * }
 * ```
 */
export type AllValues = {
    bind: Bind;
} | {
    unbind: Unbind;
} | {
    ros_singleAS: ROS_SingleAS;
};
/**
 * @summary Decodes an ASN.1 element into a(n) AllValues
 * @function
 * @param {_Element} el The element being decoded.
 * @returns {AllValues} The decoded data structure.
 */
export declare function _decode_AllValues(el: _Element): AllValues;
/**
 * @summary Encodes a(n) AllValues 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 AllValues, encoded as an ASN.1 Element.
 */
export declare function _encode_AllValues(value: AllValues, elGetter: $.ASN1Encoder<AllValues>): _Element;
//# sourceMappingURL=AllValues.ta.d.mts.map