import { AsnProp, AsnPropTypes, AsnType, AsnTypeTypes, OctetString } from '@peculiar/asn1-schema'; import { DataType } from './data-type'; @AsnType({ type: AsnTypeTypes.Sequence }) export class Level1DataType { @AsnProp({ type: DataType }) public dataSequence: DataType; @AsnProp({ type: AsnPropTypes.Integer, optional: true }) public securityProviderNum?: number; @AsnProp({ type: AsnPropTypes.IA5String, optional: true }) public securityProviderIA5?: string; @AsnProp({ type: AsnPropTypes.Integer, optional: true }) public keyId?: number; @AsnProp({ type: AsnPropTypes.ObjectIdentifier, optional: true }) public level1KeyAlg?: string; @AsnProp({ type: AsnPropTypes.ObjectIdentifier, optional: true }) public level2KeyAlg?: string; @AsnProp({ type: AsnPropTypes.ObjectIdentifier, optional: true }) public level1SigningAlg?: string; @AsnProp({ type: AsnPropTypes.ObjectIdentifier, optional: true }) public level2SigningAlg?: string; @AsnProp({ type: OctetString, optional: true }) public level2PublicKey?: OctetString; constructor(params: Partial = {}) { Object.assign(this, params); } }