@wildboar/pki-stub
Version:
X.510 PKI-Stub ASN.1 data structures in TypeScript
215 lines • 6.3 kB
text/typescript
import { OPTIONAL, ASN1Element as _Element } from "@wildboar/asn1";
import * as $ from "@wildboar/asn1/functional";
import { AttCertVersion } from "../PKI-Stub/AttCertVersion.ta.mjs";
import { Holder } from "../PKI-Stub/Holder.ta.mjs";
import { AttCertIssuer } from "../PKI-Stub/AttCertIssuer.ta.mjs";
import { AlgorithmIdentifier } from "../PKI-Stub/AlgorithmIdentifier.ta.mjs";
import { CertificateSerialNumber } from "../PKI-Stub/CertificateSerialNumber.ta.mjs";
import { AttCertValidityPeriod } from "../PKI-Stub/AttCertValidityPeriod.ta.mjs";
import { Attribute } from "../PKI-Stub/Attribute.ta.mjs";
import { UniqueIdentifier } from "../PKI-Stub/UniqueIdentifier.ta.mjs";
import { Extensions } from "../PKI-Stub/Extensions.ta.mjs";
/**
* @summary TBSAttributeCertificate
* @description
*
* ### ASN.1 Definition:
*
* ```asn1
* TBSAttributeCertificate ::= SEQUENCE {
* version AttCertVersion, -- version is v2
* holder Holder,
* issuer AttCertIssuer,
* signature AlgorithmIdentifier{{SupportedAlgorithms}},
* serialNumber CertificateSerialNumber,
* attrCertValidityPeriod AttCertValidityPeriod,
* attributes SEQUENCE OF Attribute{{SupportedAttributes}},
* issuerUniqueID UniqueIdentifier OPTIONAL,
* ...,
* ...,
* extensions Extensions OPTIONAL
* } (CONSTRAINED BY { -- shall be DER encoded -- } )
* ```
*
*/
export declare class TBSAttributeCertificate {
/**
* @summary `version`.
* @public
* @readonly
*/
readonly version: AttCertVersion;
/**
* @summary `holder`.
* @public
* @readonly
*/
readonly holder: Holder;
/**
* @summary `issuer`.
* @public
* @readonly
*/
readonly issuer: AttCertIssuer;
/**
* @summary `signature`.
* @public
* @readonly
*/
readonly signature: AlgorithmIdentifier;
/**
* @summary `serialNumber`.
* @public
* @readonly
*/
readonly serialNumber: CertificateSerialNumber;
/**
* @summary `attrCertValidityPeriod`.
* @public
* @readonly
*/
readonly attrCertValidityPeriod: AttCertValidityPeriod;
/**
* @summary `attributes`.
* @public
* @readonly
*/
readonly attributes: Attribute[];
/**
* @summary `issuerUniqueID`.
* @public
* @readonly
*/
readonly issuerUniqueID?: OPTIONAL<UniqueIdentifier>;
/**
* @summary Extensions that are not recognized.
* @public
* @readonly
*/
readonly _unrecognizedExtensionsList: _Element[];
/**
* @summary `extensions`.
* @public
* @readonly
*/
readonly extensions?: OPTIONAL<Extensions>;
constructor(
/**
* @summary `version`.
* @public
* @readonly
*/
version: AttCertVersion,
/**
* @summary `holder`.
* @public
* @readonly
*/
holder: Holder,
/**
* @summary `issuer`.
* @public
* @readonly
*/
issuer: AttCertIssuer,
/**
* @summary `signature`.
* @public
* @readonly
*/
signature: AlgorithmIdentifier,
/**
* @summary `serialNumber`.
* @public
* @readonly
*/
serialNumber: CertificateSerialNumber,
/**
* @summary `attrCertValidityPeriod`.
* @public
* @readonly
*/
attrCertValidityPeriod: AttCertValidityPeriod,
/**
* @summary `attributes`.
* @public
* @readonly
*/
attributes: Attribute[],
/**
* @summary `issuerUniqueID`.
* @public
* @readonly
*/
issuerUniqueID?: OPTIONAL<UniqueIdentifier>,
/**
* @summary Extensions that are not recognized.
* @public
* @readonly
*/
_unrecognizedExtensionsList?: _Element[],
/**
* @summary `extensions`.
* @public
* @readonly
*/
extensions?: OPTIONAL<Extensions>);
/**
* @summary Restructures an object into a TBSAttributeCertificate
* @description
*
* This takes an `object` and converts it to a `TBSAttributeCertificate`.
*
* @public
* @static
* @method
* @param {Object} _o An object having all of the keys and values of a `TBSAttributeCertificate`.
* @returns {TBSAttributeCertificate}
*/
static _from_object(_o: {
[_K in keyof TBSAttributeCertificate]: TBSAttributeCertificate[_K];
}): TBSAttributeCertificate;
}
/**
* @summary The Leading Root Component Types of TBSAttributeCertificate
* @description
*
* This is an array of `ComponentSpec`s that define how to decode the leading root component type list of a SET or SEQUENCE.
*
* @constant
*/
export declare const _root_component_type_list_1_spec_for_TBSAttributeCertificate: $.ComponentSpec[];
/**
* @summary The Trailing Root Component Types of TBSAttributeCertificate
* @description
*
* This is an array of `ComponentSpec`s that define how to decode the trailing root component type list of a SET or SEQUENCE.
*
* @constant
*/
export declare const _root_component_type_list_2_spec_for_TBSAttributeCertificate: $.ComponentSpec[];
/**
* @summary The Extension Addition Component Types of TBSAttributeCertificate
* @description
*
* This is an array of `ComponentSpec`s that define how to decode the extension addition component type list of a SET or SEQUENCE.
*
* @constant
*/
export declare const _extension_additions_list_spec_for_TBSAttributeCertificate: $.ComponentSpec[];
/**
* @summary Decodes an ASN.1 element into a(n) TBSAttributeCertificate
* @function
* @param {_Element} el The element being decoded.
* @returns {TBSAttributeCertificate} The decoded data structure.
*/
export declare function _decode_TBSAttributeCertificate(el: _Element): TBSAttributeCertificate;
/**
* @summary Encodes a(n) TBSAttributeCertificate into an ASN.1 Element.
* @function
* @param value The element being encoded.
* @param elGetter A function that can be used to get new ASN.1 elements.
* @returns {_Element} The TBSAttributeCertificate, encoded as an ASN.1 Element.
*/
export declare function _encode_TBSAttributeCertificate(value: TBSAttributeCertificate): _Element;
//# sourceMappingURL=TBSAttributeCertificate.ta.d.mts.map