UNPKG

react-native-unit-components

Version:

Unit React Native components

171 lines 4.5 kB
import { UNIndividualCustomer } from './customer.types'; import type { Permissible, UNAddress } from './types'; export type UNAccount = UNDepositAccount | UNBatchAccount | UNCreditAccount; export type UNDepositAccount = { id: string; type: UNAccountType.DepositAccount; attributes: { createdAt: Date; updatedAt?: Date; name: string; depositProduct: string; routingNumber: string; accountNumber: Permissible<string>; maskedAccountNumber?: string; secondaryAccountNumber?: { routingNumber: string; accountNumber: string; }; balance: number; hold: number; reserve: number; available: number; overdraftLimit?: number; currency: string; tags: { [key: string]: string; }; status: UNAccountStatus; closeReason?: string; fraudReason?: UNFraudReason; closeReasonText?: string; freezeReason?: string; isOverdrawnWithinLimit?: boolean; bankDetails?: UNBankDetails; }; relationships: { customer?: { data: { type: 'customer'; id: string; }; }; customers?: { data: [ { type: 'customer'; id: string; } ]; }; org: { data: { type: 'org'; id: string; }; }; }; included?: UNIndividualCustomer[]; }; export type UNBatchAccount = { id: string; type: UNAccountType.BatchAccount; attributes: { createdAt: Date; updatedAt?: Date; name: string; depositProduct: string; routingNumber: string; accountNumber: Permissible<string>; maskedAccountNumber?: string; balance: number; hold: number; reserve: number; available: number; currency: string; status: UNAccountStatus; closeReason?: string; fraudReason?: UNFraudReason; closeReasonText?: string; freezeReason?: string; tags?: { [key: string]: string; }; }; relationships: { org: { data: { type: 'org'; id: string; }; }; }; }; export type UNCreditAccount = { type: UNAccountType.CreditAccount; id: string; attributes: { createdAt: Date; updatedAt?: Date; name: string; creditTerms: string; balance: number; hold: number; reserve: number; available: number; creditLimit: number; currency: string; tags: { [key: string]: string; }; status: UNAccountStatus; closeReason?: UNCloseReason; fraudReason?: UNFraudReason; closeReasonText?: string; freezeReason?: string; }; relationships: { customer: { data: { type: 'customer'; id: string; }; }; org: { data: { type: 'org'; id: string; }; }; }; }; export declare const enum UNAccountType { DepositAccount = "depositAccount", BatchAccount = "batchAccount", CreditAccount = "creditAccount" } declare enum UNAccountStatus { Open = "Open", Closed = "Closed", Frozen = "Frozen" } export declare enum UNCloseReason { Fraud = "Fraud", ByCustomer = "ByCustomer" } export declare enum UNFraudReason { ACHActivity = "ACHActivity", CardActivity = "CardActivity", CheckActivity = "CheckActivity", ApplicationHistory = "ApplicationHistory", AccountActivity = "AccountActivity", ClientIdentified = "ClientIdentified", IdentityTheft = "IdentityTheft", LinkedToFraudulentCustomer = "LinkedToFraudulentCustomer" } export declare enum UNAccountMenuAction { OpenAccountDetails = "OpenAccountDetails", OpenAccountStatements = "OpenAccountStatements", DownloadBankVerificationLetter = "DownloadBankVerificationLetter" } export declare enum UNAccountMenuItem { details = "details", statements = "statements", bankVerification = "bankVerification" } export interface UNBankDetails { name: string; address: UNAddress; } export {}; //# sourceMappingURL=account.types.d.ts.map