UNPKG

@wildboar/pkcs

Version:
31 lines (30 loc) 1.33 kB
import * as $ from "@wildboar/asn1/functional"; import { _get_decoder_for_KeyInfo_paramsAndOps, _get_encoder_for_KeyInfo_paramsAndOps, } from "../PKCS-15/KeyInfo-paramsAndOps.ta.mjs"; import { _decode_Reference, _encode_Reference, } from "../PKCS-15/Reference.ta.mjs"; /** * @summary Returns a function that will decode an ASN.1 element into a(n) KeyInfo * @function * @param {_Element} el The element being decoded. * @returns A function that will decode an ASN.1 element. */ export function _get_decoder_for_KeyInfo(_decode_ParameterType, _decode_OperationsType) { return $._decode_inextensible_choice({ "UNIVERSAL 2": ["reference", _decode_Reference], "UNIVERSAL 16": [ "paramsAndOps", _get_decoder_for_KeyInfo_paramsAndOps(_decode_ParameterType, _decode_OperationsType), ], }); } /** * @summary Returns a function that will encode a(n) KeyInfo into an ASN.1 Element. * @function * @returns A function that will encode a(n) KeyInfo as an ASN.1 element. */ export function _get_encoder_for_KeyInfo(_encode_ParameterType, _encode_OperationsType) { return $._encode_choice({ reference: _encode_Reference, paramsAndOps: _get_encoder_for_KeyInfo_paramsAndOps(_encode_ParameterType, _encode_OperationsType), }, $.BER); } /* eslint-enable */