import { INTEGER } from "@wildboar/asn1";
import * as $ from "@wildboar/asn1/functional";
/**
 * @summary Version
 * @description
 *
 * ### ASN.1 Definition:
 *
 * ```asn1
 * Version  ::=  INTEGER {v1(0), v2(1), v3(2)}
 * ```
 */
export type Version = INTEGER;
/**
 * @summary Version_v1
 * @constant
 * @type {number}
 */
export declare const Version_v1: Version;
/**
 * @summary Version_v1
 * @constant
 * @type {number}
 */
export declare const v1: Version;
/**
 * @summary Version_v2
 * @constant
 * @type {number}
 */
export declare const Version_v2: Version;
/**
 * @summary Version_v2
 * @constant
 * @type {number}
 */
export declare const v2: Version;
/**
 * @summary Version_v3
 * @constant
 * @type {number}
 */
export declare const Version_v3: Version;
/**
 * @summary Version_v3
 * @constant
 * @type {number}
 */
export declare const v3: Version;
/**
 * @summary Decodes an ASN.1 element into a(n) Version
 * @function
 * @param {_Element} el The element being decoded.
 * @returns {Version} The decoded data structure.
 */
export declare const _decode_Version: $.ASN1Decoder<Version>;
/**
 * @summary Encodes a(n) Version 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 Version, encoded as an ASN.1 Element.
 */
export declare const _encode_Version: $.ASN1Encoder<Version>;
//# sourceMappingURL=Version.ta.d.mts.map