asn1-ts
Version:
ASN.1 encoding and decoding, including BER, CER, and DER.
80 lines (79 loc) • 3.58 kB
text/typescript
import ASN1Element from "../asn1.mjs";
import { ASN1Construction, ASN1TagClass } from "../values.mjs";
import CharacterString from "../types/CharacterString.mjs";
import X690Element from "../x690.mjs";
import type { SingleThreadUint8Array, BOOLEAN, BIT_STRING, OCTET_STRING, ObjectDescriptor, EXTERNAL, REAL, EMBEDDED_PDV, UTF8String, SEQUENCE, SET, GraphicString, NumericString, VisibleString, PrintableString, TeletexString, GeneralString, UniversalString, VideotexString, BMPString, IA5String, UTCTime, GeneralizedTime, DURATION } from "../macros.mjs";
export default class DERElement extends X690Element {
private _value;
private _currentValueLength;
get value(): SingleThreadUint8Array;
set value(v: SingleThreadUint8Array);
construct(els: ASN1Element[]): void;
set boolean(value: BOOLEAN);
get boolean(): BOOLEAN;
set bitString(value: BIT_STRING);
get bitString(): BIT_STRING;
set octetString(value: OCTET_STRING);
get octetString(): OCTET_STRING;
set objectDescriptor(value: ObjectDescriptor);
get objectDescriptor(): ObjectDescriptor;
set external(value: EXTERNAL);
get external(): EXTERNAL;
set real(value: REAL);
get real(): REAL;
set embeddedPDV(value: EMBEDDED_PDV);
get embeddedPDV(): EMBEDDED_PDV;
set utf8String(value: UTF8String);
get utf8String(): UTF8String;
set sequence(value: SEQUENCE<ASN1Element>);
get sequence(): SEQUENCE<ASN1Element>;
set set(value: SET<ASN1Element>);
get set(): SET<ASN1Element>;
set sequenceOf(value: SEQUENCE<ASN1Element>);
get sequenceOf(): SEQUENCE<ASN1Element>;
set setOf(value: SET<ASN1Element>);
get setOf(): SET<ASN1Element>;
set numericString(value: NumericString);
get numericString(): NumericString;
set printableString(value: PrintableString);
get printableString(): PrintableString;
set teletexString(value: TeletexString);
get teletexString(): TeletexString;
set videotexString(value: VideotexString);
get videotexString(): VideotexString;
set ia5String(value: IA5String);
get ia5String(): IA5String;
set utcTime(value: UTCTime);
get utcTime(): UTCTime;
set generalizedTime(value: GeneralizedTime);
get generalizedTime(): GeneralizedTime;
set graphicString(value: GraphicString);
get graphicString(): GraphicString;
set visibleString(value: VisibleString);
get visibleString(): VisibleString;
set generalString(value: GeneralString);
get generalString(): GeneralString;
set characterString(value: CharacterString);
get characterString(): CharacterString;
set universalString(value: UniversalString);
get universalString(): UniversalString;
set bmpString(value: BMPString);
get bmpString(): BMPString;
set duration(value: DURATION);
get duration(): DURATION;
encode(value: any): void;
static fromSequence(sequence: (ASN1Element | null | undefined)[]): DERElement;
static fromSet(set: (ASN1Element | null | undefined)[]): DERElement;
static fromSetOf(set: (DERElement | null | undefined)[]): DERElement;
get inner(): ASN1Element;
set inner(value: ASN1Element);
constructor(tagClass?: ASN1TagClass, construction?: ASN1Construction, tagNumber?: number, value?: any);
fromBytes(bytes: Uint8Array): number;
tagAndLengthBytes(): SingleThreadUint8Array;
toBuffers(): Uint8Array[];
deconstruct(): SingleThreadUint8Array;
get components(): ASN1Element[];
lengthLength(valueLength?: number): number;
valueLength(): number;
tlvLength(): number;
}