UNPKG

pkcs-ts

Version:

PKCS #1 through #15 (Except #11) - Private and Public Keys, Certificates, and More

97 lines 5.64 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports._encode_OneAsymmetricKey = exports._decode_OneAsymmetricKey = exports._extension_additions_list_spec_for_OneAsymmetricKey = exports._root_component_type_list_2_spec_for_OneAsymmetricKey = exports._root_component_type_list_1_spec_for_OneAsymmetricKey = exports.OneAsymmetricKey = void 0; const tslib_1 = require("tslib"); const asn1_ts_1 = require("asn1-ts"); const $ = tslib_1.__importStar(require("asn1-ts/dist/node/functional")); const Attributes_ta_1 = require("../AsymmetricKeyPackageModuleV1/Attributes.ta"); const PrivateKey_ta_1 = require("../AsymmetricKeyPackageModuleV1/PrivateKey.ta"); const PrivateKeyAlgorithmIdentifier_ta_1 = require("../AsymmetricKeyPackageModuleV1/PrivateKeyAlgorithmIdentifier.ta"); const Version_ta_1 = require("../AsymmetricKeyPackageModuleV1/Version.ta"); const PublicKey_ta_1 = require("../AsymmetricKeyPackageModuleV1/PublicKey.ta"); class OneAsymmetricKey { constructor(version, privateKeyAlgorithm, privateKey, attributes, publicKey, _unrecognizedExtensionsList = []) { this.version = version; this.privateKeyAlgorithm = privateKeyAlgorithm; this.privateKey = privateKey; this.attributes = attributes; this.publicKey = publicKey; this._unrecognizedExtensionsList = _unrecognizedExtensionsList; } static _from_object(_o) { return new OneAsymmetricKey(_o.version, _o.privateKeyAlgorithm, _o.privateKey, _o.attributes, _o.publicKey, _o._unrecognizedExtensionsList); } } exports.OneAsymmetricKey = OneAsymmetricKey; exports._root_component_type_list_1_spec_for_OneAsymmetricKey = [ new $.ComponentSpec("version", false, $.hasTag(asn1_ts_1.ASN1TagClass.universal, 2), undefined, undefined), new $.ComponentSpec("privateKeyAlgorithm", false, $.hasTag(asn1_ts_1.ASN1TagClass.universal, 16), undefined, undefined), new $.ComponentSpec("privateKey", false, $.hasTag(asn1_ts_1.ASN1TagClass.universal, 4), undefined, undefined), new $.ComponentSpec("attributes", true, $.hasTag(asn1_ts_1.ASN1TagClass.context, 0), undefined, undefined), ]; exports._root_component_type_list_2_spec_for_OneAsymmetricKey = []; exports._extension_additions_list_spec_for_OneAsymmetricKey = [ new $.ComponentSpec("publicKey", true, $.hasTag(asn1_ts_1.ASN1TagClass.context, 1), 0, 2), ]; let _cached_decoder_for_OneAsymmetricKey = null; function _decode_OneAsymmetricKey(el) { if (!_cached_decoder_for_OneAsymmetricKey) { _cached_decoder_for_OneAsymmetricKey = function (el) { let version; let privateKeyAlgorithm; let privateKey; let attributes; let publicKey; let _unrecognizedExtensionsList = []; const callbacks = { version: (_el) => { version = Version_ta_1._decode_Version(_el); }, privateKeyAlgorithm: (_el) => { privateKeyAlgorithm = PrivateKeyAlgorithmIdentifier_ta_1._decode_PrivateKeyAlgorithmIdentifier(_el); }, privateKey: (_el) => { privateKey = PrivateKey_ta_1._decode_PrivateKey(_el); }, attributes: (_el) => { attributes = $._decode_implicit(() => Attributes_ta_1._decode_Attributes)(_el); }, publicKey: (_el) => { publicKey = $._decode_implicit(() => PublicKey_ta_1._decode_PublicKey)(_el); }, }; $._parse_sequence(el, callbacks, exports._root_component_type_list_1_spec_for_OneAsymmetricKey, exports._extension_additions_list_spec_for_OneAsymmetricKey, exports._root_component_type_list_2_spec_for_OneAsymmetricKey, (ext) => { _unrecognizedExtensionsList.push(ext); }); return new OneAsymmetricKey(version, privateKeyAlgorithm, privateKey, attributes, publicKey, _unrecognizedExtensionsList); }; } return _cached_decoder_for_OneAsymmetricKey(el); } exports._decode_OneAsymmetricKey = _decode_OneAsymmetricKey; let _cached_encoder_for_OneAsymmetricKey = null; function _encode_OneAsymmetricKey(value, elGetter) { if (!_cached_encoder_for_OneAsymmetricKey) { _cached_encoder_for_OneAsymmetricKey = function (value, elGetter) { return $._encodeSequence([] .concat([ Version_ta_1._encode_Version(value.version, $.BER), PrivateKeyAlgorithmIdentifier_ta_1._encode_PrivateKeyAlgorithmIdentifier(value.privateKeyAlgorithm, $.BER), PrivateKey_ta_1._encode_PrivateKey(value.privateKey, $.BER), value.attributes === undefined ? undefined : $._encode_implicit(asn1_ts_1.ASN1TagClass.context, 0, () => Attributes_ta_1._encode_Attributes, $.BER)(value.attributes, $.BER), ], [ value.publicKey === undefined ? undefined : $._encode_implicit(asn1_ts_1.ASN1TagClass.context, 1, () => PublicKey_ta_1._encode_PublicKey, $.BER)(value.publicKey, $.BER), ], value._unrecognizedExtensionsList ? value._unrecognizedExtensionsList : []) .filter((c) => !!c), $.BER); }; } return _cached_encoder_for_OneAsymmetricKey(value, elGetter); } exports._encode_OneAsymmetricKey = _encode_OneAsymmetricKey; //# sourceMappingURL=OneAsymmetricKey.ta.js.map