UNPKG

@peculiar/asn1-ess

Version:

ASN.1 schema based on Enhanced Security Services (ESS) for S/MIME (RFC 2634)

42 lines (41 loc) 1.27 kB
import { AsnArray } from "@peculiar/asn1-schema"; import { SecurityClassification } from "./types"; import { SecurityCategories } from "./security_category"; /** * ```asn1 * ESSPrivacyMark ::= CHOICE { * pString PrintableString (SIZE (1..ub-privacy-mark-length)), * utf8String UTF8String (SIZE (1..MAX)) * } * ``` * @todo - is there a way to enforce the size constraint? */ export declare class ESSPrivacyMark { pString?: string; utf8String?: string; constructor(params?: Partial<ESSPrivacyMark>); } /** * ```asn1 * ESSSecurityLabel ::= SET { * security-policy-identifier SecurityPolicyIdentifier, * security-classification SecurityClassification OPTIONAL, * privacy-mark ESSPrivacyMark OPTIONAL, * security-categories SecurityCategories OPTIONAL } * ``` */ export declare class ESSSecurityLabel { securityPolicyIdentifier: string; securityClassification?: SecurityClassification; privacyMark?: ESSPrivacyMark; securityCategories?: SecurityCategories; constructor(params?: Partial<ESSSecurityLabel>); } /** * ```asn1 * EquivalentLabels ::= SEQUENCE OF ESSSecurityLabel * ``` */ export declare class EquivalentLabels extends AsnArray<ESSSecurityLabel> { constructor(items?: ESSSecurityLabel[]); }