import {z} from 'zod' export type GetApiOmniIdentityCustomerIdSessionsArgs = {customerId: string, 'api-version': string}; export type GetApiOmniIdentityCustomerIdSessionsOptions = {baseUrl?: string | undefined, ApiKeyAuth?: string | undefined, IncodeHardwareIdAuth?: string | undefined, fetch?: typeof fetch | undefined}; export const nfcRecognitionConfidence = z.object({nfcVsSelfieConfidence: z.number().optional(), nfcVsSelfieLogConfidence: z.number().optional(), nfcVsIdConfidence: z.number().optional(), nfcVsIdLogConfidence: z.number().optional()}); export const additionalName = z.object({refNumber: z.number().int().optional(), name: z.string().optional()}); export const customDate = z.object({dateType: z.string().optional(), timestamp: z.number().int().optional()}); export const customField = z.object({key: z.string().optional(), value: z.string().optional()}); export const customFieldValid = z.object({key: z.string().optional(), value: z.boolean().optional()}); export const nameBean = z.object({fullName: z.string().optional(), fullNameNativeScript: z.string().optional(), firstNameNativeScript: z.string().optional(), paternalLastNameNativeScript: z.string().optional(), maternalLastNameNativeScript: z.string().optional(), machineReadableFullName: z.string().optional(), firstName: z.string().optional(), middleName: z.string().optional(), givenName: z.string().optional(), givenNameMrz: z.string().optional(), nameSuffix: z.string().optional(), paternalLastName: z.string().optional(), maternalLastName: z.string().optional(), lastNameMrz: z.string().optional(), familyName: z.string().optional()}); export const coordinate = z.object({x: z.number().optional(), y: z.number().optional()}); export const barcodeMeta = z.object({ecLevel: z.number().int().optional(), noSegments: z.number().int().optional(), segmentWidth: z.number().optional(), corners: z.array(coordinate).optional(), cornersFullFrame: z.array(coordinate).optional(), rawBytes: z.string().optional(), pdf417RowNumber: z.number().int().optional(), pdf417ColumnNumber: z.number().int().optional(), pdf417CodewordLengthMin: z.number().int().optional(), pdf417CodewordLengthMax: z.number().int().optional(), pdf417CorrectedErrorsCount: z.number().int().optional()}); export const exifMetadata = z.object({timestampOriginal: z.number().int().optional(), software: z.string().optional()}); export const imageAttempt = z.object({imageRef: z.string().optional(), timestamp: z.number().int().optional(), exifMetadata: exifMetadata.optional()}); export const voiceConsentSelfieAttempt = z.object({imageRef: z.string().optional(), timestamp: z.number().int().optional(), confidence: z.number().optional(), threshold: z.number().optional()}); export const asylumSeekerDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), firstName: z.string().optional(), lastName: z.string().optional(), countryOfOrigin: z.string().optional(), dateOfBirth: z.number().int().optional(), expiryDate: z.number().int().optional(), issueDate: z.number().int().optional(), gender: z.enum(["MALE", "FEMALE"]).optional(), nationality: z.string().optional(), placeOfIssue: z.string().optional(), referenceNumber: z.string().optional(), residentialAddressLines: z.array(z.string()).optional()}); export const bankCheckDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), accountNumber: z.string().optional(), routingNumber: z.string().optional(), unparsedCheckNumber: z.string().optional()}); export const bankStatementDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), fullName: z.string().optional(), address: z.string().optional(), accountNumber: z.string().optional(), bankName: z.string().optional(), documentDate: z.string().optional()}); export const validationErrors = z.object({error: z.string().optional(), loc: z.string().optional()}); export const carInvoiceDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), name: nameBean.optional(), dealerLegalName: z.string().optional(), vin: z.string().optional(), invoiceIssuingDate: z.number().int().optional(), invoiceCertificationDate: z.number().int().optional(), engineNumber: z.string().optional(), carModelYear: z.number().int().optional(), issuerRFC: z.string().optional(), recipientRFC: z.string().optional(), digitalTaxStampUuid: z.string().optional(), carPrice: z.number().optional(), issuerTaxRegime: z.string().optional(), recipientTaxRegime: z.string().optional(), qrIssuerRFC: z.string().optional(), qrRecipientRFC: z.string().optional(), qrDigitalTaxStampUuid: z.string().optional(), validationErrors: z.array(validationErrors).optional()}); export const circulationCardDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), name: nameBean.optional(), vin: z.string().optional(), engineNumber: z.string().optional(), carModelYear: z.number().int().optional(), licensePlates: z.array(z.string()).optional(), color: z.string().optional(), vehicleUse: z.string().optional(), validationErrors: z.array(validationErrors).optional()}); export const colombianBirthCertificateDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), nationalNumber: z.string().optional(), paternalLastname: z.string().optional(), maternalLastname: z.string().optional(), fullName: z.string().optional(), dateOfBirth: z.number().int().optional(), motherFullName: z.string().optional(), motherNationalNumber: z.string().optional(), fatherFullName: z.string().optional(), fatherNationalNumber: z.string().optional(), birthPlace: z.string().optional()}); export const curpDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), fullName: z.string().optional(), curpNumber: z.string().optional(), registrationDate: z.number().int().optional(), registrationEntity: z.string().optional(), idNumber: z.string().optional()}); export const financeSettlementDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), name: nameBean.optional(), settlementDate: z.number().int().optional(), settlementFigure: z.number().optional(), agreementReference: z.string().optional(), vehicleRegistrationNumber: z.string().optional(), financeCompany: z.string().optional(), accountNumber: z.string().optional(), sortCode: z.string().optional(), validationErrors: z.array(validationErrors).optional()}); export const genericDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), fullName: z.string().optional(), address: z.string().optional(), issueDate: z.number().int().optional()}); export const ineMexDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), name: z.string().optional(), address: z.string().optional(), addressList: z.array(z.string()).optional(), voterIDNumber: z.string().optional(), curpNumber: z.string().optional(), dateOfBirth: z.number().int().optional(), gender: z.string().optional(), birthPlace: z.string().optional(), nationality: z.string().optional(), validFrom: z.number().int().optional(), validTo: z.number().int().optional(), registrationDate: z.number().int().optional(), cicNumber: z.string().optional(), ocrNumber: z.string().optional(), idNumber: z.string().optional(), credentialIssueNumber: z.string().optional()}); export const letterOfAuthorizationDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), name: z.string().optional(), businessName: z.string().optional(), address: z.string().optional()}); export const mexicanTaxDeclarationDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), rfcNumber: z.string().optional(), corporateName: z.string().optional(), fullName: z.string().optional(), declarationType: z.string().optional(), fiscalYear: z.number().int().optional(), submissionDate: z.number().int().optional(), hasIncomeStatement: z.boolean().optional(), hasFinancialPositionStatement: z.boolean().optional(), totalIncome: z.number().optional(), capitalFromContributions: z.number().optional(), capitalFromCapitalization: z.number().optional(), accumulatedLosses: z.number().optional(), currentYearLosses: z.number().optional(), accumulatedProfits: z.number().optional(), currentYearProfits: z.number().optional(), amountToPay: z.number().optional(), amountDue: z.number().optional(), operationNumber: z.string().optional()}); export const addressBean = z.object({street: z.string().optional(), streetName: z.string().optional(), colony: z.string().optional(), postalCode: z.string().optional(), city: z.string().optional(), state: z.string().optional(), stateName: z.string().optional(), district: z.string().optional(), stateCode: z.string().optional(), addressCountryCode: z.string().optional(), label: z.string().optional(), exteriorNumber: z.string().optional(), interiorNumber: z.string().optional(), addressLine1: z.string().optional(), streetType: z.string().optional()}); export const economicActivity = z.object({title: z.string().optional(), percentage: z.number().int().optional(), startDate: z.number().int().optional(), endDate: z.number().int().optional()}); export const regime = z.object({title: z.string().optional(), startDate: z.number().int().optional(), endDate: z.number().int().optional()}); export const poaBarcode = z.object({format: z.string().optional(), contentType: z.string().optional(), text: z.string().optional(), error: z.string().optional()}); export const mexicanTaxStatusDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), issueDate: z.number().int().optional(), rfcNumber: z.string().optional(), corporateName: z.string().optional(), fullName: z.string().optional(), registryStatus: z.string().optional(), capitalRegime: z.string().optional(), legalName: z.string().optional(), addressComponents: addressBean.optional(), economicActivities: z.array(economicActivity).optional(), regimes: z.array(regime).optional(), barcodes: z.array(poaBarcode).optional()}); export const addressStatementDate = z.object({get_version: z.number().int().optional(), dateType: z.string().optional(), addressStatementTimestamp: z.number().int().optional()}); export const poaDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), name: z.string().optional(), address: z.string().optional(), timestamp: z.number().int().optional(), addressStatementTimestamps: z.array(addressStatementDate).optional(), issuer: z.enum(["a1", "aggm", "apg", "energieAg", "cre", "aforeAzteca", "amd", "amicsa", "att", "axtel", "bancoppel", "bancoAzteca", "banorte", "bbva", "cab", "caev", "capa", "cea", "cfe", "citibanamex", "cmapa", "cmapaGrande", "cmapas", "cmas", "cmasBlue", "comapa", "comapaRed", "coppel", "dapa", "dhc", "drenaje", "ecogas", "engie", "gasNatural", "h", "hsbc", "inbursa", "infonavit", "interapas", "isagas", "izzi", "jad", "japam", "japama", "japami", "japay", "jiapaz", "jmas", "jras", "jumapac", "jumapam", "lerdo", "liverpool", "mas", "megacable", "naturgy", "oapas", "odapas", "ooapas", "opdm", "oroapa", "sacmex", "sacmexCdmx", "santander", "sapa", "sapal", "sapamuy", "sapasa", "sapasma", "scotiabank", "seapal", "siapa", "simapag", "simapas", "simas", "smapa", "smapac", "smapam", "smapas", "spectrum", "stori", "sura", "tam", "telcel", "telmex", "totalplay", "veolia", "victoria", "wizz", "asylumSeeker", "refugeeId", "refugeeStatus", "ute", "telkom", "tmobile", "verizon", "xfinity", "aforeCoppel", "americanExpress", "ap", "telnor", "wellsFargo", "otherPoa"]).optional(), addressComponents: addressBean.optional(), parsedAddressComponents: addressBean.optional()}); export const refugeeIdDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), firstNames: z.string().optional(), lastName: z.string().optional(), gender: z.enum(["MALE", "FEMALE"]).optional(), countryOfBirth: z.string().optional(), dateOfBirth: z.number().int().optional(), nationality: z.string().optional(), maritalStatus: z.string().optional(), issueDate: z.number().int().optional(), expiryDate: z.number().int().optional(), idNumber: z.string().optional()}); export const refugeeStatusDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), fullName: z.string().optional(), gender: z.enum(["MALE", "FEMALE"]).optional(), dateOfBirth: z.number().int().optional(), issueDate: z.number().int().optional(), countryOfBirth: z.string().optional(), nationality: z.string().optional(), maritalStatus: z.string().optional(), documentNumber: z.string().optional()}); export const rfcDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), fullName: z.string().optional(), rfcNumber: z.string().optional(), idCIF: z.string().optional()}); export const unknownDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional()}); export const v5CLogbookDocumentAttempt = z.object({documentType: z.enum(["ASYLUM_SEEKER", "BANK_STATEMENT", "COLOMBIAN_BIRTH_CERTIFICATE", "CURP", "GENERIC", "MEXICAN_TAX_DECLARATION", "MEXICAN_TAX_STATUS", "POA", "REFUGEE_ID", "REFUGEE_STATUS", "RFC", "V5C_LOGBOOK", "CAR_INVOICE", "CIRCULATION_CARD", "BANK_CHECK", "LETTER_OF_AUTHORIZATION", "FINANCE_SETTLEMENT", "INE_MEX", "UNKNOWN"]).optional(), format: z.enum(["IMAGE", "PDF"]).optional(), status: z.enum(["SUCCESS", "VALIDATION_ERROR", "FAIL"]).optional(), attemptTimestamp: z.number().int().optional(), classificationConfidence: z.number().optional(), image: imageAttempt.optional(), multiPageDocImages: z.array(imageAttempt).optional(), attemptType: z.enum(["POA", "DOCUMENT_CAPTURE"]).optional(), fullName: z.string().optional(), address: z.string().optional(), addressList: z.array(z.string()).optional(), registrationNumber: z.string().optional(), v5cNumber: z.string().optional(), referenceNumber: z.string().optional(), vin: z.string().optional(), validationErrors: z.array(validationErrors).optional()}); export const governmentFingerprintsBean = z.object({finger1: z.number().optional(), finger2: z.number().optional(), finger3: z.number().optional(), finger4: z.number().optional(), finger5: z.number().optional(), finger6: z.number().optional(), finger7: z.number().optional(), finger8: z.number().optional(), finger9: z.number().optional(), finger10: z.number().optional()}); export const registralSituation = z.object({tipoSituacionRegistral: z.string().optional(), tipoReporteRoboExtravio: z.string().optional()}); export const curpCecobanValidation = z.object({returnCode: z.string().optional(), description: z.string().optional(), uniquePopulationRegistrationKeyMatch: z.boolean().optional()}); export const workflowPathNode = z.object({nodeId: z.string().optional(), addedAt: z.number().int().optional()}); export const workflowContext = z.object({currentNodeId: z.string().optional(), workflowPath: z.array(workflowPathNode).optional()}); export const retentionRegion = z.object({ipRegion: z.string().optional(), ocrRegion: z.string().optional()}); export const signatureAttempt = z.object({imageRef: z.string().optional(), signatureType: z.string().optional()}); export const curpResponse = z.object({success: z.boolean().optional(), curp: z.string().optional(), sex: z.enum(["Mujer", "Hombre", "X"]).optional(), nationality: z.string().optional(), result: z.string().optional(), transactionId: z.string().optional(), renapo_valid: z.boolean().optional(), names: z.string().optional(), paternal_surname: z.string().optional(), mothers_maiden_name: z.string().optional(), birthdate: z.string().optional(), entity_birth: z.string().optional(), probation_document: z.string().optional(), probation_document_data: z.record(z.string(), z.object({})).optional(), status_curp: z.string().optional(), deceasedStatus: z.string().optional()}); export const ineResult = z.object({get_version: z.number().int().optional(), scrapingStatus: z.enum(["IN_PROGRESS", "FINISHED", "ERROR"]).optional(), success: z.boolean().optional(), result: z.enum(["success", "error"]).optional(), resultDetails: z.string().optional(), screenshotUrl: z.string().optional(), cic: z.string().optional(), claveElector: z.string().optional(), numeroEmision: z.string().optional(), ocr: z.string().optional(), anioRegistro: z.string().optional(), anioEmision: z.string().optional()}); export const addFiscalQrUrlResponse = z.object({success: z.boolean().optional(), sessionStatus: z.enum(["Alive", "Closed", "Deleted"]).optional(), rfc: z.string().optional(), curp: z.string().optional(), name: z.string().optional(), firstLastName: z.string().optional(), secondLastName: z.string().optional(), birthdate: z.string().optional(), denomination: z.string().optional(), regime: z.string().optional(), constitutionDate: z.string().optional(), operationStartDate: z.string().optional(), personStatus: z.string().optional(), lastSituationChangeDate: z.string().optional(), state: z.string().optional(), delegation: z.string().optional(), colony: z.string().optional(), streetType: z.string().optional(), streetName: z.string().optional(), extNumber: z.string().optional(), intNumber: z.string().optional(), postalCode: z.string().optional(), email: z.string().optional(), al: z.string().optional(), fiscalRegime: z.string().optional(), fiscalStartDate: z.string().optional(), error: z.string().optional(), result: z.string().optional()}); export const externalVerificationRequest = z.object({plugins: z.array(z.string()).optional(), source: z.enum(["US_DRIVERS_LICENSE_1", "US_TELCO_1", "US_TELCO_2", "US_TELCO_4", "US_TELCO_5", "US_CREDIT_BUREAU_1", "US_CREDIT_BUREAU_3", "US_ADDRESS_1", "US_CONSUMER_1", "MX_CONSUMER_1", "MX_CONSUMER_2", "BR_GOVT_1", "BR_CPF_1", "CA_RES_CREDIT", "CA_CREDIT_FINTRAC", "UK_CREDIT_BUREAU_1", "UK_VOTER_REGISTER", "ES_PHONE_REGISTER_2", "CL_1", "AR_1", "AR_RES_REGISTER", "GR_1", "GT_1", "CR_1", "CO_1", "PHONE_RISK_1", "PHONE_RISK_2", "EMAIL_RISK_1", "RISK_ADDONS_ONLY", "GH_CARD_VERIFY_1", "PE_MIGRATION_INSTITUTE", "KE_IDENTIFYAFRICA", "INDIA_PAN", "IN_DMV", "NG_MONO_BVN", "NG_MONO_NIN", "US_CREDIT_TELCO", "PH_RES_CREDIT"]).optional(), fullName: z.string().optional(), firstName: z.string().optional(), middleName: z.string().optional(), surName: z.string().optional(), email: z.string().optional(), street: z.string().optional(), houseNo: z.string().optional(), postalCode: z.string().optional(), countryCode: z.string().optional(), phone: z.string().optional(), state: z.string().optional(), city: z.string().optional(), ssn: z.string().optional(), dateOfBirth: z.string().optional(), ipAddress: z.string().optional(), taxIdStatus: z.string().optional(), nationality: z.string().optional(), dlNumber: z.string().optional(), dlExpireAt: z.string().optional(), dlState: z.string().optional(), last4SSN: z.string().optional(), idNumber: z.string().optional(), panNumber: z.string().optional()}); export const income = z.object({status: z.string().optional(), range: z.string().optional()}); export const employment = z.object({status: z.string().optional(), type: z.string().optional(), sector: z.string().optional()}); export const reasonCode = z.object({reasonCode: z.enum(["A40SS", "A70SS", "A4070SS", "AASE", "ACV", "ADC", "ADCMS", "ADCUD", "AFAEI", "AFM", "AFMNCC", "AFMSCC", "AHNI", "AHR", "AIA", "AII", "AIR", "AMCC", "AMI", "AMICC", "AMICCMM", "AMICCSE", "ANA", "AND", "ANF", "APA", "APAI", "APCC", "APNV", "ARNF", "ASC", "ASCV", "ASDL", "ASU", "AUICCM", "AWS", "EA1Y", "EA2Y", "EA4M", "EA4Y", "EA6M", "EAC1F", "EACMF", "EADP", "EAF1", "EAF2", "EAF3", "EAF4Y", "EAFC", "EAG1", "EAG2", "EAG3", "EAG4", "EAG5", "EAG6", "EAHF", "EALLI", "EALSM", "EALTW", "EAM", "EAMC", "EAMF", "EAMI", "EAMP", "EANA", "EANE", "EANI", "EANP", "EAPF", "EAQ3", "EAQ4", "EAQM", "EASI", "EAVQ", "EAW", "EAY", "ED4M", "EDCH", "EDCO", "EDDN", "EDHA", "EDHC", "EDHI", "EDHN", "EDI", "EDL", "EDLC", "EDM", "EDNP", "EDPR", "EDVH", "EDVHC", "EDVHI", "EE24", "EE90", "EEPEII", "EMA24", "EMA90", "ESG24", "ESG90", "EVS24", "EVS90", "P2OSOV", "P3OSOV", "P4OSOV", "P5OSOV", "PA2M", "PA3M", "PA15", "PA24", "PABA", "PABM", "PACF", "PADU", "PAE", "PAHR", "PAIN", "PALT", "PAM", "PAMA", "PAML", "PANN", "PANV", "PAPM", "PAPO", "PAUD", "PAV", "PAVN", "PAW", "PBL", "PBOT", "PCC", "PDI", "PDL", "PDLA", "PE24", "PE90", "PECD", "PELT", "PES90", "PES", "PFIS", "PFN", "PFOI", "PFOS", "PFRD", "PH90", "PHAI", "PHAO", "PHLT", "PHRL", "PHSLT", "PILE", "PINV", "PLEA", "PLLT", "PLS", "PLST", "PMA24", "PMA90", "PMAE", "PMAIC", "PMAOC", "PMAOP", "PMAOT", "PML", "PMNA", "PMO", "PMS", "PMST", "PMU", "PMVS", "PN3M", "PNC", "PNMB", "PNN", "PNNS", "PNO", "PNPB", "PNRR", "PNS", "PNU", "POD", "PPC3", "PPC5", "PPC6", "PPC9", "PPGR", "PPN", "PPPH", "PPRT", "PPV", "PRC", "PRCO", "PRM", "PROM", "PRP", "PRSA", "PRSK", "PRSV", "PSCD", "PSDBM", "PSFE", "PSG24", "PSG90", "PSHRSN", "PSM90", "PSMDB", "PSMRN", "PSMSN", "PSTF", "PTFN", "PTL", "PTO", "PVLA", "PVLS", "PVMN", "PVOIP", "PVRC", "PVS24", "PVS90", "PVST", "PVSTF", "TANO", "TDDA", "TFAD1", "TFADF", "TFADI", "TFVE", "TFVI", "TH3AA", "TH3AH", "TH3AI", "TH3AO", "TH3AS", "TH3BO", "TH3CH", "TH3DB", "TH3DI", "TH3ED", "TH3FG", "TH3FR", "TH3IT", "TH3MR", "TH3NN", "TH3OM", "TH3PB", "TH3PH", "TH3PR", "TH3RI", "TH3SA", "TH3SF", "TH3SM", "THAAA", "THAAH", "THAAI", "THAAO", "THAAS", "THABO", "THACH", "THADB", "THADI", "THAED", "THAFG", "THAFR", "THAIT", "THAMR", "THANN", "THAOM", "THAPB", "THAPH", "THAPR", "THARI", "THASA", "THASF", "THASM", "THPAA", "THPAH", "THPAI", "THPAO", "THPAS", "THPBO", "THPCH", "THPDB", "THPDI", "THPED", "THPFG", "THPFR", "THPIT", "THPMR", "THPNN", "THPOM", "THPPB", "THPPH", "THPPR", "THPRI", "THPSA", "THPSF", "THPSM", "THTAH", "THTAV", "THTBE", "THTBP", "THTDI", "THTED", "THTES", "THTFG", "THTFR", "THTGP", "THTHE", "THTIA", "THTIH", "THTIP", "THTMX", "THTNN", "THTOM", "THTPR", "THTRP", "THTSG", "THTVP", "TIAWB", "TIAWF", "TINO", "TL3AA", "TL3AH", "TL3AI", "TL3AO", "TL3AS", "TL3BO", "TL3CH", "TL3DB", "TL3DI", "TL3ED", "TL3FG", "TL3FR", "TL3IT", "TL3MR", "TL3NN", "TL3OM", "TL3PB", "TL3PH", "TL3PR", "TL3RI", "TL3SA", "TL3SF", "TL3SM", "TLAAA", "TLAAH", "TLAAI", "TLAAO", "TLAAS", "TLABO", "TLACH", "TLADB", "TLADI", "TLAED", "TLAFG", "TLAFR", "TLAIT", "TLAMR", "TLANN", "TLAOM", "TLAPB", "TLAPH", "TLAPR", "TLARI", "TLASA", "TLASF", "TLASM", "TLGPD", "TLPAA", "TLPAH", "TLPAI", "TLPAO", "TLPAS", "TLPBO", "TLPCH", "TLPDB", "TLPDI", "TLPED", "TLPFG", "TLPFR", "TLPIT", "TLPMR", "TLPNN", "TLPOM", "TLPPB", "TLPPH", "TLPPR", "TLPRI", "TLPSA", "TLPSF", "TLPSM", "TLTAH", "TLTAV", "TLTBE", "TLTBP", "TLTDI", "TLTED", "TLTES", "TLTFG", "TLTFR", "TLTGP", "TLTHE", "TLTIA", "TLTIH", "TLTIP", "TLTMX", "TLTNN", "TLTOM", "TLTPR", "TLTRP", "TLTSG", "TLTVP", "TMAI", "TMFSI", "TNAPD", "TNASM", "TNPID", "TNPIE", "TNPIN", "TNPIP", "TNPIR", "TNPIS", "TNPIZ", "TNPMS", "TOAB", "TOAF", "TPAI", "TPDNV", "TPSMT", "TSAC", "TSAF", "TSBF", "TSBG", "TSBH", "TSBI", "TSBJ", "TBK", "TSBN", "TSBO", "TSCG", "TSCH", "TSDC", "TSDD", "TSDE", "TSDF", "TSDG", "TSDH", "TSDI", "TSDJ", "TSDK", "TSDL", "TSDM", "TSDN", "TSDO", "TSDP", "TSMA", "TSMB", "TSMC", "TNSA", "TSNB", "TSNC", "TSOA", "TSKU", "TSLI", "TSLJ", "TSLK", "TSLN", "TSLO", "TSDV", "TSNA", "TSNV", "TSOD", "TSOP", "TSPNA", "TSPNM", "TSR", "TSRD", "TSRF", "TSSF", "TSTUT", "TTIQ", "TXHR", "TXMTW", "TXNA", "TXR", "TXTW", "TXVHR", "TSRP"]).optional(), description: z.string().optional()}); export const verificationReasonCodes = z.object({key: z.string().optional(), reasonCodes: z.array(reasonCode).optional()}); export const creditFileDetails = z.object({creditFileNumber: z.string().optional(), creditFileCreationDate: z.string().optional()}); export const additionalVerificationInfo = z.object({creditFileDetails: creditFileDetails.optional()}); export const premiumExternalVerification = z.object({level: z.string().optional(), verifications: z.record(z.string(), z.string()).optional(), income: income.optional(), employment: employment.optional(), reasonCodes: z.array(verificationReasonCodes).optional(), additionalVerificationInfo: additionalVerificationInfo.optional()}); export const businessVerificationRequest = z.object({plugins: z.array(z.string()).optional(), businessName: z.string().optional(), addressLine1: z.string().optional(), street: z.string().optional(), houseNo: z.string().optional(), addressLine2: z.string().optional(), city: z.string().optional(), state: z.string().optional(), postalCode: z.string().optional(), country: z.enum(["US", "BR", "CA", "CN", "UK", "GB", "DE", "FR", "RO", "ES", "IT", "IL", "AR", "IE", "JP", "SE", "NO", "VN", "NL", "NG", "KE", "CM", "HK", "IN", "MX", "DK", "BG", "MT", "LT"]).optional(), taxId: z.string().optional(), uboNames: z.array(z.string()).optional(), directors: z.array(z.string()).optional()}); export const entityType = z.object({entityType: z.string().optional()}); export const verificationMessages = z.object({tinVerificationMessage: z.string().optional()}); export const uboNameVerificationResult = z.object({name: z.string().optional(), uboNameMatch: z.string().optional(), matchId: z.string().optional(), ownershipPercentage: z.string().optional()}); export const title = z.object({title: z.string().optional()}); export const people = z.object({name: z.string().optional(), titles: z.array(title).optional(), memberType: z.string().optional()}); export const businessVerificationResult = z.object({businessName: z.string().optional(), businessClassification: z.string().optional(), addressVerification: z.string().optional(), cityVerification: z.string().optional(), postalCodeVerification: z.string().optional(), addressPropertyType: z.string().optional(), addressDeliverability: z.string().optional(), tinVerification: z.string().optional(), uboNameMatch: z.string().optional(), registrationStatus: z.enum(["Active", "Inactive", "Unknown"]).optional(), entityType: entityType.optional(), verificationMessages: verificationMessages.optional(), uboNameVerificationResults: z.array(uboNameVerificationResult).optional(), directorsVerificationResults: z.array(uboNameVerificationResult).optional(), people: z.array(people).optional()}); export const bavHolder = z.object({holder: z.string().optional(), id: z.string().optional(), balance: z.number().optional(), currency: z.string().optional(), address: z.string().optional(), timestamp: z.number().int().optional()}); export const rfcValidationResponse = z.object({validRFC: z.boolean().optional(), status: z.string().optional(), message: z.string().optional(), rfcType: z.string().optional(), messageCode: z.string().optional(), errorMessage: z.string().optional()}); export const keyValue = z.object({key: z.string().optional(), value: z.object({}).optional()}); export const spoofCheckResult = z.object({confidence: z.number().optional(), isSpoof: z.boolean().optional(), status: z.enum(["passed", "failed", "notExecuted"]).optional(), severity: z.enum(["ultra low", "low", "medium", "high", "llava"]).optional(), version: z.string().optional(), checkName: z.enum(["physicalAttack", "digitalAttack", "evasionAttack", "motionAttack", "deepfakeAttack", "digitalManipulationAttack", "physicalAttack/constrained", "physicalAttack/assisted", "physicalAttack/unconstrained", "physicalAttack/webcam", "physicalAttack/constrained/multimodal"]).optional(), reason: z.enum(["FACE_CROPPING_FAILURE", "UNSATISFIED_FACE_SIZE", "UNSATISFIED_BLURRINESS_LEVEL", "UNSATISFIED_BRIGHTNESS_LEVEL", "UNSATISFIED_IMAGE_COMPRESSION_LEVEL"]).optional()}); export const mediaQualityResult = z.object({modality: z.literal("depth").optional(), name: z.literal("depthQuality").optional(), result: z.enum(["passed", "failed"]).optional(), parameters: z.string().optional()}); export const spoofResultOptions = z.object({cameraFacingMode: z.enum(["FRONTAL", "BACK", "UNKNOWN"]).optional(), source: z.enum(["MOBILE", "DESKTOP", "UNKNOWN"]).optional(), enforceQSV: z.boolean().optional(), strictVideoChecks: z.boolean().optional()}); export const spoofResultExplanationKeywords = z.object({category: z.string().optional(), isDepthFlat: z.boolean().optional(), isVideoCorrupted: z.boolean().optional()}); export const spoofResultExplanation = z.object({description: z.string().optional(), keywords: spoofResultExplanationKeywords.optional()}); export const spoofDetectionErrorDetails = z.object({error: z.enum(["BAD_REQUEST", "UNAUTHORIZED", "PAYMENT_REQUIRED", "FORBIDDEN", "NOT_FOUND", "METHOD_NOT_ALLOWED", "NOT_ACCEPTABLE", "PROXY_AUTHENTICATION_REQUIRED", "REQUEST_TIMEOUT", "CONFLICT", "GONE", "LENGTH_REQUIRED", "PRECONDITION_FAILED", "PAYLOAD_TOO_LARGE", "URI_TOO_LONG", "UNSUPPORTED_MEDIA_TYPE", "REQUESTED_RANGE_NOT_SATISFIABLE", "EXPECTATION_FAILED", "I_AM_A_TEAPOT", "UNPROCESSABLE_ENTITY", "LOCKED", "FAILED_DEPENDENCY", "UPGRADE_REQUIRED", "PRECONDITION_REQUIRED", "TOO_MANY_REQUESTS", "REQUEST_HEADER_FIELDS_TOO_LARGE", "UNAVAILABLE_FOR_LEGAL_REASONS", "CONFIGURATION_ERROR", "INTERNAL_SERVER_ERROR", "BAD_GATEWAY", "SERVICE_UNAVAILABLE", "USER_NOT_ENROLLED", "FACE_CROPPING_FAILED", "FACE_TOO_SMALL", "FACE_TOO_BLURRY", "FACE_TOO_DARK", "BAD_PHOTO_QUALITY", "INVALID_DEPTH_IMAGE", "INVALID_VIDEO", "USER_BLACKLISTED", "NONEXISTENT_CUSTOMER", "SPOOF_ATTEMPT_DETECTED", "USER_ALREADY_EXISTS", "OMNICHANNEL_NOT_SUPPORTED", "UUID_ALREADY_USED", "MULTIPLE_FACES_DETECTED", "SIGNATURE_DOES_NOT_MATCH", "INVALID_LOGIN_CREDENTIALS", "USER_IS_NOT_APPROVED", "INVALID_INTERVIEW_CODE", "USER_IS_NOT_RECOGNIZED", "INVALID_API_KEY_USAGE", "INVALID_IMAGE", "MODULE_NOT_SUPPORTED", "FACE_NOT_FOUND", "IMAGE_NOT_FOUND", "TOO_MANY_RECORDS", "INVALID_PHONE_FORMAT", "DUPLICATE_EMAIL", "DUPLICATE_PHONE_NUMBER", "DUPLICATE_MAC_ADDRESS", "INVALID_UUID_PARAMETER", "INVALID_CONFIGURATION_ID_PARAMETER", "FLOW_NOT_ACTIVATED", "INVALID_EVENT_NAME", "FLOW_NAME_EXISTS", "INVALID_REDIRECTION_URL", "INVALID_RULE_CONFIGURED", "TWO_GOV_VALIDATION_MODULES", "MULTIPLE_ELECTRONIC_SIGNATURE_MODULES", "INVALID_CLIENT_ID_FOR_OAUTH2_SECURED", "REDIRECT_URI_REQUIRED_FOR_OAUTH2_SECURED", "REDIRECT_URI_INVALID_FOR_OAUTH2_SECURED", "WORKFLOW_ASYNC_RESOLUTION_NODE_MISSING", "WORKFLOW_ASYNC_MODULE_MISSING_FOR_RESOLUTION", "WORKFLOW_NAME_EXISTS", "WORKFLOW_NODE_WRONG_TYPE", "WORKFLOW_ROOT_NODE_NOT_SINGLE", "WORKFLOW_ROOT_NODE_ID_NOT_MATCH_ROOT_NODE", "WORKFLOW_CONDITION_NODE_NOT_COMPLETE", "WORKFLOW_NODE_SUCCESSOR_NOT_FOUND", "WORKFLOW_GRAPH_NOT_CONNECTED", "WORKFLOW_RESULT_NODE_NOT_FINISH", "WORKFLOW_TEMPLATE", "WORKFLOW_TEMPLATE_NOT_FOUND", "MODULE_CONFIGURATION_INCOMPLETE", "ORGANIZATION_NAME_EXISTS", "WORKFLOW_NODE_ALREADY_HAS_PARENT", "WORKFLOW_NODE_BELONGS_TO_DIFFERENT_WORKFLOW", "WORKFLOW_ASYNC_RESOLUTION_REQUIRES_ASYNC_MODULE_BEFORE", "WORKFLOW_MODULE_CANNOT_BE_ADDED_AFTER_ASYNC_RESOLUTION", "ENTITY_INSERT_FAILED", "ENTITY_UPDATE_FAILED", "ENTITY_ALREADY_EXISTS", "INVALID_EMAIL_FORMAT", "SELFIE_IMAGE_MISSING", "INVALID_MODULE_CONFIGURATION", "INVALID_DATE_FORMAT", "INVALID_TAX_ID_FORMAT", "INVALID_US_STATE_CODE", "INVALID_CA_REGION_CODE", "SELFIE_IMAGE_LOW_QUALITY", "SELFIE_FACE_OCCLUDED", "QR_PHISHING_INVALID_VALIDATION", "START_ENHANCED_SECURITY_VALIDATION", "ONBOARDING_URL_ALREADY_USED", "ID_FACE_EXTRACTION_SKIPPED", "API_KEY_NAME_EXISTS", "WEBHOOK_TYPE_DEFINED", "BAV_ATTEMPTS_EXCEEDED", "INVALID_CREDIT_DATA", "BATCH_ALREADY_RUNNING", "CONSENT_ALREADY_EXISTS", "CONSENT_NOT_GRANTED", "MODULE_NOT_PROVISIONED", "WATCHLIST_ID_CLASSIFICATION_FAILED", "AGE_ASSURANCE_VALIDATION_FAILED", "LOGIN_HINT_NOT_FOUND", "ESCALATION_ALREADY_OPENED_BY_INCODE", "EKYB_NO_RESULTS", "EKYB_TIN_VERIFICATION_FAILED", "INTEGRATION_NOT_FOUND_BY_REFERENCE", "INVALID_LOGIN_HINT", "CONTACT_ALREADY_VERIFIED", "TRIAL_ORGANIZATION_SESSION_LIMIT_REACHED", "DOCUMENT_NOT_FOUND", "DOCUMENT_TOO_LARGE", "MAC_ALGORITHM_REQUIRED_CLIENT_SECRET_JWT", "SIGNATURE_ALGORITHM_REQUIRED_PRIVATE_KEY_JWT", "JWK_SET_URL_NEEDED_FOR_PRIVATE_KEY_JWT", "NON_UNIQUE_CLIENT_NAME", "SINGLE_INTEGRATION_NOT_FOUND_BY_TYPE", "MULTIPLE_INTEGRATIONS_FOUND_BY_TYPE", "VERIFICATION_CANNOT_BE_STARTED", "PROCESSING_ERROR", "EXTERNAL_API_ERROR"]).optional(), detailMessage: z.string().optional()}); export const spoofDetectionResult = z.object({overallConfidence: z.number().optional(), isSpoof: z.boolean().optional(), status: z.enum(["passed", "failed", "notExecuted"]).optional(), physicalAttack: spoofCheckResult.optional(), digitalAttack: spoofCheckResult.optional(), evasionAttack: spoofCheckResult.optional(), motionAttack: spoofCheckResult.optional(), deepfakeAttack: spoofCheckResult.optional(), digitalManipulationAttack: spoofCheckResult.optional(), mediaQualityResults: z.array(mediaQualityResult).optional(), options: spoofResultOptions.optional(), method: z.enum(["SINGLE_FRAME", "SINGLE_FRAME_MULTIMODAL", "SINGLE_FRAME_MULTIMODAL_VIDEO"]).optional(), explanation: spoofResultExplanation.optional(), spoofDetectionErrorDetails: spoofDetectionErrorDetails.optional()}); export const screenDimensions = z.object({width: z.number().int().optional(), height: z.number().int().optional()}); export const metadataDeviceInfo = z.object({kind: z.enum(["MOBILE", "DESKTOP"]).optional(), model: z.string().optional(), os: z.string().optional(), osVersion: z.string().optional(), screenDimensions: screenDimensions.optional(), fingerprintHash: z.string().optional(), ip: z.string().optional(), backgroundMode: z.boolean().optional(), hookDetected: z.boolean().optional(), emulatorDetected: z.boolean().optional(), rootDetected: z.boolean().optional(), virtualEnvironmentDetected: z.boolean().optional(), jailbreakDetectionDisabled: z.boolean().optional()}); export const getUserMediaAvailability = z.object({webkit: z.boolean().optional(), mozilla: z.boolean().optional(), opera: z.boolean().optional(), microsoft: z.boolean().optional()}); export const browserInfo = z.object({userAgent: z.string().optional(), getUserMediaAvailability: getUserMediaAvailability.optional(), webglFingerprint: z.string().optional(), inspectorOpened: z.boolean().optional(), isMockedBrowser: z.boolean().optional()}); export const cameraInfo = z.object({facingMode: z.enum(["FRONTAL", "BACK"]).optional(), settings: z.record(z.string(), z.object({})).optional()}); export const contrastSharpnessSaturation = z.object({contrast: z.number().int().optional(), sharpness: z.number().int().optional(), saturation: z.number().int().optional(), metrics: z.number().optional(), isTimeoutReached: z.boolean().optional(), framePixelDelta: z.number().optional()}); export const contrastSharpnessSaturationData = z.object({initialValues: contrastSharpnessSaturation.optional(), appliedValues: z.array(contrastSharpnessSaturation).optional()}); export const genericInjectionData = z.object({streamInitializationTime: z.array(z.number().int()).optional(), timeToFirstFrame: z.array(z.number().int()).optional(), appliedConstraints: z.object({}).optional(), isTimeoutReached: z.boolean().optional(), sitAborted: z.boolean().optional(), warmInitializationTime: z.number().int().optional()}); export const frameStats = z.object({frameCount: z.number().int().optional(), isBlack: z.boolean().optional(), isUnique: z.boolean().optional(), timestamp: z.number().int().optional(), updatedPercentage: z.number().optional()}); export const iosInjectionData = z.object({createStreamTime: z.array(z.number().int()).optional(), frameStats: z.array(frameStats).optional(), appliedConstraints: z.object({}).optional(), isTimeoutReached: z.boolean().optional()}); export const cctParams = z.object({value: z.number().int().optional(), applicationTime: z.number().int().optional(), appliedConstraints: z.object({}).optional(), isTimeoutReached: z.boolean().optional(), framePixelDelta: z.number().optional()}); export const cctInjectionData = z.object({initialCct: z.number().int().optional(), minColorTemperatureParameters: z.array(cctParams).optional(), maxColorTemperatureParameters: z.array(cctParams).optional()}); export const androidInjectionData = z.object({constraintsApplicationTime: z.array(z.number().int()).optional(), appliedConstraints: z.array(z.object({})).optional()}); export const cameraCheckData = z.object({type: z.enum(["FRONT", "BACK"]).optional(), isAvailable: z.boolean().optional(), faceDetected: z.boolean().optional(), idDetected: z.boolean().optional(), isTimeoutReached: z.boolean().optional()}); export const frontBackCameraData = z.object({cameraCheckData: z.array(cameraCheckData).optional(), phashMinRotHamming: z.number().int().optional(), colorHistChiSqr: z.number().optional(), noiseMaeRatio: z.number().optional(), noiseDistroChiSqr: z.number().optional(), initialFrameCount: z.number().int().optional(), oppositeFrameCount: z.number().int().optional(), oppositeWithinPhashHammingMean: z.number().optional(), oppositeWithinPhashHammingMax: z.number().optional(), oppositeWithinNoiseMaeStdev: z.number().optional(), oppositeWithinBrightnessStdev: z.number().optional(), crossPhashHammingMean: z.number().optional(), crossPhashHammingMin: z.number().optional(), crossPhashHammingMax: z.number().optional(), crossColorHistChiSqrMean: z.number().optional(), crossNoiseMaeDelta: z.number().optional(), crossNoiseDistroChiSqrMean: z.number().optional(), crossBrightnessDelta: z.number().optional(), initialSceneFeatures: z.array(z.number()).optional(), oppositeSceneFeatures: z.array(z.number()).optional(), crossSceneFeatureDeltas: z.array(z.number()).optional(), oppositeTemporalKurtosis: z.number().optional(), oppositeTemporalKsToGaussian: z.number().optional(), oppositeTemporalLevelsRatio: z.number().optional(), oppositeTemporalVarianceMean: z.number().optional(), oppositeTemporalVarianceStdev: z.number().optional(), initialDeviceId: z.string().optional(), oppositeDeviceId: z.string().optional(), initialGroupId: z.string().optional(), oppositeGroupId: z.string().optional(), initialFacingMode: z.string().optional(), oppositeFacingMode: z.string().optional(), initialWidth: z.number().int().optional(), initialHeight: z.number().int().optional(), oppositeWidth: z.number().int().optional(), oppositeHeight: z.number().int().optional(), initialFrameRate: z.number().optional(), oppositeFrameRate: z.number().optional(), deviceIdsDiffer: z.boolean().optional(), groupIdsMatch: z.boolean().optional(), experimentIncomplete: z.boolean().optional()}); export const frameDuplicationData = z.object({validDuplicateCount: z.number().int().optional(), invalidDuplicateCount: z.number().int().optional(), continuousValidDuplicateCount: z.number().int().optional(), continuousInvalidDuplicateCount: z.number().int().optional(), isTimeoutReached: z.boolean().optional(), initialDuplicateFramesDetected: z.boolean().optional(), initialOpenCaptureDuplicateFramesDetected: z.boolean().optional(), invalidInitialDuplicateFramesDetected: z.boolean().optional(), continuousDuplicateFramesDetected: z.boolean().optional(), numInitialDuplicateInstances: z.number().int().optional(), numInitialOpenCaptureDuplicateInstances: z.number().int().optional(), numInvalidInitialDuplicateInstances: z.number().int().optional(), numContinuousDuplicateInstances: z.number().int().optional(), preCaptureTotalFrames: z.number().int().optional(), preCaptureUniqueHashes: z.number().int().optional(), preCaptureMaxConsecutiveRun: z.number().int().optional(), preCaptureMaxOccurrenceCount: z.number().int().optional(), preCaptureMaxOccurrencePercentage: z.number().optional(), frameStats: z.array(frameStats).optional()}); export const zoomParams = z.object({applicationTime: z.number().int().optional(), appliedConstraints: z.object({}).optional(), appliedZoom: z.number().optional(), isTimeoutReached: z.boolean().optional()}); export const zoomData = z.object({initialConstraints: z.object({}).optional(), initialZoom: z.number().optional(), maxZoomParameters: z.array(zoomParams).optional(), minZoomParameters: z.array(zoomParams).optional()}); export const exposureParams = z.object({applyConstraintsTime: z.number().int().optional(), exposureType: z.enum(["INITIAL", "MIN", "MAX", "TOGGLE"]).optional(), exposureMode: z.enum(["CONTINUOUS", "MANUAL"]).optional(), exposureCompensation: z.number().optional(), exposureTime: z.number().optional(), brightness: z.number().optional(), isTimeoutReached: z.boolean().optional()}); export const exposureFrame = z.object({timestamp: z.number().optional(), exposureType: z.string().optional(), requestedMode: z.string().optional(), requestedCompensation: z.number().optional(), brightness: z.number().optional(), isCanonical: z.boolean().optional(), applyConstraintsTime: z.number().int().optional(), reportedMode: z.string().optional(), reportedCompensation: z.number().optional(), reportedExposureTime: z.number().optional(), isTimeoutReached: z.boolean().optional(), imageWidth: z.number().int().optional(), imageHeight: z.number().int().optional()}); export const sessionDiagnostics = z.object({exposureSupported: z.boolean().optional(), exposureApplyConstraintError: z.boolean().optional(), exposureApplyConstraintTimeout: z.boolean().optional(), invalidTrackStateDetected: z.boolean().optional(), interruptedCapture: z.boolean().optional(), cameraCaptureStatus: z.number().int().optional(), exposureMinDelay: z.number().int().optional(), exposureInitialDelay: z.number().int().optional(), baselineBrightness: z.number().optional()}); export const exposureData = z.object({exposureParams: z.array(z.array(exposureParams)).optional(), frames: z.array(z.array(exposureFrame)).optional(), sessionDiagnostics: z.array(sessionDiagnostics).optional()}); export const replayAttackData = z.object({collisionCount: z.number().int().optional(), isTimeoutReached: z.boolean().optional(), intraSessionLoop: z.boolean().optional(), intraSessionLookahead: z.boolean().optional(), interSessionLookahead: z.boolean().optional(), totalFrames: z.number().int().optional(), uniqueHashes: z.number().int().optional(), maxConsecutiveRun: z.number().int().optional(), maxOccurrenceCount: z.number().int().optional(), storedSessionsCount: z.number().int().optional(), storedHashesCount: z.number().int().optional(), storedSessionSizes: z.array(z.number().int()).optional()}); export const environmentIntegrity = z.object({rootDetected: z.boolean().optional(), storageTamperingDetected: z.boolean().optional(), environmentHookingDetected: z.boolean().optional(), wasmTamperingDetected: z.boolean().optional(), challengeInterruptionDetected: z.boolean().optional()}); export const iadInfo = z.object({isDeepsightEnabled: z.boolean().optional(), deepsightLiveness: z.enum(["SINGLE_FRAME", "MULTIMODAL", "VIDEOLIVENESS"]).optional(), zoomCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), exposureCompensationCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), cctCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), genericCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), mobileTemporalCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), contrastSharpnessSaturationCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), frontBackCameraCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), frameDuplicationCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), exposureCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), replayAttackCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), environmentIntegrityCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), extendedDeviceAndBrowserClassificationData: z.object({}).optional(), deviceEmulationCheck: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional(), contrastSharpnessSaturationData: contrastSharpnessSaturationData.optional(), genericInjectionData: genericInjectionData.optional(), iosInjectionData: iosInjectionData.optional(), cctInjectionData: cctInjectionData.optional(), androidInjectionData: androidInjectionData.optional(), frontBackCameraData: frontBackCameraData.optional(), frameDuplicationData: frameDuplicationData.optional(), zoomData: zoomData.optional(), exposureData: exposureData.optional(), replayAttackData: replayAttackData.optional(), environmentIntegrity: environmentIntegrity.optional(), isMotionEnabled: z.boolean().optional(), sensorDataReference: z.string().optional()}); export const behaviorInfo = z.object({motionStatus: z.enum(["PASS", "FAIL", "UNCLEAR"]).optional()}); export const mediaInfo = z.object({videoChecksum: z.string().optional()}); export const captureMetadata = z.object({timestamp: z.number().int().optional(), sdkPlatform: z.enum(["WEBAPP", "IOS", "ANDROID"]).optional(), sdkVersion: z.string().optional(), callerId: z.string().optional(), device: metadataDeviceInfo.optional(), browser: browserInfo.optional(), camera: cameraInfo.optional(), iad: iadInfo.optional(), behavior: behaviorInfo.optional(), captureMode: z.enum(["AUTO", "MANUAL"]).optional(), hasDepth: z.boolean().optional(), expectedDepth: z.boolean().optional(), mediaInfo: mediaInfo.optional(), clientLogs: z.string().optional()}); export const ocrDataConfidence = z.object({birthDateConfidence: z.number().gte(0).lte(1).optional(), nameConfidence: z.number().gte(0).lte(1).optional(), nameNativeScriptConfidence: z.number().gte(0).lte(1).optional(), firstNameNativeScriptConfidence: z.number().gte(0).lte(1).optional(), paternalLastNameNativeScriptConfidence: z.number().gte(0).lte(1).optional(), maternalLastNameNativeScriptConfidence: z.number().gte(0).lte(1).optional(), givenNameConfidence: z.number().gte(0).lte(1).optional(), firstNameConfidence: z.number().gte(0).lte(1).optional(), middleNameConfidence: z.number().gte(0).lte(1).optional(), nameSuffixConfidence: z.number().gte(0).lte(1).optional(), mothersSurnameConfidence: z.number().gte(0).lte(1).optional(), fathersSurnameConfidence: z.number().gte(0).lte(1).optional(), nickNameConfidence: z.number().gte(0).lte(1).optional(), fullNameMrzConfidence: z.number().gte(0).lte(1).optional(), mothersNameConfidence: z.number().gte(0).lte(1).optional(), fathersNameConfidence: z.number().gte(0).lte(1).optional(), mothersIdNumberConfidence: z.number().gte(0).lte(1).optional(), fathersIdNumberConfidence: z.number().gte(0).lte(1).optional(), spouseNameConfidence: z.number().gte(0).lte(1).optional(), birthNameConfidence: z.number().gte(0).lte(1).optional(), addressConfidence: z.number().gte(0).lte(1).optional(), streetConfidence: z.number().gte(0).lte(1).optional(), colonyConfidence: z.number().gte(0).lte(1).optional(), postalCodeConfidence: z.number().gte(0).lte(1).optional(), cityConfidence: z.number().gte(0).lte(1).optional(), stateConfidence: z.number().gte(0).lte(1).optional(), districtConfidence: z.number().gte(0).lte(1).optional(), stateCodeConfidence: z.number().gte(0).lte(1).optional(), countryCodeConfidence: z.number().gte(0).lte(1).optional(), genderConfidence: z.number().gte(0).lte(1).optional(), issueDateConfidence: z.number().gte(0).lte(1).optional(), expirationDateConfidence: z.number().gte(0).lte(1).optional(), issuedAtConfidence: z.number().gte(0).lte(1).optional(), expireAtConfidence: z.number().gte(0).lte(1).optional(), issuingAuthorityConfidence: z.number().gte(0).lte(1).optional(), mrz1Confidence: z.number().gte(0).lte(1).optional(), mrz2Confidence: z.number().gte(0).lte(1).optional(), mrz3Confidence: z.number().gte(0).lte(1).optional(), mrzFullConfidence: z.number().gte(0).lte(1).optional(), documentNumberConfidence: z.number().gte(0).lte(1).optional(), backNumberConfidence: z.number().gte(0).lte(1).optional(), personalNumberConfidence: z.number().gte(0).lte(1).optional(), nationalNumberConfidence: z.number().gte(0).lte(1).optional(), claveDeElectorConfidence: z.number().gte(0).lte(1).optional(), numeroEmisionCredencialConfidence: z.number().gte(0).lte(1).optional(), curpConfidence: z.number().gte(0).lte(1).optional(), nueConfidence: z.number().gte(0).lte(1).optional(), registrationDateConfidence: z.number().gte(0).lte(1).optional(), heightConfidence: z.number().gte(0).lte(1).optional(), birthPlaceConfidence: z.number().gte(0).lte(1).optional(), bloodTypeConfidence: z.number().gte(0).lte(1).optional(), eyeColorConfidence: z.number().gte(0).lte(1).optional(), classesConfidence: z.number().gte(0).lte(1).optional(), condConfidence: z.number().gte(0).lte(1).optional(), mentionsConfidence: z.number().gte(0).lte(1).optional(), refNumberConfidence: z.number().gte(0).lte(1).optional(), weightConfidence: z.number().gte(0).lte(1).optional(), hairConfidence: z.number().gte(0).lte(1).optional(), restrictionsConfidence: z.number().gte(0).lte(1).optional(), nationalityConfidence: z.number().gte(0).lte(1).optional(), nationalityMrzConfidence: z.number().gte(0).lte(1).optional(), nationalityAlpha3Confidence: z.number().gte(0).lte(1).optional(), maritalStatusConfidence: z.number().gte(0).lte(1).optional(), raceConfidence: z.number().gte(0).lte(1).optional(), taxIdNumberConfidence: z.number().gte(0).lte(1).optional(), jurisdictionCodeConfidence: z.number().gte(0).lte(1).optional()}); export const signedConsent = z.object({consentType: z.enum(["ML", "PRIVACY", "MANDATORY"]).optional(), regulationType: z.enum(["US", "Other", "Worldwide", "US_Illinois", "US_California", "US_Texas", "US_Washington"]).optional(), signed: z.boolean().optional(), consentId: z.string().optional(), signedTime: z.number().int().optional()}); export const flowRule = z.object({name: z.string().optional(), expression: z.string().optional(), ruleType: z.enum(["idValidation", "secondIdValidation", "faceValidation", "liveness", "deepsight", "eKyc", "videoselfie", "faceAuthentication", "total", "phoneRisk", "emailRisk", "governmentValidation"]).optional(), status: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), triggered: z.boolean().optional()}); export const antifraudResult = z.object({originalStatus: z.enum(["FAILED", "PASSED", "NOT_EXECUTED", "MANUAL_REVIEW"]).optional(), resolved: z.boolean().optional(), resolvedReason: z.string().optional()}); export const scannerSignals = z.object({b900InkCheck: z.boolean().optional(), uvDullnessFront: z.boolean().optional(), uvDullnessBack: z.boolean().optional(), motionDetectionFront: z.boolean().optional(), motionDetectionBack: z.boolean().optional()}); export const eUnsignedDocument = z.object({uuid: z.string().optional(), s3location: z.string().optional(), createdTime: z.number().int().optional(), documentName: z.string().optional()}); export const eSignedDocument = z.object({uuid: z.string().optional(), s3location: z.string().optional(), createdTime: z.number().int().optional(), signerKeyName: z.string().optional(), externalFileId: z.string().optional()}); export const punchedHoles = z.object({confidence: z.number().optional()}); export const dLClassRestriction = z.object({dlClass: z.string().optional(), raw: z.string().optional(), fullRaw: z.string().optional(), baseCode: z.string().optional(), subCode: z.string().optional(), payload: z.array(z.string()).optional()}); export const interview = z.object({get_version: z.number().int().optional(), secondDocumentInterviewId: z.string().optional(), parentInterviewId: z.string().optional(), name: z.string().optional(), fullNameMrz: z.string().optional(), displayName: z.string().optional(), phone: z.string().optional(), birthDate: z.string().optional(), address: z.string().optional(), location: z.string().optional(), longitude: z.number().optional(), latitude: z.number().optional(), gender: z.string().optional(), typeOfId: z.string().optional(), externalId: z.string().optional(), flowWalletAddress: z.string().optional(), email: z.string().optional(), mrz1: z.string().optional(), mrz2: z.string().optional(), mrz3: z.string().optional(), street: z.string().optional(), colony: z.string().optional(), postalCode: z.string().optional(), city: z.string().optional(), state: z.string().optional(), stateCode: z.string().optional(), countryCode: z.string().optional(), cic: z.string().optional(), ocr: z.string().optional(), claveDeElector: z.string().optional(), numeroEmisionCredencial: z.string().optional(), personalNumber: z.string().optional(), nationalNumber: z.string().optional(), personalIdNumber: z.string().optional(), taxIdNumber: z.string().optional(), issueFront: z.number().int().optional(), issueBack: z.number().int().optional(), issuingCountry: z.string().optional(), registrationDate: z.number().int().optional(), documentId: z.string().optional(), deviceType: z.enum(["IOS", "ANDROID", "WEBAPP"]).optional(), height: z.string().optional(), birthPlace: z.string().optional(), bloodType: z.string().optional(), curp: z.string().optional(), recognitionConfidence: z.number().optional(), nfcRecognitionConfidence: nfcRecognitionConfidence.optional(), spoofConfidence: z.number().optional(), idValidationScore: z.string().optional(), tamperedConfidence: z.number().optional(), tamperedModelVersion: z.string().optional(), fakeIdConfidence: z.number().optional(), retouchFrontConfidence: z.number().optional(), frontClassification: z.enum(["Unknown", "Passport", "Visa", "DriversLicense", "IdentificationCard", "Permit", "Currency", "ResidenceDocument", "TravelDocument", "BirthCertificate", "VehicleRegistration", "Other", "WeaponLicense", "TribalIdentification", "VoterIdentification", "Military", "TaxIdentification", "FederalID", "MedicalCard"]).optional(), backClassification: z.enum(["Unknown", "Passport", "Visa", "DriversLicense", "IdentificationCard", "Permit", "Currency", "ResidenceDocument", "TravelDocument", "BirthCertificate", "VehicleRegistration", "Other", "WeaponLicense", "TribalIdentification", "VoterIdentification", "Military", "TaxIdentification", "FederalID", "MedicalCard"]).optional(), frontIdFaceCount: z.number().int().optional(), manualIdCheckNeeded: z.boolean().optional(), manualSelfieCheckNeeded: z.boolean().optional(), frontSharpness: z.number().int().optional(), frontGlare: z.number().int().optional(), frontHorizontalResolution: z.number().int().optional(), frontShadowConfidence: z.number().optional(), backSharpness: z.number().int().optional(), backGlare: z.number().int().optional(), backHorizontalResolution: z.number().int().optional(), backShadowConfidence: z.number().optional(), issueDate: z.number().int().optional(), expirationDate: z.number().int().optional(), qr: z.boolean().optional(), manualCorrectionBy: z.string().optional(), waitingTime: z.number().int().optional(), logRecognitionConfidence: z.number().optional(), readabilityConfidence: z.number().optional(), frontSeccion: z.string().optional(), confSelfieConfidence: z.number().optional(), confSelfieLogConfidence: z.number().optional(), confFrontIDConfidence: z.number().optional(), confFrontIDLogConfidence: z.number().optional(), notes: z.string().optional(), tags: z.array(z.string()).optional(), croppedIDFaceRef: z.string().optional(), croppedNfcFaceRef: z.string().optional(), fullFrameFrontIDRef: z.string().optional(), fullFrameBackIDRef: z.string().optional(), croppedFrontIDRef: z.string().optional(), croppedBackIDRef: z.string().optional(), croppedFaceRef: z.string().optional(), confSelfieRef: z.string().optional(), confFrontIDRef: z.string().optional(), confBackIDRef: z.string().optional(), additionalNames: z.array(additionalName).optional(), additionalAttrs: z.array(z.enum(["DOCUMENTO_INFANTIL", "IDADE_PRE_ESCOLAR", "MENOR_DE_ANOS", "NAO_ASSINA", "EM_FASE_DE_ALFABETIZACAO", "IMPOSSIBILITADO_DE_ASSINAR", "LIMITED_TERM", "FEDERAL_LIMITS_APPLY", "PERMISO_PARA_TRABAJAR", "EXTRANJERO", "INDIA_DIGITAL_VID", "VETERAN", "MOTORCYCLE_LICENSE", "NON_DOMICILED", "COMMERCIAL_LICENSE", "RESIDENTE", "MIGRANTE", "TEMPORAL", "VISITANTE"])).optional(), additionalTimestamps: z.array(customDate).optional(), religion: z.string().optional(), customFields: z.array(customField).optional(), customFieldsValid: z.array(customFieldValid).optional(), expirationDateCheckDigit: z.string().optional(), streetName: z.string().optional(), exteriorNumber: z.string().optional(), interiorNumber: z.string().optional(), district: z.string().optional(), addressCountryCode: z.string().optional(), issuerCode: z.string().optional(), redirectionUrl: z.string().optional(), maritalStatus: z.string().optional(), race: z.string().optional(), notExtractedDetails: z.array(z.string()).optional(), issuingAuthority: z.string().optional(), qrContents: z.array(z.string()).optional(), conferenceFeedback: z.string().optional(), barcodeRawData: z.string().optional(), nameParsed: z.boolean().optional(), backClassificationFailReason: z.enum(["UNKNOWN_DOCUMENT_TYPE", "WRONG_DOCUMENT_SIDE", "WRONG_ONE_SIDED_DOCUMENT", "UNFOLDED_DOCUMENT_PAGE_MISMATCH", "WRONG_UNFOLDED_DOCUMENT", "DOCUMENT_NOT_READABLE", "UNABLE_TO_ALIGN_DOCUMENT", "ID_TYPE_UNACCEPTABLE", "UNEXPECTED_ERROR_OCCURRED", "DIGITAL_ID_REQUESTED_BUT_OTHER_PROVIDED"]).optional(), nameBean: nameBean.optional(), backTypeOfId: z.string().optional(), documentFrontSubtype: z.string().optional(), documentFrontState: z.string().optional(), documentBackSubtype: z.string().optional(), documentBackState: z.string().optional(), documentNumberCheckDigit: z.string().optional(), dateOfBirthCheckDigit: z.string().optional(), expireAt: z.string().optional(), issuedAt: z.string().optional(), issuingCountryBack: z.string().optional(), finishStatus: z.boolean().optional(), videoSelfieTypeOfIdMatch: z.boolean().optional(), videoSelfieBackTypeOfIdMatch: z.boolean().optional(), videoSelfieFaceMatched: z.boolean().optional(), videoSelfieNameOcrMatched: z.boolean().optional(), videoSelfieBacksideOcrMatched: z.boolean().optional(), videoSelfieVoiceConsentFaceMatched: z.boolean().optional(), vendorValidationScore: z.number().optional(), videoSelfieRecognitionConfidence: z.number().optional(), videoSelfieLogRecognitionConfidence: z.number().optional(), videoSelfieSpoofConfidence: z.number().optional(), paperConfidence: z.number().optional(), screenConfidence: z.number().optional(), screenModelVersion: z.string().optional(), paperModelVersion: z.string().optional(), idAlterationConfidence: z.number().optional(), frontClassificationFailReason: z.enum(["UNKNOWN_DOCUMENT_TYPE", "WRONG_DOCUMENT_SIDE", "WRONG_ONE_SIDED_DOCUMENT", "UNFOLDED_DOCUMENT_PAGE_MISMATCH", "WRONG_UNFOLDED_DOCUMENT", "DOCUMENT_NOT_READABLE", "UNABLE_TO_ALIGN_DOCUMENT", "ID_TYPE_UNACCEPTABLE", "UNEXPECTED_ERROR_OCCURRED", "DIGITAL_ID_REQUESTED_BUT_OTHER_PROVIDED"]).optional(), frontCroppingError: z.enum(["ID_IS_CUT", "ID_NOT_DETECTED"]).optional(), backCroppingError: z.enum(["ID_IS_CUT", "ID_NOT_DETECTED"]).optional(), frontSharpnessSource: z.enum(["ML_BACKEND", "CLIENT"]).optional(), frontGlareSource: z.enum(["ML_BACKEND", "CLIENT"]).optional(), backSharpnessSource: z.enum(["ML_BACKEND", "CLIENT"]).optional(), backGlareSource: z.enum(["ML_BACKEND", "CLIENT"]).optional(), isRealId: z.boolean().optional(), barcodeMeta: barcodeMeta.optional(), barcodeReader: z.string().optional(), barcodeSignatureVerified: z.boolean().optional(), fullFrameFrontIDRefs: z.array(imageAttempt).optional(), fullFrameBackIDRefs: z.array(imageAttempt).optional(), refCroppedFrontIDRef: z.string().optional(), refCroppedBackIDRef: z.string().optional(), croppedOriginalFrontIDRef: z.string().optional(), croppedOriginalBackIDRef: z.string().optional(), voiceConsentSelfieRefs: z.array(voiceConsentSelfieAttempt).optional(), voiceConsentSelfieRef: z.string().optional(), confPoaRef: z.string().optional(), idSegmentImagesRefs: z.record(z.string(), z.string()).optional(), ocrResultsId: z.string().optional(), interviewerId: z.string().optional(), interviewerName: z.string().optional(), interviewSessionId: z.string().optional(), interviewCode: z.string().optional(), oldInterviewId: z.string().optional(), externalCustomerId: z.string().optional(), nue: z.string().optional(), nss: z.string().optional(), sessionStatus: z.enum(["Alive", "Closed", "Deleted"]).optional(), closedAt: z.number().int().optional(), deletedAt: z.number().int().optional(), speechOpentokSessionId: z.string().optional(), speechOpentokArchiveId: z.string().optional(), speechOffset: z.number().optional(), language: z.string().optional(), signingCeremonyUrl: z.string().optional(), videoSelfieFileIsPresent: z.enum(["PRESENT", "NOT_PRESENT", "UNKNOWN"]).optional(), videoSelfieHasVideo: z.enum(["YES", "NO", "UNKNOWN"]).optional(), videoSelfieHasAudio: z.enum(["YES", "NO", "UNKNOWN"]).optional(), videoSelfieFileNotEmpty: z.enum(["NOT_EMPTY", "EMPTY", "UNKNOWN"]).optional(), videoWidth: z.number().int().optional(), videoHeight: z.number().int().optional(), videoBitRate: z.number().int().optional(), videoDuration: z.number().optional(), videoQuality: z.boolean().optional(), speechTranscript: z.string().optional(), speechTranscriptWhisper: z.string().optional(), processSpeechResultWhisper: z.boolean().optional(), processSpeechResult: z.boolean().optional(), processSpeechResultGoogleLLM: z.boolean().optional(), sessionRecordingRefs: z.record(z.string(), imageAttempt).optional(), additionalDocumentAttempts: z.array(z.union([asylumSeekerDocumentAttempt, bankCheckDocumentAttempt, bankStatementDocumentAttempt, carInvoiceDocumentAttempt, circulationCardDocumentAttempt, colombianBirthCertificateDocumentAttempt, curpDocumentAttempt, financeSettlementDocumentAttempt, genericDocumentAttempt, ineMexDocumentAttempt, letterOfAuthorizationDocumentAttempt, mexicanTaxDeclarationDocumentAttempt, mexicanTaxStatusDocumentAttempt, poaDocumentAttempt, refugeeIdDocumentAttempt, refugeeStatusDocumentAttempt, rfcDocumentAttempt, unknownDocumentAttempt, v5CLogbookDocumentAttempt])).optional(), poaName: z.string().optional(), proofOfAddress: z.string().optional(), proofOfAddressScore: z.number().optional(), addressStatementTimestamp: z.number().int().optional(), addressStatementTimestamps: z.array(addressStatementDate).optional(), documentType: z.enum(["a1", "aggm", "apg", "energieAg", "cre", "aforeAzteca", "amd", "amicsa", "att", "axtel", "bancoppel", "bancoAzteca", "banorte", "bbva", "cab", "caev", "capa", "cea", "cfe", "citibanamex", "cmapa", "cmapaGrande", "cmapas", "cmas", "cmasBlue", "comapa", "comapaRed", "coppel", "dapa", "dhc", "drenaje", "ecogas", "engie", "gasNatural", "h", "hsbc", "inbursa", "infonavit", "interapas", "isagas", "izzi", "jad", "japam", "japama", "japami", "japay", "jiapaz", "jmas", "jras", "jumapac", "jumapam", "lerdo", "liverpool", "mas", "megacable", "naturgy", "oapas", "odapas", "ooapas", "opdm", "oroapa", "sacmex", "sacmexCdmx", "santander", "sapa", "sapal", "sapamuy", "sapasa", "sapasma", "scotiabank", "seapal", "siapa", "simapag", "simapas", "simas", "smapa", "smapac", "smapam", "smapas", "spectrum", "stori", "sura", "tam", "telcel", "telmex", "totalplay", "veolia", "victoria", "wizz", "asylumSeeker", "refugeeId", "refugeeStatus", "ute", "telkom", "tmobile", "verizon", "xfinity", "aforeCoppel", "americanExpress", "ap", "telnor", "wellsFargo", "otherPoa"]).optional(), poaFields: addressBean.optional(), poaSuccessfullyClassified: z.boolean().optional(), fullAddress: z.boolean().optional(), checkedAddress: z.string().optional(), checkedAddressBean: addressBean.optional(), classifier: z.literal("INCODE").optional(), bankLoginSuccess: z.boolean().optional(), governmentRecognitionConfidence: z.number().optional(), governmentRecognitionConfidence2: z.number().optional(), governmentFingerprintConfidence: governmentFingerprintsBean.optional(), governmentValidationStatus: z.enum(["PROCESSING", "PROCESSING_DATA", "PROCESSING_FACE", "PROCESSING_INE", "OK", "VALIDATION_ERROR", "INE_CONNECTION_ERROR", "INE_INFRASTRUCTURE_ERROR", "MODULE_NOT_SUPPORTED", "MISSING_DOCUMENT_ID", "MISSING_SELFIE", "USER_NOT_FOUND", "USER_NOT_FOUND_IN_INE_DB", "NOT_ENOUGH_DATA", "LIVENESS_FAIL", "INE_NOT_CURRENT", "INE_REPORTED_LOST", "INE_REPORTED_STOLEN", "INE_SIGNATURE_ERROR", "INE_NOT_VALID", "CPF_NUMBER_INVALID_OR_MISSING", "CONNECTION_ERROR", "INFRASTRUCTURE_ERROR", "PROVIDER_NOT_CONFIGURED", "DOCUMENT_TYPE_NOT_SUPPORTED", "PROVIDER_UNAVAILABLE", "COUNTRY_NOT_SUPPORTED", "STATE_NOT_SUPPORTED", "PROVISIONING_NOT_EXECUTED", "COUNTRY_SETTINGS_NOT_CONFIGURED", "EMPTY_INTERFACE_PROVIDER", "SELFIE_CHECKS_FAILED", "NO_INFORMATION", "TRANSACTION_LIMIT_REACHED", "USER_IN_RISK_WATCHLIST", "FACE_COMPARISON_FAILED", "INVALID_EXPIRATION_DATE", "DOCUMENT_NUMBER_MISMATCH", "USER_DENIED", "SESSION_EXPIRED", "MISSING_FINGERPRINTS"]).optional(), governmentRecognitionThreshold: z.number().optional(), registralSituation: registralSituation.optional(), curpCecobanValidation: curpCecobanValidation.optional(), ineTransactionId: z.string().optional(), existingUser: z.boolean().optional(), nameMatched: z.boolean().optional(), existingInterviewId: z.string().optional(), existingExternalId: z.string().optional(), customerId: z.string().optional(), parentCustomerId: z.string().optional(), incodeIdCustomer: z.string().optional(), faceAuthCustomerId: z.string().optional(), incodeIdConsentGiven: z.boolean().optional(), onlyFront: z.boolean().optional(), onlyBack: z.boolean().optional(), forceBackForDob: z.boolean().optional(), hasNfcChip: z.boolean().optional(), barcodeCapture: z.boolean().optional(), usSmartCapture: z.boolean().optional(), alignment: z.boolean().optional(), frontAlignment: z.boolean().optional(), frontAlignmentForced: z.boolean().optional(), backAlignmentForced: z.boolean().optional(), alreadyApprovedCustomerConfidence: z.number().optional(), punchedHolesConfidence: z.number().optional(), fakeIdInternalConfidence: z.number().optional(), mandatoryConsentGiven: z.boolean().optional(), frontDocumentIsOnTheEdge: z.boolean().optional(), backDocumentIsOnTheEdge: z.boolean().optional(), backAlignment: z.boolean().optional(), surveyData: z.string().optional(), frontIdAttempts: z.number().int().optional(), backIdAttempts: z.number().int().optional(), selfieAttempts: z.number().int().optional(), authenticationAttempts: z.number().int().optional(), onboardingAttempts: z.number().int().optional(), failedAttemptsCounter: z.record(z.string(), z.number().int()).optional(), idValidationFinished: z.boolean().optional(), faceValidationFinished: z.boolean().optional(), idFaceExtractionSkipped: z.boolean().optional(), faceMatchingType: z.enum(["selfieVsId", "selfieVsNfc", "idVsNfc", "nfc3Way"]).optional(), partialOnboarding: z.boolean().optional(), frontCaptureRedacted: z.boolean().optional(), backCaptureRedacted: z.boolean().optional(), callbackUrl: z.string().optional(), governmentValidationFinished: z.boolean().optional(), conferenceStatus: z.enum(["NO_CONFERENCE", "APPROVED", "REJECTED", "ABANDONED", "NEEDS_REVIEW", "REJECTED_BY_RISK", "COMPLETED"]).optional(), termsAccepted: z.boolean().optional(), creditBureauConsentGiven: z.boolean().optional(), applicantDataConfirmed: z.boolean().optional(), configurationId: z.string().optional(), configurationName: z.string().optional(), configurationVersion: z.number().int().optional(), flowType: z.enum(["configuration", "flow", "workflow"]).optional(), workflowContext: workflowContext.optional(), queueName: z.string().optional(), gdcAddressScore: z.enum(["FullMatch", "PartialMatch", "NoMatch"]).optional(), gdcIdentityScore: z.enum(["FullMatch", "PartialMatch", "NoMatch"]).optional(), subscribedToWatchlistUpdates: z.boolean().optional(), onboardingStatus: z.enum(["UNKNOWN", "ID_VALIDATION_FINISHED", "POST_PROCESSING_FINISHED", "FACE_VALIDATION_FINISHED", "GOVERNMENT_VALIDATION_FINISHED", "EKYC_VALIDATION_FINISHED", "ONBOARDING_FINISHED", "MANUAL_REVIEW_APPROVED", "MANUAL_REVIEW_REJECTED", "MANUAL_REVIEW_PENDING", "EXPIRED", "DELETED", "QES_FINISHED"]).optional(), deletedWithMode: z.enum(["BIOMETRICS", "PII", "FULL"]).optional(), retentionRegion: retentionRegion.optional(), onboardingCompleteTimestamp: z.number().int().optional(), sessionExpiredAt: z.number().int().optional(), loginHint: z.string().optional(), authUuid: z.string().optional(), integrationReference: z.string().optional(), validationArchiveRef: z.string().optional(), validationArchiveNom151: z.string().optional(), selfieRef: z.string().optional(), selfieRefs: z.array(imageAttempt).optional(), sorSelfieRef: z.string().optional(), videoSelfieRef: z.string().optional(), documentRef: z.string().optional(), documentRefs: z.array(imageAttempt).optional(), signatureRef: z.string().optional(), initialsRef: z.string().optional(), secondIdRef: z.string().optional(), thirdIdRef: z.string().optional(), medicalDocImgRef: z.string().optional(), videoSelfieCompareIDRef: z.string().optional(), videoSelfieCompareOcrRef: z.string().optional(), videoSelfieCompareBackIDRef: z.string().optional(), videoSelfieCompareBackOcrRef: z.string().optional(), otherDocument1Ref: z.string().optional(), otherDocument2Ref: z.string().optional(), otherDocument3Ref: z.string().optional(), paymentProofRef: z.string().optional(), consentRef: z.string().optional(), renaperCroppedRef: z.string().optional(), signatureRefs: z.array(signatureAttempt).optional(), initialsRefs: z.array(signatureAttempt).optional(), contractRefs: z.array(z.string()).optional(), signedContractRefs: z.array(z.string()).optional(), governmentValidationProvider: z.enum(["QUERTIUM", "RENAPER", "RENAPER_PREMIUM", "METAMAP_RENAPER", "MM_ARGENTINA_RENAPER_EXTENDED", "METAMAP_RENAPER_PREMIUM", "MM_RENAPER", "NATIONALCRIMECHECK", "SERPRO", "SERPRO_FACE", "UNICO", "SINACOFI", "INCODE_SCRAPER_CHL", "TUSDATOS", "BECOME_DIGITAL", "GSE", "OPERATOR_BTC", "OLIMPIA", "OLIMPIA_TUSDATOS", "AUTHBRIDGE", "AUTHBRIDGE_FACE", "WITHTRUSTLINK", "INE", "INE_CECOBAN", "INE_TELCEL", "INE_FIMPE", "INE_HSBC", "INCODE_SCRAPER_MEX", "INCODE_SCRAPER_ASYNC_MEX", "MEX_PASSPORT_PILOT", "TOC", "PE_MIGRATION_INSTITUTE", "VERIFYID", "AAMVA", "PA_DLDV", "NY_VERIFIABLE_CREDENTIAL", "CA_DMV", "CA_MDL", "FL_GOVALIDATE", "FL_GOVALIDATE_PROD", "GA_DDS", "GA_DDS_THIRD_PARTIES", "VA_DMV", "WI_CIS", "MD_MVA_INTERNAL", "INCODE_DMV_INTERNAL_DEMO_ONLY", "INCODE_SCRAPER_PHILIPPINES_PHILSYS", "FRANKIE_ONE", "METAMAP_GUATEMALA_TSE", "METAMAP_COSTA_RICA_CCSS", "CR_TSE", "METAMAP_COLOMBIA_BDUA", "METAMAP_COLOMBIA_NIT", "CO_PPT", "METAMAP_DOMINICAN_RNC", "METAMAP_DOMINICAN_JCE", "METAMAP_PHILIPPINES_UMID_SSN", "CHILE_RUT", "AZ_IDEMIA", "DE_IDEMIA", "MS_IDEMIA", "MONO_BVN", "MONO_NIN", "BO_OEP", "SHRINQ_AVE", "PA_TSE"]).optional(), governmentValidationShadowMode: z.boolean().optional(), governmentValid: z.boolean().optional(), governmentValidationResponse: z.record(z.string(), z.object({})).optional(), governmentValidationRequest: z.record(z.string(), z.object({})).optional(), paternalLastNameValid: z.boolean().optional(), maternalLastNameValid: z.boolean().optional(), firstNameValid: z.boolean().optional(), middleNameValid: z.boolean().optional(), suffixNameValid: z.boolean().optional(), curpValid: z.boolean().optional(), ineCurpValid: z.boolean().optional(), curpValidationResponse: curpResponse.optional(), curpDataMatch: z.boolean().optional(), renapoCurp: z.string().optional(), ineScrapingValid: z.boolean().optional(), ineValidationResponse: ineResult.optional(), fiscalQrUrlResponse: addFiscalQrUrlResponse.optional(), ocrValid: z.boolean().optional(), claveDeElectorValid: z.boolean().optional(), numeroEmisionCredencialValid: z.boolean().optional(), registrationDateValid: z.boolean().optional(), issueDateValid: z.boolean().optional(), birthDateValid: z.boolean().optional(), documentNumberValid: z.boolean().optional(), sexValid: z.boolean().optional(), heightValid: z.boolean().optional(), weightValid: z.boolean().optional(), eyeColorValid: z.boolean().optional(), addressValid: z.boolean().optional(), addressLine2Valid: z.boolean().optional(), cityValid: z.boolean().optional(), stateCodeValid: z.boolean().optional(), zipCodeValid: z.boolean().optional(), genderValid: z.boolean().optional(), personalNumberValid: z.boolean().optional(), placeOfBirthValid: z.boolean().optional(), expirationDateValid: z.boolean().optional(), totalScore: z.number().optional(), livenessScore: z.number().optional(), faceRecognitionScore: z.number().optional(), incodeIdValidationScore: z.number().optional(), idOcrValidationScore: z.number().optional(), governmentScore: z.number().optional(), videoConferenceScore: z.number().optional(), totalScoreStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), livenessScoreStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), faceRecognitionScoreStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), incodeIdValidationScoreStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), idOcrValidationScoreStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), governmentScoreStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), videoConferenceStatus: z.enum(["OK", "WARN", "FAIL", "UNKNOWN", "MANUAL", "MANUAL_OK", "MANUAL_FAIL", "MANUAL_PENDING"]).optional(), customWatchlistModuleEnabled: z.boolean().optional(), incodeWatchlistScore: z.number().optional(), watchlistDataMatches: z.array(z.string()).optional(), incodeWatchlistId: z.string().optional(), externalVerificationRequest: externalVerificationRequest.optional(), premiumExternalVerification: premiumExternalVerification.optional(), externalVerificationThirdPartyRequest: z.record(z.string(), z.object({})).optional(), externalVerificationThirdPartyResponse: z.record(z.string(), z.object({})).optional(), businessVerificationRequest: businessVerificationRequest.optional(), businessVerification: businessVerificationResult.optional(), bavHolders: z.array(bavHolder).optional(), bavLinkId: z.string().optional(), bavNumberOfRetries: z.number().int().optional(), rfc: z.string().optional(), rfcValidationResponse: rfcValidationResponse.optional(), federalRevenueNumber: z.string().optional(), mothersName: z.string().optional(), mothersIdNumber: z.string().optional(), originDocumentId: z.string().optional(), fathersName: z.string().optional(), fathersIdNumber: z.string().optional(), spouseName: z.string().optional(), driversLicenseCategory: z.string().optional(), controlNumber: z.string().optional(), renach: z.string().optional(), eyeColor: z.string().optional(), classes: z.string().optional(), cond: z.string().optional(), mentions: z.string().optional(), refNumber: z.string().optional(), restrictions: z.string().optional(), weight: z.string().optional(), hairColor: z.string().optional(), nationality: z.string().optional(), nationalityMrz: z.string().optional(), nationalityAlpha3: z.string().optional(), jurisdictionCode: z.string().optional(), medicalOcrData: z.array(keyValue).optional(), interviewRejected: z.boolean().optional(), approvalSource: z.enum(["AUTOAPPROVE", "CONFERENCE", "MANUAL"]).optional(), manualReviewStatus: z.enum(["UNSET", "REQUIRED", "APPROVED", "REJECTED", "PENDING"]).optional(), manualReviewReasons: z.array(z.string()).optional(), manualReviewComment: z.string().optional(), faceLenses: z.boolean().optional(), hasFaceClosedEyes: z.boolean().optional(), hasFaceHeadCover: z.boolean().optional(), hasFaceMask: z.boolean().optional(), faceIsBright: z.boolean().optional(), faceAge: z.number().int().optional(), hasVideoSelfieLenses: z.boolean().optional(), hasVideoSelfieClosedEyes: z.boolean().optional(), hasVideoSelfieHeadCover: z.boolean().optional(), hasVideoSelfieMask: z.boolean().optional(), digitalAttack: z.boolean().optional(), digitalAttackSeverity: z.enum(["ultra low", "low", "medium", "high", "llava"]).optional(), digitalAttackVersion: z.string().optional(), evasionAttack: z.boolean().optional(), evasionAttackSeverity: z.enum(["ultra low", "low", "medium", "high", "llava"]).optional(), evasionAttackVersion: z.string().optional(), spoofDetectionResult: spoofDetectionResult.optional(), faceCaptureAttemptId: z.string().optional(), faceCaptureRecordingAttemptId: z.string().optional(), videoSelfieCaptureAttemptId: z.string().optional(), authenticationAttemptId: z.string().optional(), onboardingAttemptId: z.string().optional(), frontIdCaptureMetadata: captureMetadata.optional(), backIdCaptureMetadata: captureMetadata.optional(), ocrDataConfidence: ocrDataConfidence.optional(), userConsentTitle: z.string().optional(), userConsentText: z.string().optional(), userConsentStatus: z.boolean().optional(), mlConsentStatus: z.boolean().optional(), signedConsents: z.array(signedConsent).optional(), frontIdCaptureType: z.enum(["AUTO", "MANUAL", "NATIVE", "UPLOAD"]).optional(), backIdCaptureType: z.enum(["AUTO", "MANUAL", "NATIVE", "UPLOAD"]).optional(), selfieCaptureType: z.enum(["AUTO", "MANUAL", "NATIVE", "UPLOAD"]).optional(), omniVersion: z.string().optional(), clientId: z.string().optional(), scoresInfoId: z.string().optional(), shadowScoresInfoId: z.string().optional(), idAlreadyUsed: z.boolean().optional(), idAlreadyUsedInterviewId: z.string().optional(), appliedTotalRule: flowRule.optional(), needsReviewReason: z.enum(["MANUAL_CAPTURE", "RULE_APPLIED", "OLD_ID", "FLOW_CONFIGURATION", "FRONT_ID_CAPTURE_ATTEMPTS", "BACK_ID_CAPTURE_ATTEMPTS", "SELFIE_CAPTURE_ATTEMPTS", "ANTIFRAUD", "MISSING_DEPTH_DATA"]).optional(), documentSubmissionMethod: z.enum(["CAPTURED_DOCUMENT", "UPLOADED_FILE", "IMPORTED_CREDENTIAL"]).optional(), credentialsProvider: z.enum(["APPLE", "GOOGLE", "DIGILOCKER", "SAMSUNG"]).optional(), formName: z.string().optional(), formFirstName: z.string().optional(), formLastName: z.string().optional(), formCpf: z.string().optional(), documentNumberSource: z.enum(["FORM", "OCR"]).optional(), antifraudResult: antifraudResult.optional(), scannerSignals: scannerSignals.optional(), elUnsignedDocuments: z.array(eUnsignedDocument).optional(), elSignedDocuments: z.array(eSignedDocument).optional(), elSignedSignerKeyName: z.string().optional(), otpPhoneVerified: z.boolean().optional(), otpEmailVerified: z.boolean().optional(), tamperedSeverity: z.enum(["low", "medium", "high"]).optional(), paperSeverity: z.enum(["low", "medium", "high"]).optional(), screenSeverity: z.enum(["low", "medium", "high"]).optional(), idAlterationModelVersion: z.string().optional(), idAlterationSeverity: z.enum(["low", "medium", "high"]).optional(), fontAlterationConfidence: z.number().optional(), fontAlterationModelVersion: z.string().optional(), fontAlterationSeverity: z.enum(["low", "medium", "high"]).optional(), punchedHolesModelVersion: z.string().optional(), punchedHolesSeverity: z.enum(["low", "medium", "high"]).optional(), idLaminationModelVersion: z.string().optional(), idLaminationSeverity: z.enum(["low", "medium", "high"]).optional(), idLaminationConfidence: z.number().optional(), idDamageDetectionModelVersion: z.string().optional(), idDamageDetectionSeverity: z.enum(["low", "medium", "high"]).optional(), idDamageDetectionConfidence: z.number().optional(), aiGeneratedDocumentSeverity: z.enum(["low", "medium", "high"]).optional(), aiGeneratedDocumentModelVersion: z.string().optional(), aiGeneratedDocumentConfidence: z.number().optional(), fakeIdSeverity: z.enum(["low", "medium", "high"]).optional(), fakeIdModelVersion: z.string().optional(), fakeIdInternalSeverity: z.enum(["low", "medium", "high"]).optional(), fakeIdInternalModelVersion: z.string().optional(), batchId: z.string().optional(), tamperedConfidenceCorrected: z.number().optional(), fakeIdConfidenceCorrected: z.number().optional(), paperConfidenceCorrected: z.number().optional(), screenConfidenceCorrected: z.number().optional(), faceSpoofCorrected: z.boolean().optional(), faceMismatchCorrected: z.boolean().optional(), labelingComplete: z.boolean().optional(), personalIdentificationNumberProvider: z.enum(["UNKNOWN", "FIMPE_CURP", "CECOBAN_CURP", "INCODE_CURP_SCRAPPER", "INCODE_CURP_MANUAL"]).optional(), ineReferenceId: z.string().optional(), isReportedAsFraud: z.boolean().optional(), fraudCandidateId: z.string().optional(), fraudCandidateIdAfl: z.string().optional(), cleanedExceptAuthData: z.boolean().optional(), isPartOfExperimentGroup: z.boolean().optional(), featureGates: z.record(z.string(), z.boolean()).optional(), userProvidedName: z.string().optional(), userProvidedBirthDate: z.string().optional(), paperFrontConfidence: z.number().optional(), paperFrontModelVersion: z.string().optional(), screenFrontConfidence: z.number().optional(), screenFrontModelVersion: z.string().optional(), paperBackConfidence: z.number().optional(), paperBackModelVersion: z.string().optional(), screenBackConfidence: z.number().optional(), screenBackModelVersion: z.string().optional(), paperFrontConfidenceCorrected: z.number().optional(), screenFrontConfidenceCorrected: z.number().optional(), paperBackConfidenceCorrected: z.number().optional(), screenBackConfidenceCorrected: z.number().optional(), idAlterationFrontConfidence: z.number().optional(), idAlterationBackConfidence: z.number().optional(), frontPunchedHoles: punchedHoles.optional(), backPunchedHoles: punchedHoles.optional(), faceBrightness: z.number().optional(), dlClassRestrictions: z.array(dLClassRestriction).optional(), acuantId: z.string().optional(), mAdminArea: z.string().optional(), mSubAdminArea: z.string().optional(), mLocality: z.string().optional(), mSubLocality: z.string().optional(), mThoroughfare: z.string().optional(), mSubThoroughfare: z.string().optional(), mPostalCode: z.string().optional(), mCountryCode: z.string().optional(), mCountryName: z.string().optional(), gWatchlistType: z.enum(["person", "company"]).optional(), gWatchlistShareUrl: z.string().optional(), gWatchlistMatchStatus: z.enum(["no_match", "false_positive", "potential_match", "true_positive", "unknown", "true_positive_approve", "true_positive_reject"]).optional(), gWatchlistRiskLevel: z.enum(["low", "medium", "high", "unknown"]).optional(), gWatchlistTotalHits: z.number().int().optional(), gWatchlistTotalMatches: z.number().int().optional(), gWatchlistSanctionsMatchScore: z.number().optional(), gWatchlistWarningMatchScore: z.number().optional()}); export const getApiOmniIdentityCustomerIdSessionsResponse = z.array(interview); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Fetch all passed onboardings for the same person * * GET /omni/identity/{customerId}/sessions */ export const getApiOmniIdentityCustomerIdSessions = async (args: GetApiOmniIdentityCustomerIdSessionsArgs, options?: GetApiOmniIdentityCustomerIdSessionsOptions) => { const {baseUrl = "https://demo-api.incodesmile.com", fetch: fetchFn = fetch, ApiKeyAuth, IncodeHardwareIdAuth} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('accept', "application/json") if (args['api-version'] != null) headers.set("api-version", String(args['api-version'])) if (ApiKeyAuth !== undefined) headers.set("x-api-key", ApiKeyAuth) if (IncodeHardwareIdAuth !== undefined) headers.set("X-Incode-Hardware-Id", IncodeHardwareIdAuth) const url = `${baseUrl.replace(/\/+$/, '')}/omni/identity/${encodeURIComponent(String(args.customerId))}/sessions${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "GET", headers}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(getApiOmniIdentityCustomerIdSessionsResponse, await res.json()) };