import { ASN1Element as _Element } from "@wildboar/asn1"; import * as $ from "@wildboar/asn1/functional"; import { Abort } from "../IDMProtocolSpecification/Abort.ta.mjs"; import { Error } from "../IDMProtocolSpecification/Error.ta.mjs"; import { IdmBind } from "../IDMProtocolSpecification/IdmBind.ta.mjs"; import { IdmBindError } from "../IDMProtocolSpecification/IdmBindError.ta.mjs"; import { IdmBindResult } from "../IDMProtocolSpecification/IdmBindResult.ta.mjs"; import { IdmReject } from "../IDMProtocolSpecification/IdmReject.ta.mjs"; import { IdmResult } from "../IDMProtocolSpecification/IdmResult.ta.mjs"; import { Request } from "../IDMProtocolSpecification/Request.ta.mjs"; import { StartTLS } from "../IDMProtocolSpecification/StartTLS.ta.mjs"; import { TLSResponse } from "../IDMProtocolSpecification/TLSResponse.ta.mjs"; import { Unbind } from "../IDMProtocolSpecification/Unbind.ta.mjs"; /** * @summary IDM_PDU * @description * * ### ASN.1 Definition: * * ```asn1 * IDM-PDU{IDM-PROTOCOL:protocol} ::= CHOICE { * bind [0] IdmBind{{protocol}}, * bindResult [1] IdmBindResult{{protocol}}, * bindError [2] IdmBindError{{protocol}}, * request [3] Request{{protocol.&Operations}}, * result [4] IdmResult{{protocol.&Operations}}, * error [5] Error{{protocol.&Operations}}, * reject [6] IdmReject, * unbind [7] Unbind, * abort [8] Abort, * startTLS [9] StartTLS, * tLSResponse [10] TLSResponse, * ... } * ``` */ export type IDM_PDU = { bind: IdmBind; } | { bindResult: IdmBindResult; } | { bindError: IdmBindError; } | { request: Request; } | { result: IdmResult; } | { error: Error; } | { reject: IdmReject; } | { unbind: Unbind; } | { abort: Abort; } | { startTLS: StartTLS; } | { tLSResponse: TLSResponse; } | _Element; /** * @summary Decodes an ASN.1 element into a(n) IDM_PDU * @function * @param {_Element} el The element being decoded. * @returns {IDM_PDU} The decoded data structure. */ export declare function _decode_IDM_PDU(el: _Element): IDM_PDU; /** * @summary Encodes a(n) IDM_PDU 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 IDM_PDU, encoded as an ASN.1 Element. */ export declare function _encode_IDM_PDU(value: IDM_PDU, elGetter: $.ASN1Encoder): _Element; //# sourceMappingURL=IDM-PDU.ta.d.mts.map