@peculiar/asn1-ess
Version:
ASN.1 schema based on Enhanced Security Services (ESS) for S/MIME (RFC 2634)
77 lines (76 loc) • 3.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SigningCertificateV2 = exports.ESSCertIDv2 = exports.SigningCertificate = exports.ESSCertID = exports.IssuerSerial = void 0;
const tslib_1 = require("tslib");
const asn1_schema_1 = require("@peculiar/asn1-schema");
const asn1_x509_1 = require("@peculiar/asn1-x509");
const asn1_rsa_1 = require("@peculiar/asn1-rsa");
class IssuerSerial {
constructor(params = {}) {
this.issuer = new asn1_x509_1.GeneralNames();
this.serialNumber = new ArrayBuffer(0);
Object.assign(this, params);
}
}
exports.IssuerSerial = IssuerSerial;
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_x509_1.GeneralNames })
], IssuerSerial.prototype, "issuer", void 0);
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_schema_1.AsnPropTypes.Integer })
], IssuerSerial.prototype, "serialNumber", void 0);
class ESSCertID {
constructor(params = {}) {
this.certHash = new asn1_schema_1.OctetString();
Object.assign(this, params);
}
}
exports.ESSCertID = ESSCertID;
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_schema_1.OctetString })
], ESSCertID.prototype, "certHash", void 0);
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: IssuerSerial, optional: true })
], ESSCertID.prototype, "issuerSerial", void 0);
class SigningCertificate {
constructor(params = {}) {
this.certs = [];
Object.assign(this, params);
}
}
exports.SigningCertificate = SigningCertificate;
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: ESSCertID, repeated: "sequence" })
], SigningCertificate.prototype, "certs", void 0);
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_x509_1.PolicyInformation, repeated: "sequence", optional: true })
], SigningCertificate.prototype, "policies", void 0);
class ESSCertIDv2 {
constructor(params = {}) {
this.certHash = new asn1_schema_1.OctetString();
Object.assign(this, params);
}
}
exports.ESSCertIDv2 = ESSCertIDv2;
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_x509_1.AlgorithmIdentifier, defaultValue: asn1_rsa_1.id_sha256 })
], ESSCertIDv2.prototype, "hashAlgorithm", void 0);
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_schema_1.OctetString })
], ESSCertIDv2.prototype, "certHash", void 0);
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: IssuerSerial, optional: true })
], ESSCertIDv2.prototype, "issuerSerial", void 0);
class SigningCertificateV2 {
constructor(params = {}) {
this.certs = [];
Object.assign(this, params);
}
}
exports.SigningCertificateV2 = SigningCertificateV2;
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: ESSCertIDv2, repeated: "sequence" })
], SigningCertificateV2.prototype, "certs", void 0);
tslib_1.__decorate([
(0, asn1_schema_1.AsnProp)({ type: asn1_x509_1.PolicyInformation, repeated: "sequence", optional: true })
], SigningCertificateV2.prototype, "policies", void 0);