var NonStandardAuthorizationList_1; import { __decorate } from "tslib"; import { AsnProp, AsnPropTypes, AsnArray, AsnType, AsnTypeTypes, OctetString } from "@peculiar/asn1-schema"; import { AuthorizationList, SecurityLevel, Version } from "./key_description"; let NonStandardAuthorization = class NonStandardAuthorization extends AuthorizationList { }; NonStandardAuthorization = __decorate([ AsnType({ type: AsnTypeTypes.Choice }) ], NonStandardAuthorization); export { NonStandardAuthorization }; let NonStandardAuthorizationList = NonStandardAuthorizationList_1 = class NonStandardAuthorizationList extends AsnArray { constructor(items) { super(items); Object.setPrototypeOf(this, NonStandardAuthorizationList_1.prototype); } findProperty(key) { const prop = this.find((o => key in o)); if (prop) { return prop[key]; } return undefined; } }; NonStandardAuthorizationList = NonStandardAuthorizationList_1 = __decorate([ AsnType({ type: AsnTypeTypes.Sequence, itemType: NonStandardAuthorization }) ], NonStandardAuthorizationList); export { NonStandardAuthorizationList }; export class NonStandardKeyDescription { constructor(params = {}) { this.attestationVersion = Version.KM4; this.attestationSecurityLevel = SecurityLevel.software; this.keymasterVersion = 0; this.keymasterSecurityLevel = SecurityLevel.software; this.attestationChallenge = new OctetString(); this.uniqueId = new OctetString(); this.softwareEnforced = new NonStandardAuthorizationList(); this.teeEnforced = new NonStandardAuthorizationList(); Object.assign(this, params); } } __decorate([ AsnProp({ type: AsnPropTypes.Integer }) ], NonStandardKeyDescription.prototype, "attestationVersion", void 0); __decorate([ AsnProp({ type: AsnPropTypes.Enumerated }) ], NonStandardKeyDescription.prototype, "attestationSecurityLevel", void 0); __decorate([ AsnProp({ type: AsnPropTypes.Integer }) ], NonStandardKeyDescription.prototype, "keymasterVersion", void 0); __decorate([ AsnProp({ type: AsnPropTypes.Enumerated }) ], NonStandardKeyDescription.prototype, "keymasterSecurityLevel", void 0); __decorate([ AsnProp({ type: OctetString }) ], NonStandardKeyDescription.prototype, "attestationChallenge", void 0); __decorate([ AsnProp({ type: OctetString }) ], NonStandardKeyDescription.prototype, "uniqueId", void 0); __decorate([ AsnProp({ type: NonStandardAuthorizationList }) ], NonStandardKeyDescription.prototype, "softwareEnforced", void 0); __decorate([ AsnProp({ type: NonStandardAuthorizationList }) ], NonStandardKeyDescription.prototype, "teeEnforced", void 0);