@taxbit/react-sdk 2.0.0-beta.3 → 2.1.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +14 -1
  2. package/dist/src/components/Row/Row.d.ts +3 -2
  3. package/dist/src/contexts/QuestionnaireStep/getLocal.d.ts +14 -11
  4. package/dist/src/contexts/QuestionnaireStep/useQuestionnaireStep.d.ts +16 -10
  5. package/dist/src/contexts/QuestionnaireStep/useQuestionnaireStepContext.d.ts +32 -20
  6. package/dist/src/contexts/TaxDocumentation/TaxbitQuestionnaireProvider.d.ts +1 -1
  7. package/dist/src/contexts/TaxDocumentation/useTaxDocumentation.d.ts +23 -15
  8. package/dist/src/contexts/TaxDocumentation/useTaxDocumentationContext.d.ts +40 -30
  9. package/dist/src/hooks/index.d.ts +1 -0
  10. package/dist/src/hooks/useUsTinVerification/index.d.ts +1 -0
  11. package/dist/src/hooks/useUsTinVerification/useUsTinValidation.d.ts +21 -0
  12. package/dist/src/i18n/json/en.json.d.ts +14 -2
  13. package/dist/src/i18n/json/es.json.d.ts +14 -2
  14. package/dist/src/i18n/json/fr.json.d.ts +14 -2
  15. package/dist/src/i18n/types/LocalizationKey.d.ts +5 -4
  16. package/dist/src/i18n/types/PropertyFile.d.ts +4 -1
  17. package/dist/src/i18n/utils/getText.d.ts +1 -0
  18. package/dist/src/services/api.d.ts +4 -0
  19. package/dist/src/services/msw.d.ts +16 -0
  20. package/dist/src/svg/Spinner.d.ts +6 -0
  21. package/dist/src/svg/index.d.ts +1 -0
  22. package/dist/src/types/InputStep.d.ts +1 -1
  23. package/dist/src/types/StepId.d.ts +1 -1
  24. package/dist/src/types/TaxDocumentation.d.ts +4 -0
  25. package/dist/src/types/index.d.ts +1 -1
  26. package/dist/src/ui/Actions/Actions.d.ts +4 -4
  27. package/dist/src/ui/FormattedInput/FormattedInput.d.ts +1 -2
  28. package/dist/src/utils/getFieldsState.d.ts +10 -1
  29. package/dist/src/utils/transformInbound/getCountryCode.d.ts +1 -1
  30. package/dist/src/utils/transformInbound/transformInbound.d.ts +6 -1
  31. package/dist/src/utils/transformInbound/transformInboundControllingPersons.d.ts +4 -0
  32. package/dist/src/validations/getSteps.d.ts +2 -1
  33. package/dist/src/validations/invalidFields/getInvalidFields.d.ts +7 -1
  34. package/dist/src/validations/invalidFields/invalidFieldRules.d.ts +7 -1
  35. package/dist/src/validations/requiredFields/getRequiredFields.d.ts +6 -1
  36. package/dist/src/validations/supportedFields/getSupportedFields.d.ts +6 -1
  37. package/dist/src/validations/visibleFields/getVisibleFields.d.ts +8 -1
  38. package/dist/src/widgets/TaxbitQuestionnaire/TaxbitQuestionnaire.d.ts +2 -1
  39. package/dist/src/widgets/TaxbitQuestionnairePersist/TaxbitQuestionnairePersist.d.ts +1 -1
  40. package/dist/src/wizard/RowInput/ShowHideInputRow/ShowHideInputRow.d.ts +2 -2
  41. package/dist/src/wizard/RowInput/VisibleRow/VisibleRow.d.ts +3 -2
  42. package/dist/src/wizard/TaxbitQuestionnaireUI/AccountHolderUsTinValidation/AccountHolderUsTinValidation.d.ts +3 -0
  43. package/dist/src/wizard/TaxbitQuestionnaireUI/AccountHolderUsTinValidation/index.d.ts +1 -0
  44. package/dist/src/wizard/TaxbitQuestionnaireUI/RegardedOwnerUsTinValidation/RegardedOwnerUsTinValidation.d.ts +3 -0
  45. package/dist/src/wizard/TaxbitQuestionnaireUI/RegardedOwnerUsTinValidation/index.d.ts +1 -0
  46. package/dist/src/wizard/TaxbitQuestionnaireUI/TaxbitQuestionnaireUI.d.ts +1 -1
  47. package/dist/src/wizard/TaxbitQuestionnaireUI/__tests__/TaxbitQuestionnaireUI.RTT.test.d.ts +1 -0
  48. package/dist/src/wizard/TaxbitQuestionnaireUI/steps.d.ts +2 -0
  49. package/dist/taxbit-react-sdk.js +6113 -5588
  50. package/dist/taxbit-react-sdk.umd.cjs +1 -1
  51. package/package.json +1 -1
  52. package/style/basic.css +19 -4
  53. package/style/inline.css +19 -4
  54. package/style/minimal.css +10 -0
  55. /package/dist/src/wizard/TaxbitQuestionnaireUI/__tests__/{TaxbitDPSQuestionnaireUI.test.d.ts → TaxbitQuestionnaireUI.DPS.test.d.ts} +0 -0
@@ -1,10 +1,11 @@
1
1
  export type ButtonKey = 'edit' | 'back' | 'next' | 'reset' | 'submit' | 'cancel' | 'hide' | 'show';
2
- export type ErrorKey = 'countryMustBeAResidenceCountry' | 'formHasErrors' | 'invalid' | 'invalidDate' | 'invalidVat' | 'mustBeFiveOrNineDigits' | 'mustBeInDateFormat' | 'mustBeNineDigits' | 'mustBeNinoFormat' | 'mustBeCaPostalCodeFormat' | 'mustBeInVatinFormat' | 'mustBeValidBirthDate' | 'mustBeAtLeast18' | 'mustMatchName' | 'mustNotMatchVatin' | 'required' | 'residencesMustIncludeAddressCountry' | 'residencesMustIncludeAnEUCountry' | 'residencesMustIncludeVatCountry' | 'tooLong' | 'tooShort' | 'vatinMustNotMatchResidencyTin';
2
+ export type BadgeKey = 'validTin' | 'invalidTin' | 'pendingTin';
3
+ export type ErrorKey = 'countryMustBeAResidenceCountry' | 'formHasErrors' | 'invalid' | 'invalidDate' | 'invalidVat' | 'mustBeFiveOrNineDigits' | 'mustBeInDateFormat' | 'mustBeNineDigits' | 'mustBeNinoFormat' | 'mustBeCaPostalCodeFormat' | 'mustBeInVatinFormat' | 'mustBeValidBirthDate' | 'mustBeAtLeast18' | 'mustMatchName' | 'mustNotMatchVatin' | 'required' | 'residencesMustIncludeAddressCountry' | 'residencesMustIncludeAnEUCountry' | 'residencesMustIncludeVatCountry' | 'tooLong' | 'tooShort' | 'usTinDoesNotMatchName' | 'vatinMustNotMatchResidencyTin';
3
4
  export type SubOptionKey = 'accountHolderUsAccountType_SOLE_PROPRIETOR' | 'accountHolderUsAccountType_SM_LLC' | 'accountHolderUsAccountType_DISREGARDED_ENTITY' | 'accountHolderActiveNonFinancialEntityType_OTHER' | 'accountHolderActiveNonFinancialEntityType_PUBLIC_CORPORATION' | 'accountHolderSelfCertificationAccountType_FINANCIAL_INSTITUTION' | 'accountHolderSelfCertificationAccountType_ACTIVE_NON_FINANCIAL_ENTITY' | 'accountHolderSelfCertificationAccountType_PASSIVE_NON_FINANCIAL_ENTITY' | 'accountHolderAccountOwnerType_ENTITY' | 'accountHolderAccountOwnerType_INTERMEDIARY' | 'regardedOwnerAccountOwnerType_ENTITY' | 'regardedOwnerAccountOwnerType_INTERMEDIARY';
4
5
  export type OptionKey = TreatyClaimOption | 'accountHolderUsPerson_yes' | 'accountHolderUsPerson_no' | 'usTrustEstateEin_yes' | 'usTrustEstateEin_no' | 'usSoleProprietorEin_yes' | 'usSoleProprietorEin_no' | 'regardedOwnerUsPerson_yes' | 'regardedOwnerUsPerson_no' | 'smllcOwnerUsPerson_yes' | 'smllcOwnerUsPerson_no' | 'smllcElection_yes' | 'smllcElection_no' | 'isIndividual_yes' | 'isIndividual_no' | 'investmentEntityManaged_yes' | 'investmentEntityManaged_no' | 'assumesChapters3And4Responsibility_yes' | 'assumesChapters3And4Responsibility_no' | 'assumes1099Responsibility_yes' | 'assumes1099Responsibility_no' | 'usPersonElection_yes' | 'usPersonElection_no' | 'providesAdditionalDocumentation_yes' | 'providesAdditionalDocumentation_no' | 'no' | 'yes' | 'no_not_applicable' | 'ACTIVE_NON_FINANCIAL_ENTITY' | 'CENTRAL_BANK_OF_ISSUE' | 'COMPLEX_TRUST' | 'CORPORATION' | 'CUSTODIAL_INSTITUTION' | 'C_CORPORATION' | 'DEPOSITORY_INSTITUTION' | 'DISREGARDED_ENTITY' | 'ENTITY' | 'entityType_TRUST' | 'entityType_SIMILAR_TO_TRUST' | 'entityType_OTHER' | 'ESTATE' | 'FINANCIAL_INSTITUTION' | 'FOREIGN_GOVERNMENT_CONTROLLED_ENTITY' | 'FOREIGN_GOVERNMENT_INTEGRAL_PART' | 'accountHolderActiveNonFinancialEntityType_GOVERNMENT_ENTITY' | 'GRANTOR_TRUST' | 'INDIVIDUAL' | 'INTERMEDIARY' | 'QUALIFIED_INTERMEDIARY' | 'NONQUALIFIED_INTERMEDIARY' | 'TERRITORY_FINANCIAL_INSTITUTION' | 'US_BRANCH' | 'WITHHOLDING_FOREIGN_PARTNERSHIP' | 'WITHHOLDING_FOREIGN_TRUST' | 'NONWITHHOLDING_FOREIGN_PARTNERSHIP' | 'NONWITHHOLDING_FOREIGN_SIMPLE_TRUST' | 'NONWITHHOLDING_FOREIGN_GRANTOR_TRUST' | 'accountHolderActiveNonFinancialEntityType_INTERNATIONAL_ORGANIZATION' | 'INTERNATIONAL_ORGANIZATION' | 'INVESTMENT_ENTITY' | 'INSURANCE_COMPANY' | 'LLC' | 'OTHER' | 'accountHolderActiveNonFinancialEntityType_OTHER' | 'PARTNERSHIP' | 'PASSIVE_NON_FINANCIAL_ENTITY' | 'PRIVATE_FOUNDATION' | 'accountHolderActiveNonFinancialEntityType_PUBLIC_CORPORATION' | 'signatureCapacity_EXECUTOR' | 'signatureCapacity_OFFICER' | 'signatureCapacity_OTHER_CAPACITY' | 'SIMPLE_TRUST' | 'SM_LLC' | 'SOLE_PROPRIETOR' | 'S_CORPORATION' | 'TAX_EXEMPT_ORGANIZATION' | 'TRUST' | 'TRUST_ESTATE' | 'controllingPersonRole_SETTLOR' | 'controllingPersonRole_TRUSTEE' | 'controllingPersonRole_PROTECTOR' | 'controllingPersonRole_BENEFICIARY' | 'controllingPersonRole_OTHER' | 'controllingPersonRole_SETTLOR_EQUIVALENT' | 'controllingPersonRole_TRUSTEE_EQUIVALENT' | 'controllingPersonRole_PROTECTOR_EQUIVALENT' | 'controllingPersonRole_BENEFICIARY_EQUIVALENT' | 'controllingPersonRole_OTHER_EQUIVALENT' | 'controllingPersonRole_OWNER' | 'controllingPersonRole_OTHER_MEANS' | 'controllingPersonRole_SENIOR_MANAGING_OFFICIAL' | 'missingTinNotRequiredReason_NOT_ISSUED' | 'missingTinNotRequiredReason_NOT_REQUIRED' | 'missingTinNotRequiredReason_OTHER';
5
- export type PromptKey = TreatyClaimPrompt | 'accountHolderAccountOwnerType' | 'accountHolderIntermediaryAccountType' | 'accountHolderEntityAccountType' | 'activeNonFinancialEntityType' | 'addAdditionalResidence' | 'addControllingPerson' | 'address' | 'businessRegistrationNumber' | 'businessRegistrationCountry' | 'city' | 'cityOfBirth' | 'country' | 'countryOfBirth' | 'dateOfBirth' | 'day' | 'dbaName' | 'exemptPayeeCode' | 'exemptFatcaCode' | 'financialAccountIdentifier' | 'financialAccountName' | 'foreignAccountType' | 'financialInstitutionType' | 'foreignTin' | 'foreignTinIsNotRequired' | 'investmentEntityManaged' | 'isIndividual' | 'iAcknowledgeESignIsOk' | 'iWillResubmitIfIncorrect' | 'iAmACitizenOfTheUs' | 'iAmExemptFromFatcaReporting' | 'iAmNotSubjectToBackupWithholding' | 'iAuthorizeWithholdingAgent' | 'iCertifyToAll' | 'iConfirmIncomeIsNonUs' | 'iConfirmTheBeneficialOwnerIsExempt' | 'iConfirmTheInformationIsCorrectComplete' | 'iConfirmTheEntityIsNotAUsPerson' | 'iConfirmTheEntityIsTheBeneficialOwner' | 'iConfirmTheIndividualIsNotAUsPerson' | 'iConfirmTheIndividualIsTheBeneficialOwner' | 'iConfirmTheIndividualIsResidentOfTreatyCountry' | 'iConfirmTheTaxIdIsCorrect' | 'iHaveCapacityToSignForEntity' | 'iHaveCapacityToSignForIndividual' | 'iDeclareStatementsAreCorrect' | 'iUnderstandTheInformationIsCovered' | 'iAcknowledgeTheInformationMayBeProvided' | 'iCertifyIAmAccountHolder' | 'iCertifyIAmAuthorizedToSignForAccountHolder' | 'iCertifyIWillNotifyPersons' | 'iWillNotifyChangeInCircumstanceForIndividual' | 'iWillNotifyChangeInCircumstanceForAccountHolder' | 'mailingAddress' | 'mailingAddressIsDifferent' | 'month' | 'name' | 'nameOfDisregardedEntity' | 'nameOfEntity' | 'nameOfCCorporation' | 'nameOfCorporation' | 'nameOfIndividual' | 'nameOfIndividualSoleProprietor' | 'nameOfLlc' | 'nameOfOrganization' | 'nameOfPartnership' | 'nameOfSCorporation' | 'nameOfSmllc' | 'nameOfSmllcOwner' | 'nameOfSoleProprietor' | 'nameOfTrustEstate' | 'nameOfComplexTrust' | 'nameOfTaxExemptOrganization' | 'nameOfPrivateFoundation' | 'nameOfInternationalOrganization' | 'nameOfCentralBankOfIssue' | 'nameOfForeignGovernmentControlledEntity' | 'nameOfForeignGovernmentIntegralPart' | 'nameOfEstate' | 'nameOfQualifiedIntermediary' | 'nameOfNonqualifiedIntermediary' | 'nameOfTerritoryFinancialInstitution' | 'nameOfUsBranch' | 'nameOfWithholdingForeignPartnership' | 'nameOfWithholdingForeignTrust' | 'nameOfNonwithholdingForeignPartnership' | 'nameOfNonwithholdingForeignSimpleTrust' | 'nameOfNonwithholdingForeignGrantorTrust' | 'otherRole' | 'otherEquivalentRole' | 'ownershipPercentage' | 'managedEntityType' | 'passiveEntityType' | 'province' | 'referenceNumbers' | 'regardedOwnerUsPerson' | 'regardedOwnerAccountType' | 'regardedOwnerEntityAccountType' | 'regardedOwnerIntermediaryAccountType' | 'relatedCorporation' | 'removeResidence' | 'removeControllingPerson' | 'role' | 'securitiesMarket' | 'signature' | 'signatureCapacity' | 'signatureCapacityOther' | 'smllcElection' | 'smllcOwnerAccountType' | 'smllcOwnerUsPerson' | 'countyRegion' | 'stateProvince' | 'street' | 'street2' | 'taxIdNumber' | 'taxIdNumberIsNotRequired' | 'taxIdNumberIsNotRequiredReason' | 'taxIdNumberIsNotRequiredReasonOther' | 'tin' | 'tinUkCrn' | 'tinUkNino' | 'type' | 'usAccountType' | 'usLlcClassification' | 'usOtherClassification' | 'usPerson' | 'usEin' | 'usSoleProprietorEin' | 'usSsn' | 'usTin' | 'usTrustEstateEin' | 'vatIdentificationNumber' | 'vatIsNotRequired' | 'vatCountry' | 'year' | 'zip' | 'isQiCertified' | 'assumesChapters3And4Responsibility' | 'assumes1099Responsibility' | 'usPersonElection' | 'providesAdditionalDocumentation' | 'assumesChapters3And4ResponsibilityCertified' | 'assumes1099ResponsibilityCertified' | 'notAssume1099ResponsibilityCertified' | 'meetsQiRegulationsRequirementsCertified' | 'obtainsDocumentationCertified' | 'notActingAsQiCertified' | 'transmitsNqiDocumentationCertified' | 'representsWithholdingStatementsCertified' | 'isFinancialInstitutionCertified' | 'tfiUsPersonElectionCertified' | 'transmitsTfiDocumentationCertified' | 'usbPaymentsCertified' | 'usbUsPersonElectionCertified' | 'transmitsUsbDocumentationCertified' | 'isCompliantCertified' | 'entityPaymentsCertified' | 'providesWithholdingStatementCertified';
6
- export type SubPromptKey = TreatyClaimSubPrompt | 'isQiCertified' | 'smllcElection' | 'iAmNotSubjectToBackupWithholding' | 'iConfirmIncomeIsNonUs' | 'isIndividual' | 'transmitsTfiDocumentationCertified' | 'transmitsUsbDocumentationCertified' | 'entityPaymentsCertified' | 'financialAccountIdentifier' | 'financialAccountName' | 'financialInstitutionType' | 'vatIdentificationNumber' | 'placeOfBirth' | 'referenceNumbers' | 'relatedCorporation' | 'role' | 'securitiesMarket' | 'signature' | 'signatureCapacityOther' | 'streetIsPermanent' | 'usPerson';
7
- export type TitleKey = 'accountHolder' | 'accountHolderCertifications' | 'accountHolderClassification' | 'accountHolderContactInformation' | 'accountHolderTaxInformation' | 'accountHolderTaxClarification' | 'accountHolderTreatyClaims' | 'accountTypeCertifications' | 'address' | 'additionalConditions' | 'acknowledge' | 'carfClassificationDetails' | 'certificationStatements' | 'certify' | 'confirmation' | 'controllingPersonDetails' | 'controllingPersons' | 'controllingPerson1' | 'controllingPerson2' | 'controllingPerson3' | 'controllingPerson4' | 'controllingPerson5' | 'countryOfCitizenship' | 'countryOfIncorporation' | 'exemptions' | 'mailingAddress' | 'primaryAddress' | 'permanentAddress' | 'placeOfBirth' | 'regardedOwner' | 'regardedOwnerCertifications' | 'regardedOwnerClassification' | 'regardedOwnerContactInformation' | 'regardedOwnerTaxInformation' | 'regardedOwnerTreatyClaims' | 'signature' | 'summary' | 'taxResidences' | 'taxResidence1' | 'taxResidence2' | 'taxResidence3' | 'taxResidence4' | 'taxResidence5';
6
+ export type PromptKey = TreatyClaimPrompt | 'accountHolderAccountOwnerType' | 'accountHolderIntermediaryAccountType' | 'accountHolderEntityAccountType' | 'activeNonFinancialEntityType' | 'addAdditionalResidence' | 'addControllingPerson' | 'address' | 'businessRegistrationNumber' | 'businessRegistrationCountry' | 'city' | 'cityOfBirth' | 'country' | 'countryOfBirth' | 'dateOfBirth' | 'day' | 'dbaName' | 'exemptPayeeCode' | 'exemptFatcaCode' | 'financialAccountIdentifier' | 'financialAccountName' | 'foreignAccountType' | 'financialInstitutionType' | 'foreignTin' | 'foreignTinIsNotRequired' | 'investmentEntityManaged' | 'isIndividual' | 'iAcknowledgeESignIsOk' | 'iWillResubmitIfIncorrect' | 'iAmACitizenOfTheUs' | 'iAmExemptFromFatcaReporting' | 'iAmNotSubjectToBackupWithholding' | 'iAuthorizeWithholdingAgent' | 'iCertifyToAll' | 'iConfirmIncomeIsNonUs' | 'iConfirmTheBeneficialOwnerIsExempt' | 'iConfirmTheInformationIsCorrectComplete' | 'iConfirmTheEntityIsNotAUsPerson' | 'iConfirmTheEntityIsTheBeneficialOwner' | 'iConfirmTheIndividualIsNotAUsPerson' | 'iConfirmTheIndividualIsTheBeneficialOwner' | 'iConfirmTheIndividualIsResidentOfTreatyCountry' | 'iConfirmTheTaxIdIsCorrect' | 'iHaveCapacityToSignForEntity' | 'iHaveCapacityToSignForIndividual' | 'iDeclareStatementsAreCorrect' | 'iUnderstandTheInformationIsCovered' | 'iAcknowledgeTheInformationMayBeProvided' | 'iCertifyIAmAccountHolder' | 'iCertifyIAmAuthorizedToSignForAccountHolder' | 'iCertifyIWillNotifyPersons' | 'iWillNotifyChangeInCircumstanceForIndividual' | 'iWillNotifyChangeInCircumstanceForAccountHolder' | 'mailingAddress' | 'mailingAddressIsDifferent' | 'month' | 'name' | 'nameOfDisregardedEntity' | 'nameOfEntity' | 'nameOfCCorporation' | 'nameOfCorporation' | 'nameOfIndividual' | 'nameOfIndividualSoleProprietor' | 'nameOfLlc' | 'nameOfOrganization' | 'nameOfPartnership' | 'nameOfSCorporation' | 'nameOfSmllc' | 'nameOfSmllcOwner' | 'nameOfSoleProprietor' | 'nameOfTrustEstate' | 'nameOfComplexTrust' | 'nameOfTaxExemptOrganization' | 'nameOfPrivateFoundation' | 'nameOfInternationalOrganization' | 'nameOfCentralBankOfIssue' | 'nameOfForeignGovernmentControlledEntity' | 'nameOfForeignGovernmentIntegralPart' | 'nameOfEstate' | 'nameOfQualifiedIntermediary' | 'nameOfNonqualifiedIntermediary' | 'nameOfTerritoryFinancialInstitution' | 'nameOfUsBranch' | 'nameOfWithholdingForeignPartnership' | 'nameOfWithholdingForeignTrust' | 'nameOfNonwithholdingForeignPartnership' | 'nameOfNonwithholdingForeignSimpleTrust' | 'nameOfNonwithholdingForeignGrantorTrust' | 'otherRole' | 'otherEquivalentRole' | 'ownershipPercentage' | 'managedEntityType' | 'passiveEntityType' | 'province' | 'referenceNumbers' | 'regardedOwnerUsPerson' | 'regardedOwnerAccountType' | 'regardedOwnerEntityAccountType' | 'regardedOwnerIntermediaryAccountType' | 'relatedCorporation' | 'removeResidence' | 'removeControllingPerson' | 'role' | 'securitiesMarket' | 'signature' | 'signatureCapacity' | 'signatureCapacityOther' | 'smllcElection' | 'smllcOwnerAccountType' | 'smllcOwnerUsPerson' | 'countyRegion' | 'stateProvince' | 'street' | 'street2' | 'taxIdNumber' | 'taxIdNumberIsNotRequired' | 'taxIdNumberIsNotRequiredReason' | 'taxIdNumberIsNotRequiredReasonOther' | 'tin' | 'tinUkCrn' | 'tinUkNino' | 'type' | 'usAccountType' | 'usLlcClassification' | 'usOtherClassification' | 'usPerson' | 'usEin' | 'usSoleProprietorEin' | 'usSsn' | 'usTin' | 'usTinIsValid' | 'usTinMatchVerification' | 'usTrustEstateEin' | 'vatIdentificationNumber' | 'vatIsNotRequired' | 'vatCountry' | 'year' | 'zip' | 'isQiCertified' | 'assumesChapters3And4Responsibility' | 'assumes1099Responsibility' | 'usPersonElection' | 'providesAdditionalDocumentation' | 'assumesChapters3And4ResponsibilityCertified' | 'assumes1099ResponsibilityCertified' | 'notAssume1099ResponsibilityCertified' | 'meetsQiRegulationsRequirementsCertified' | 'obtainsDocumentationCertified' | 'notActingAsQiCertified' | 'transmitsNqiDocumentationCertified' | 'representsWithholdingStatementsCertified' | 'isFinancialInstitutionCertified' | 'tfiUsPersonElectionCertified' | 'transmitsTfiDocumentationCertified' | 'usbPaymentsCertified' | 'usbUsPersonElectionCertified' | 'transmitsUsbDocumentationCertified' | 'isCompliantCertified' | 'entityPaymentsCertified' | 'providesWithholdingStatementCertified';
7
+ export type SubPromptKey = TreatyClaimSubPrompt | 'isQiCertified' | 'smllcElection' | 'iAmNotSubjectToBackupWithholding' | 'iConfirmIncomeIsNonUs' | 'isIndividual' | 'transmitsTfiDocumentationCertified' | 'transmitsUsbDocumentationCertified' | 'entityPaymentsCertified' | 'financialAccountIdentifier' | 'financialAccountName' | 'financialInstitutionType' | 'vatIdentificationNumber' | 'placeOfBirth' | 'referenceNumbers' | 'relatedCorporation' | 'role' | 'securitiesMarket' | 'signature' | 'signatureCapacityOther' | 'streetIsPermanent' | 'usPerson' | 'usTin' | 'usTinMatchVerification';
8
+ export type TitleKey = 'accountHolder' | 'accountHolderCertifications' | 'accountHolderClassification' | 'accountHolderContactInformation' | 'accountHolderTaxInformation' | 'accountHolderTaxClarification' | 'accountHolderTreatyClaims' | 'accountTypeCertifications' | 'accountHolderUsTinValidation' | 'address' | 'additionalConditions' | 'acknowledge' | 'carfClassificationDetails' | 'certificationStatements' | 'certify' | 'confirmation' | 'controllingPersonDetails' | 'controllingPersons' | 'controllingPerson1' | 'controllingPerson2' | 'controllingPerson3' | 'controllingPerson4' | 'controllingPerson5' | 'countryOfCitizenship' | 'countryOfIncorporation' | 'exemptions' | 'mailingAddress' | 'primaryAddress' | 'permanentAddress' | 'placeOfBirth' | 'regardedOwner' | 'regardedOwnerCertifications' | 'regardedOwnerClassification' | 'regardedOwnerContactInformation' | 'regardedOwnerTaxInformation' | 'regardedOwnerTreatyClaims' | 'regardedOwnerUsTinValidation' | 'signature' | 'summary' | 'taxResidences' | 'taxResidence1' | 'taxResidence2' | 'taxResidence3' | 'taxResidence4' | 'taxResidence5';
8
9
  export type SubTitleKey = 'controllingPersonDetails' | 'taxResidences' | 'permanentAddress' | 'taxInformationTreatyClaims';
9
10
  export type TextKey = 'eSignActReference' | 'notRequired' | 'notRequiredOrNotIssued' | 'interviewIsComplete' | 'penaltyOfPerjury' | 'penaltiesOfPerjury' | 'retrievingInterviewStatus' | 'taxDocumentationSaved';
10
11
  type TreatyClaimPrompt = 'eligibleForTreatyClaim' | 'iCertifyBeneficialOwnerIsResident' | 'iCertifyBeneficialOwnerMeetsRequirements' | 'treatyCountry' | 'typeOfIncome' | 'withholdingRateArticleParagraph' | 'iMeetRequiredTermsOfTreaty' | 'limitationOnBenefitsProvisions' | 'limitationOnBenefitsSpecifyArticleParagraph';
@@ -1,9 +1,12 @@
1
- import { ButtonKey, ErrorKey, OptionKey, PromptKey, SubOptionKey, SubPromptKey, SubTitleKey, TextKey, TitleKey } from './LocalizationKey';
1
+ import { BadgeKey, ButtonKey, ErrorKey, OptionKey, PromptKey, SubOptionKey, SubPromptKey, SubTitleKey, TextKey, TitleKey } from './LocalizationKey';
2
2
 
3
3
  export type PropertyFile = {
4
4
  button: {
5
5
  [key in ButtonKey]: string;
6
6
  };
7
+ badge: {
8
+ [key in BadgeKey]: string;
9
+ };
7
10
  error: {
8
11
  [key in ErrorKey]: string;
9
12
  };
@@ -4,6 +4,7 @@ import { ButtonKey, ErrorKey, OptionKey, PromptKey, SubOptionKey, SubPromptKey,
4
4
  export declare const getPromptText: (key: PromptKey, data: TaxDocumentation, locale: Locale | undefined) => string;
5
5
  export declare const getSubPromptText: (key: SubPromptKey, data: TaxDocumentation, locale: Locale | undefined) => string;
6
6
  export declare const getErrorText: (key: ErrorKey, data: TaxDocumentation, locale: Locale | undefined) => string;
7
+ export declare const getBadgeText: (key: string, data: TaxDocumentation, locale: Locale | undefined) => string;
7
8
  export declare const getTextText: (key: TextKey, data: TaxDocumentation, locale: Locale | undefined) => string;
8
9
  export declare const getTitleText: (key: string, data: TaxDocumentation, locale: Locale | undefined) => string;
9
10
  export declare const getSubTitleText: (key: SubTitleKey, data: TaxDocumentation, locale: Locale | undefined) => string;
@@ -3,6 +3,7 @@ import { QuestionnaireProp } from 'types';
3
3
  export declare const TAX_DOCUMENTATION_SUBMISSIONS_PATH = "tax-documentation/submissions";
4
4
  export declare const TAX_DOCUMENTATION_STATUS_PATH = "tax-documentation-status";
5
5
  export declare const TAX_DOCUMENT_PATH = "tax-documentation/document";
6
+ export declare const US_TIN_VALIDATION_PATH = "embedded-validations/us-tin";
6
7
  export declare const api: {
7
8
  taxDocumentationSubmissions: {
8
9
  post: (environment: "PRODUCTION" | "STAGING") => string;
@@ -15,4 +16,7 @@ export declare const api: {
15
16
  post: (environment: "PRODUCTION" | "STAGING") => string;
16
17
  get: (documentId: string, environment: "PRODUCTION" | "STAGING") => string;
17
18
  };
19
+ usTinValidation: {
20
+ post: (environment: "PRODUCTION" | "STAGING") => string;
21
+ };
18
22
  };
@@ -28,6 +28,22 @@ export declare const mockApi: {
28
28
  pending: (options?: ResponseOptions) => import('msw').HttpHandler;
29
29
  };
30
30
  };
31
+ usTinValidation: {
32
+ post: {
33
+ success: (options?: ResponseOptions) => import('msw').HttpHandler;
34
+ successEIN: (options?: ResponseOptions) => import('msw').HttpHandler;
35
+ successSSN: (options?: ResponseOptions) => import('msw').HttpHandler;
36
+ invalidMismatch: (options?: ResponseOptions) => import('msw').HttpHandler;
37
+ invalidTinNotIssues: (options?: ResponseOptions) => import('msw').HttpHandler;
38
+ pending: (options?: ResponseOptions) => import('msw').HttpHandler;
39
+ pendingForeign: (options?: ResponseOptions) => import('msw').HttpHandler;
40
+ pendingInvalidData: (options?: ResponseOptions) => import('msw').HttpHandler;
41
+ pendingError: (options?: ResponseOptions) => import('msw').HttpHandler;
42
+ rateLimited: (options?: ResponseOptions) => import('msw').HttpHandler;
43
+ unauthorized: (options?: ResponseOptions) => import('msw').HttpHandler;
44
+ delayed: (options?: ResponseOptions) => import('msw').HttpHandler;
45
+ };
46
+ };
31
47
  };
32
48
  export declare const successHandlers: import('msw').HttpHandler[];
33
49
  export {};
@@ -0,0 +1,6 @@
1
+ import { default as React } from 'react';
2
+
3
+ export declare const Spinner: ({ size, className, }: {
4
+ size: number;
5
+ className?: string;
6
+ }) => React.JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './Spinner';
@@ -1,4 +1,4 @@
1
- declare const inputSteps: readonly ["AccountHolderCertifications", "AccountHolderClassification", "AccountHolderContact", "AccountHolderTax", "AccountHolderTaxClarification", "AccountHolderTreatyClaims", "ControllingPersonDetails1", "ControllingPersonDetails2", "ControllingPersonDetails3", "ControllingPersonDetails4", "ControllingPersonDetails5", "Exemptions", "RegardedOwnerCertifications", "RegardedOwnerContact", "RegardedOwnerTax", "RegardedOwnerTreatyClaims", "Summary"];
1
+ declare const inputSteps: readonly ["AccountHolderCertifications", "AccountHolderClassification", "AccountHolderContact", "AccountHolderTax", "AccountHolderTaxClarification", "AccountHolderTreatyClaims", "AccountHolderUsTinValidation", "ControllingPersonDetails1", "ControllingPersonDetails2", "ControllingPersonDetails3", "ControllingPersonDetails4", "ControllingPersonDetails5", "Exemptions", "RegardedOwnerCertifications", "RegardedOwnerContact", "RegardedOwnerTax", "RegardedOwnerTreatyClaims", "RegardedOwnerUsTinValidation", "Summary"];
2
2
  export type InputStep = (typeof inputSteps)[number];
3
3
  export declare const isInputStep: (step: string) => step is InputStep;
4
4
  export declare const confirmInputStep: (step: string) => InputStep;
@@ -1 +1 @@
1
- export type StepId = 'accountHolderCertifications' | 'accountHolderContactInformation' | 'accountHolderTaxInformation' | 'accountHolderClassification' | 'accountHolderTaxClarification' | 'accountHolderTreatyClaims' | 'confirmation' | 'controllingPersonDetails1' | 'controllingPersonDetails2' | 'controllingPersonDetails3' | 'controllingPersonDetails4' | 'controllingPersonDetails5' | 'exemptions' | 'regardedOwnerCertifications' | 'regardedOwnerContactInformation' | 'regardedOwnerTaxInformation' | 'regardedOwnerTreatyClaims' | 'summary';
1
+ export type StepId = 'accountHolderCertifications' | 'accountHolderContactInformation' | 'accountHolderTaxInformation' | 'accountHolderClassification' | 'accountHolderTaxClarification' | 'accountHolderTreatyClaims' | 'accountHolderUsTinValidation' | 'confirmation' | 'controllingPersonDetails1' | 'controllingPersonDetails2' | 'controllingPersonDetails3' | 'controllingPersonDetails4' | 'controllingPersonDetails5' | 'exemptions' | 'regardedOwnerCertifications' | 'regardedOwnerContactInformation' | 'regardedOwnerTaxInformation' | 'regardedOwnerTreatyClaims' | 'regardedOwnerUsTinValidation' | 'summary';
@@ -114,6 +114,8 @@ export type AccountHolderTaxData = Residences<'accountHolder'> & {
114
114
  accountHolderForeignTin?: string;
115
115
  accountHolderForeignTinIsNotRequired?: Yes;
116
116
  accountHolderUsTin?: string;
117
+ accountHolderUsTinIsValid?: Yes;
118
+ accountHolderUsTinMatchVerification?: YesNo;
117
119
  accountHolderFinancialAccountIdentifier?: string;
118
120
  accountHolderFinancialAccountName?: string;
119
121
  accountHolderVatIdentificationNumber?: string;
@@ -198,6 +200,8 @@ export type RegardedOwnerTaxData = {
198
200
  regardedOwnerForeignTin?: string;
199
201
  regardedOwnerForeignTinIsNotRequired?: Yes;
200
202
  regardedOwnerUsTin?: string;
203
+ regardedOwnerUsTinIsValid?: Yes;
204
+ regardedOwnerUsTinMatchVerification?: YesNo;
201
205
  };
202
206
  export type SummaryData = {
203
207
  exemptFatcaCode?: string;
@@ -3,7 +3,7 @@ export * from './InputStep';
3
3
  export * from './Locale';
4
4
  export * from './Progress';
5
5
  export * from './QuestionnaireProp.ts';
6
- export * from './TaxDocumentation';
6
+ export * from './TaxDocumentation.ts';
7
7
  export * from './Utilities';
8
8
  export * from './Yes';
9
9
  export * from './YesNo';
@@ -1,10 +1,10 @@
1
1
  import { default as React } from 'react';
2
2
 
3
3
  type ActionsProps = {
4
- onBack?: (data: unknown) => void;
5
- onNext?: (data: unknown) => void;
6
- onReset?: (data: unknown) => void;
7
- onSubmit?: (data: unknown) => void;
4
+ onBack?: () => void;
5
+ onNext?: () => void;
6
+ onReset?: () => void;
7
+ onSubmit?: () => void;
8
8
  disabled?: boolean;
9
9
  info?: string;
10
10
  };
@@ -6,7 +6,6 @@ type FormattedInputProps = {
6
6
  format: (s: string) => string;
7
7
  unformat: (s: string) => string;
8
8
  formatUnpadded: (s: string) => string;
9
- onChange?: (val: string) => string;
10
9
  };
11
- export declare const FormattedInput: ({ name, onChange, format, formatUnpadded, unformat, }: FormattedInputProps) => React.JSX.Element;
10
+ export declare const FormattedInput: ({ name, format, formatUnpadded, unformat, }: FormattedInputProps) => React.JSX.Element;
12
11
  export {};
@@ -1,6 +1,13 @@
1
1
  import { TaxDocumentation } from 'types/TaxDocumentation';
2
+ import { QuestionnaireProp } from '../types';
3
+ import { ExternalValidations } from '../types/client';
2
4
 
3
- export declare const getFieldsState: (fields: TaxDocumentation) => {
5
+ type Options = {
6
+ realTimeTinValidation?: boolean;
7
+ treatyClaims?: boolean;
8
+ externalValidations?: ExternalValidations;
9
+ };
10
+ export declare const getFieldsState: (fields: TaxDocumentation, questionnaire?: QuestionnaireProp, options?: Options) => {
4
11
  hasNoEuTaxId: boolean;
5
12
  hasEuResidence: boolean;
6
13
  hasControllingPerson1: boolean;
@@ -36,4 +43,6 @@ export declare const getFieldsState: (fields: TaxDocumentation) => {
36
43
  tin: string | undefined;
37
44
  tinNotRequired: "yes" | undefined;
38
45
  }[];
46
+ hasUsTinValidationError: import('../i18n/types').ErrorKey[] | undefined;
39
47
  };
48
+ export {};
@@ -1 +1 @@
1
- export declare const getCountryCode: (countryValue: string | undefined) => "AT" | "BE" | "BG" | "CY" | "CZ" | "DE" | "DK" | "EE" | "ES" | "FI" | "FR" | "GR" | "HR" | "HU" | "IE" | "IT" | "LT" | "LU" | "LV" | "MT" | "NL" | "PL" | "PT" | "RO" | "SE" | "SI" | "SK" | "AD" | "AE" | "AF" | "AG" | "AI" | "AL" | "AM" | "AO" | "AQ" | "AR" | "AS" | "AU" | "AW" | "AX" | "AZ" | "BA" | "BB" | "BD" | "BF" | "BH" | "BI" | "BJ" | "BL" | "BM" | "BN" | "BO" | "BQ" | "BR" | "BS" | "BT" | "BV" | "BW" | "BY" | "BZ" | "CA" | "CC" | "CD" | "CF" | "CG" | "CH" | "CI" | "CK" | "CL" | "CM" | "CN" | "CO" | "CR" | "CU" | "CV" | "CW" | "CX" | "DJ" | "DM" | "DO" | "DZ" | "EC" | "EG" | "EH" | "ER" | "ET" | "FJ" | "FK" | "FM" | "FO" | "GA" | "GB" | "GD" | "GE" | "GF" | "GG" | "GH" | "GI" | "GL" | "GM" | "GN" | "GP" | "GQ" | "GS" | "GT" | "GU" | "GW" | "GY" | "HK" | "HM" | "HN" | "HT" | "ID" | "IL" | "IM" | "IN" | "IO" | "IQ" | "IR" | "IS" | "JE" | "JM" | "JO" | "JP" | "KE" | "KG" | "KH" | "KI" | "KM" | "KN" | "KP" | "KR" | "KW" | "KY" | "KZ" | "LA" | "LB" | "LC" | "LI" | "LK" | "LR" | "LS" | "LY" | "MA" | "MC" | "MD" | "ME" | "MF" | "MG" | "MH" | "MK" | "ML" | "MM" | "MN" | "MO" | "MP" | "MQ" | "MR" | "MS" | "MU" | "MV" | "MW" | "MX" | "MY" | "MZ" | "NA" | "NC" | "NE" | "NF" | "NG" | "NI" | "NO" | "NP" | "NR" | "NU" | "NZ" | "OM" | "PA" | "PE" | "PF" | "PG" | "PH" | "PK" | "PM" | "PN" | "PR" | "PS" | "PW" | "PY" | "QA" | "RE" | "RS" | "RU" | "RW" | "SA" | "SB" | "SC" | "SD" | "SG" | "SH" | "SJ" | "SL" | "SM" | "SN" | "SO" | "SR" | "SS" | "ST" | "SV" | "SX" | "SY" | "SZ" | "TC" | "TD" | "TF" | "TG" | "TH" | "TJ" | "TK" | "TL" | "TM" | "TN" | "TO" | "TR" | "TT" | "TV" | "TW" | "TZ" | "UA" | "UG" | "UM" | "US" | "UY" | "UZ" | "VA" | "VC" | "VE" | "VG" | "VI" | "VN" | "VU" | "WF" | "WS" | "YE" | "YT" | "ZA" | "ZM" | "ZW" | undefined;
1
+ export declare const getCountryCode: (countryValue: string | undefined) => "AT" | "BE" | "BG" | "CY" | "CZ" | "DE" | "DK" | "EE" | "ES" | "FI" | "FR" | "GR" | "HR" | "HU" | "IE" | "IT" | "LT" | "LU" | "LV" | "MT" | "NL" | "PL" | "PT" | "RO" | "SE" | "SI" | "SK" | "UM" | "FM" | "US" | "CA" | "AS" | "GU" | "MP" | "PR" | "VI" | "AD" | "AE" | "AF" | "AG" | "AI" | "AL" | "AM" | "AO" | "AQ" | "AR" | "AU" | "AW" | "AX" | "AZ" | "BA" | "BB" | "BD" | "BF" | "BH" | "BI" | "BJ" | "BL" | "BM" | "BN" | "BO" | "BQ" | "BR" | "BS" | "BT" | "BV" | "BW" | "BY" | "BZ" | "CC" | "CD" | "CF" | "CG" | "CH" | "CI" | "CK" | "CL" | "CM" | "CN" | "CO" | "CR" | "CU" | "CV" | "CW" | "CX" | "DJ" | "DM" | "DO" | "DZ" | "EC" | "EG" | "EH" | "ER" | "ET" | "FJ" | "FK" | "FO" | "GA" | "GB" | "GD" | "GE" | "GF" | "GG" | "GH" | "GI" | "GL" | "GM" | "GN" | "GP" | "GQ" | "GS" | "GT" | "GW" | "GY" | "HK" | "HM" | "HN" | "HT" | "ID" | "IL" | "IM" | "IN" | "IO" | "IQ" | "IR" | "IS" | "JE" | "JM" | "JO" | "JP" | "KE" | "KG" | "KH" | "KI" | "KM" | "KN" | "KP" | "KR" | "KW" | "KY" | "KZ" | "LA" | "LB" | "LC" | "LI" | "LK" | "LR" | "LS" | "LY" | "MA" | "MC" | "MD" | "ME" | "MF" | "MG" | "MH" | "MK" | "ML" | "MM" | "MN" | "MO" | "MQ" | "MR" | "MS" | "MU" | "MV" | "MW" | "MX" | "MY" | "MZ" | "NA" | "NC" | "NE" | "NF" | "NG" | "NI" | "NO" | "NP" | "NR" | "NU" | "NZ" | "OM" | "PA" | "PE" | "PF" | "PG" | "PH" | "PK" | "PM" | "PN" | "PS" | "PW" | "PY" | "QA" | "RE" | "RS" | "RU" | "RW" | "SA" | "SB" | "SC" | "SD" | "SG" | "SH" | "SJ" | "SL" | "SM" | "SN" | "SO" | "SR" | "SS" | "ST" | "SV" | "SX" | "SY" | "SZ" | "TC" | "TD" | "TF" | "TG" | "TH" | "TJ" | "TK" | "TL" | "TM" | "TN" | "TO" | "TR" | "TT" | "TV" | "TW" | "TZ" | "UA" | "UG" | "UY" | "UZ" | "VA" | "VC" | "VE" | "VG" | "VN" | "VU" | "WF" | "WS" | "YE" | "YT" | "ZA" | "ZM" | "ZW" | undefined;
@@ -1,4 +1,9 @@
1
1
  import { QuestionnaireProp, TaxDocumentation } from 'types';
2
2
  import { ClientTaxDocumentation } from '@taxbit/utilities';
3
3
 
4
- export declare const transformInbound: (data: ClientTaxDocumentation, questionnaire: QuestionnaireProp, treatyClaims: boolean | undefined) => TaxDocumentation;
4
+ type Options = {
5
+ treatyClaims?: boolean;
6
+ realTimeTinValidation?: boolean;
7
+ };
8
+ export declare const transformInbound: (data: ClientTaxDocumentation | undefined, questionnaire: QuestionnaireProp, options?: Options) => TaxDocumentation;
9
+ export {};
@@ -80,6 +80,8 @@ export declare const transformInboundControllingPersons: (controllingPersons: Ar
80
80
  accountHolderForeignTin?: string;
81
81
  accountHolderForeignTinIsNotRequired?: import('../../types/Yes.ts').Yes;
82
82
  accountHolderUsTin?: string;
83
+ accountHolderUsTinIsValid?: import('../../types/Yes.ts').Yes;
84
+ accountHolderUsTinMatchVerification?: import('../../types/YesNo.ts').YesNo;
83
85
  accountHolderFinancialAccountIdentifier?: string;
84
86
  accountHolderFinancialAccountName?: string;
85
87
  accountHolderVatIdentificationNumber?: string;
@@ -156,6 +158,8 @@ export declare const transformInboundControllingPersons: (controllingPersons: Ar
156
158
  regardedOwnerForeignTin?: string;
157
159
  regardedOwnerForeignTinIsNotRequired?: import('../../types/Yes.ts').Yes;
158
160
  regardedOwnerUsTin?: string;
161
+ regardedOwnerUsTinIsValid?: import('../../types/Yes.ts').Yes;
162
+ regardedOwnerUsTinMatchVerification?: import('../../types/YesNo.ts').YesNo;
159
163
  exemptFatcaCode?: string;
160
164
  exemptPayeeCode?: string;
161
165
  iAcknowledgeESignIsOk?: import('../../types/Yes.ts').Yes;
@@ -1,3 +1,4 @@
1
+ import { UsTinValidationAttempt } from '../hooks';
1
2
  import { QuestionnaireProp, TaxDocumentation } from '../types';
2
3
 
3
- export declare const getSteps: (data: TaxDocumentation, treatyClaims: boolean | undefined, questionnaire: QuestionnaireProp) => ("AccountHolderCertifications" | "AccountHolderClassification" | "AccountHolderContact" | "AccountHolderTax" | "AccountHolderTaxClarification" | "AccountHolderTreatyClaims" | "ControllingPersonDetails1" | "ControllingPersonDetails2" | "ControllingPersonDetails3" | "ControllingPersonDetails4" | "ControllingPersonDetails5" | "Exemptions" | "RegardedOwnerCertifications" | "RegardedOwnerContact" | "RegardedOwnerTax" | "RegardedOwnerTreatyClaims" | "Summary")[];
4
+ export declare const getSteps: (data: TaxDocumentation, treatyClaims: boolean | undefined, questionnaire: QuestionnaireProp, usTinValidations: UsTinValidationAttempt[]) => ("AccountHolderCertifications" | "AccountHolderClassification" | "AccountHolderContact" | "AccountHolderTax" | "AccountHolderTaxClarification" | "AccountHolderTreatyClaims" | "AccountHolderUsTinValidation" | "ControllingPersonDetails1" | "ControllingPersonDetails2" | "ControllingPersonDetails3" | "ControllingPersonDetails4" | "ControllingPersonDetails5" | "Exemptions" | "RegardedOwnerCertifications" | "RegardedOwnerContact" | "RegardedOwnerTax" | "RegardedOwnerTreatyClaims" | "RegardedOwnerUsTinValidation" | "Summary")[];
@@ -2,4 +2,10 @@ import { TaxDocumentationErrorFile } from '../../contexts';
2
2
  import { QuestionnaireProp, TaxDocumentation } from '../../types';
3
3
  import { ExternalValidations } from '../../types/client';
4
4
 
5
- export declare const getInvalidFields: (fields: TaxDocumentation, questionnaire: QuestionnaireProp, externalValidations?: ExternalValidations) => TaxDocumentationErrorFile;
5
+ type Options = {
6
+ realTimeTinValidation?: boolean;
7
+ treatyClaims?: boolean;
8
+ externalValidations?: ExternalValidations;
9
+ };
10
+ export declare const getInvalidFields: (fields: TaxDocumentation, questionnaire: QuestionnaireProp, options?: Options) => TaxDocumentationErrorFile;
11
+ export {};
@@ -2,8 +2,14 @@ import { ErrorKey } from 'i18n/types';
2
2
  import { TaxDocumentation, TaxDocumentationKey } from 'types/TaxDocumentation';
3
3
  import { ExternalValidations } from '../../types/client';
4
4
 
5
- export type FormUIValidation = (fields: TaxDocumentation, externalValidations?: ExternalValidations) => ErrorKey[] | undefined;
5
+ type Options = {
6
+ treatyClaims?: boolean;
7
+ realTimeTinValidation?: boolean;
8
+ externalValidations?: ExternalValidations;
9
+ };
10
+ export type FormUIValidation = (fields: TaxDocumentation, options?: Options) => ErrorKey[] | undefined;
6
11
  export type FormUIValidations = {
7
12
  [key in TaxDocumentationKey]?: FormUIValidation;
8
13
  };
9
14
  export declare const invalidFieldRules: FormUIValidations;
15
+ export {};
@@ -1,4 +1,9 @@
1
1
  import { TaxDocumentationPropertyFile } from '../../contexts';
2
2
  import { QuestionnaireProp, TaxDocumentation } from '../../types';
3
3
 
4
- export declare const getRequiredFields: (fields: TaxDocumentation, questionnaire: QuestionnaireProp) => TaxDocumentationPropertyFile;
4
+ type Options = {
5
+ treatyClaims?: boolean;
6
+ realTimeTinValidation?: boolean;
7
+ };
8
+ export declare const getRequiredFields: (fields: TaxDocumentation, questionnaire: QuestionnaireProp, options?: Options) => TaxDocumentationPropertyFile;
9
+ export {};
@@ -1,4 +1,9 @@
1
1
  import { QuestionnaireProp } from 'types';
2
2
  import { TaxDocumentationPropertyFile } from '../../contexts';
3
3
 
4
- export declare const getSupportedFields: (questionnaire: QuestionnaireProp, treatyClaims?: boolean) => Partial<TaxDocumentationPropertyFile>;
4
+ type Options = {
5
+ treatyClaims?: boolean;
6
+ realTimeTinValidation?: boolean;
7
+ };
8
+ export declare const getSupportedFields: (questionnaire: QuestionnaireProp, options?: Options) => Partial<TaxDocumentationPropertyFile>;
9
+ export {};
@@ -1,4 +1,11 @@
1
1
  import { QuestionnaireProp, TaxDocumentation } from 'types';
2
2
  import { TaxDocumentationPropertyFile } from '../../contexts';
3
+ import { UsTinValidationAttempt } from '../../hooks';
3
4
 
4
- export declare const getVisibleFields: (fields: TaxDocumentation | undefined, questionnaire: QuestionnaireProp, treatyClaims?: boolean) => TaxDocumentationPropertyFile;
5
+ type Options = {
6
+ treatyClaims?: boolean;
7
+ usTinValidations?: UsTinValidationAttempt[];
8
+ realTimeTinValidation?: boolean;
9
+ };
10
+ export declare const getVisibleFields: (fields: TaxDocumentation | undefined, questionnaire: QuestionnaireProp, options?: Options) => TaxDocumentationPropertyFile;
11
+ export {};
@@ -11,6 +11,7 @@ export type TaxbitQuestionnaireProps = {
11
11
  onProgress?: TaxbitQuestionnairePersistProps['onProgress'];
12
12
  onSubmit?: TaxbitQuestionnairePersistProps['onSubmit'];
13
13
  dateFormat?: TaxbitQuestionnairePersistProps['dateFormat'];
14
+ realTimeTinValidation?: TaxbitQuestionnairePersistProps['realTimeTinValidation'];
14
15
  } & ({
15
16
  demoMode: true;
16
17
  bearerToken?: never;
@@ -28,4 +29,4 @@ export type TaxbitQuestionnaireProps = {
28
29
  onSuccess?: TaxbitQuestionnairePersistProps['onSuccess'];
29
30
  staging?: TaxbitQuestionnairePersistProps['staging'];
30
31
  });
31
- export declare const TaxbitQuestionnaire: ({ bearerToken, data, demoMode, language, onError, loadingComponent, onProgress, onSettled, onSubmit, onSuccess, questionnaire, staging, treatyClaims, dateFormat, }: TaxbitQuestionnaireProps) => React.JSX.Element;
32
+ export declare const TaxbitQuestionnaire: ({ bearerToken, data, demoMode, language, onError, loadingComponent, onProgress, onSettled, onSubmit, onSuccess, questionnaire, staging, treatyClaims, dateFormat, realTimeTinValidation, }: TaxbitQuestionnaireProps) => React.JSX.Element;
@@ -6,4 +6,4 @@ export type TaxbitQuestionnairePersistProps = UseTaxDocumentationProps & UseTaxb
6
6
  loadingComponent?: React.ReactNode;
7
7
  treatyClaims?: boolean;
8
8
  };
9
- export declare const TaxbitQuestionnairePersist: ({ staging, data, bearerToken, language, questionnaire, loadingComponent, onProgress, onSubmit, onSettled, onSuccess, onError, treatyClaims, dateFormat, }: TaxbitQuestionnairePersistProps) => string | number | bigint | true | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | React.JSX.Element;
9
+ export declare const TaxbitQuestionnairePersist: ({ staging, data, bearerToken, language, questionnaire, loadingComponent, onProgress, onSubmit, onSettled, onSuccess, onError, treatyClaims, dateFormat, realTimeTinValidation, }: TaxbitQuestionnairePersistProps) => string | number | bigint | true | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | React.JSX.Element;
@@ -2,8 +2,8 @@ import { default as React } from 'react';
2
2
  import { ShowHideInputProps } from 'ui';
3
3
 
4
4
  type ShowHideInputRowProps = {
5
- label?: true;
6
- subLabel?: true;
5
+ label?: boolean;
6
+ subLabel?: boolean;
7
7
  onChange?: (val: string) => string;
8
8
  disabled?: boolean;
9
9
  children?: React.ReactNode;
@@ -1,11 +1,12 @@
1
1
  import { default as React } from 'react';
2
2
  import { TaxDocumentationKey } from 'types';
3
3
 
4
- export declare const VisibleRow: ({ label, subLabel, name, header, children, onEdit, }: {
4
+ export declare const VisibleRow: ({ label, subLabel, badge, name, header, children, onEdit, }: {
5
+ badge?: boolean;
5
6
  label?: boolean;
6
7
  subLabel?: boolean;
7
8
  header?: string;
8
9
  name: TaxDocumentationKey;
9
- children: React.ReactNode;
10
+ children?: React.ReactNode;
10
11
  onEdit?: () => void;
11
12
  }) => React.JSX.Element | null;
@@ -0,0 +1,3 @@
1
+ import { default as React } from 'react';
2
+
3
+ export declare const AccountHolderUsTinValidation: () => React.JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './AccountHolderUsTinValidation.tsx';
@@ -0,0 +1,3 @@
1
+ import { default as React } from 'react';
2
+
3
+ export declare const RegardedOwnerUsTinValidation: () => React.JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './RegardedOwnerUsTinValidation.tsx';
@@ -5,4 +5,4 @@ export type TaxbitQuestionnaireUIProps = Omit<UseTaxDocumentationProps, 'step' |
5
5
  isComplete?: boolean;
6
6
  treatyClaims?: boolean;
7
7
  };
8
- export declare const TaxbitQuestionnaireUI: ({ data, onSubmit, language, questionnaire, isComplete, onProgress, externalValidations, treatyClaims, dateFormat, }: TaxbitQuestionnaireUIProps) => React.JSX.Element;
8
+ export declare const TaxbitQuestionnaireUI: ({ data, onSubmit, language, questionnaire, isComplete, onProgress, externalValidations, treatyClaims, dateFormat, realTimeTinValidation, staging, bearerToken, }: TaxbitQuestionnaireUIProps) => React.JSX.Element;
@@ -4,10 +4,12 @@ export * from './AccountHolderContact';
4
4
  export * from './AccountHolderTax';
5
5
  export * from './AccountHolderTaxClarification';
6
6
  export * from './AccountHolderTreatyClaims';
7
+ export * from './AccountHolderUsTinValidation';
7
8
  export * from './ControllingPersonDetails';
8
9
  export * from './Exemptions';
9
10
  export * from './RegardedOwnerCertifications';
10
11
  export * from './RegardedOwnerContact';
11
12
  export * from './RegardedOwnerTax';
12
13
  export * from './RegardedOwnerTreatyClaims';
14
+ export * from './RegardedOwnerUsTinValidation';
13
15
  export * from './Summary';