UNPKG

react-native-unit-components

Version:

Unit React Native components

166 lines 4.41 kB
import { UNAccountType } from './account.types'; import { UNCustomerType } from './customer.types'; import { UNAddress, UNBusinessContact, UNFullName, UNPhone } from './types'; export declare enum UNCreateCardType { Virtual = "virtual", Physical = "physical" } export type UNCreateCardComponentResources = { type: 'createCardComponentResources'; attributes: { accounts: UNCreateCardComponentAccount[]; customer: UNCreateCardCustomer; possibleCardholders: UNCardholder[]; resourceDiscovery: UNResourceDiscovery; bin?: UNBin[]; }; }; export type UNCreateCardCustomer = UNCreateCardComponentIndividualCustomer | UNCreateCardComponentBusinessCustomer; export type UNCreateCardComponentIndividualCustomer = { type: UNCustomerType.IndividualCustomer; attributes: { fullName: UNFullName; address: UNAddress; dateOfBirth: Date; email: string; phone: UNPhone; }; }; export type UNCreateCardComponentBusinessCustomer = { type: UNCustomerType.BusinessCustomer; attributes: { name: UNFullName; address: UNAddress; phone: UNPhone; contact: UNBusinessContact; }; }; export type UNCreateCardComponentAccount = UNCreateCardComponentDepositAccount | UNCreateCardComponentCreditAccount; export type UNCreateCardComponentDepositAccount = { type: UNAccountType.DepositAccount; id: string; attributes: { name: string; tags: { [key: string]: string; }; routingNumber: string; accountNumber: string; }; }; export type UNCreateCardComponentCreditAccount = { type: UNAccountType.CreditAccount; id: string; attributes: { name: string; tags: { [key: string]: string; }; }; }; export type UNCardholderAttributes = { fullName: UNFullName; address?: UNAddress; dateOfBirth?: Date; email?: string; phone?: UNPhone; }; export type UNCardholder = { type: 'possibleCardholder'; attributes: UNCardholderAttributes; }; export interface UNResourceDiscovery { type: 'resourceDiscovery'; attributes: { featureSettings?: UNFeatureSettings; accountManifest?: UNAccountManifest[]; legalLinks?: UNLegalLinks; brandName?: string; supportComponent?: UNSupportComponent; }; relationships: { customer: { data: { type: 'customer'; id: string; }; }; accounts: { data: UNRelationship[]; }; cards: { data: UNRelationship[]; }; }; } export interface UNFeatureSettings { wirePayment?: { enabled: boolean; }; achDebitPayment?: { enabled: boolean; }; quickbooks?: { enabled: boolean; }; sameDayAch?: { enabled: boolean; }; appUsers?: { enabled: boolean; }; } export interface UNAccountManifest { type: 'depositAccountManifest'; attributes: { accountId: string; bankName: string; maxNumberOfPhysicalCards?: number; maxNumberOfVirtualCards?: number; dailyCardWithdrawalLimit: number; dailyCardDepositLimit: number; dailyCardPurchaseLimit: number; outgoingWireFee: number; outgoingAchFee: number; sameDayAchFee: number; }; } export interface UNLegalLinks { privacyPolicyUrl?: string; electronicDisclosuresUrl?: string; depositTermsUrl?: string; clientTermsUrl?: string; cardholderTermsUrl?: string; cashAdvancedTermsUrl?: string; debitCardDisclosureUrl?: string; additionalDisclosures?: UNAdditionalDisclosure[]; } export type UNAdditionalDisclosure = { title: string; url: string; }; export type UNSupportComponent = { attributes: { provider?: UNSupportType; widgetId?: string; widgetToken?: string; }; }; export declare enum UNSupportType { Zendesk = "zendesk" } type UNRelationship = { type: string; id: string; }; export type UNBin = { attributes: { bin: string; institutionId: string; product: string; }; type: 'whiteLabelBinDto'; }; export declare function parseUNCreateCardTypes(input?: string | null): UNCreateCardType[]; export {}; //# sourceMappingURL=createCard.types.d.ts.map