@adyen/kyc-components
Version:
`adyen-kyc-components` provides the required pieces to build an onboarding flow based on a legal entity. To onboard and verify users, you need to create a user interface (UI) to collect user data. To speed up building your integration, Adyen offers onboar
36 lines (35 loc) • 1.51 kB
TypeScript
import type { ExistingLegalEntity } from '../../core/models/api/legal-entity';
import type { TranslationKey } from '../../language/types';
import type { DropinAPIHandlers, DropinProps } from '../Dropins/types';
import type { AccountHolderOption, LegalArrangementOption } from '../../core/types/AccountHolder.types';
export interface BusinessTypeSelectionProps extends DropinAPIHandlers, DropinProps {
legalEntityResponse: ExistingLegalEntity;
accountHolder: AccountHolderOption | undefined;
onComplete: (accountHolder: AccountHolderOption) => void;
onBack?: () => void;
}
export interface BusinessTypeSelectionSchema {
businessType?: BusinessTypeModel;
legalArrangement?: LegalArrangementModel;
trusteeType?: TrusteeTypeModel;
}
export type BusinessTypeMetadata = Record<BusinessType, BusinessTypeModel>;
export type BusinessType = 'individual' | 'soleProprietorship' | 'company' | 'legalArrangement';
export interface BusinessTypeModel {
id: BusinessType;
name: TranslationKey;
description: TranslationKey;
accountHolder?: Exclude<AccountHolderOption, LegalArrangementOption>;
}
export interface LegalArrangementModel {
id: LegalArrangementOption;
accountHolder: AccountHolderOption;
name: TranslationKey;
description: TranslationKey;
}
export declare const trusteeTypes: readonly ["individual", "company"];
export type TrusteeType = (typeof trusteeTypes)[number];
export interface TrusteeTypeModel {
id: TrusteeType;
name: TranslationKey;
}