@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
TypeScript
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[]);
}