react-native-plaid-link-sdk
Version:
React Native Plaid Link SDK
540 lines (539 loc) • 21.7 kB
TypeScript
interface CommonPlaidLinkOptions {
logLevel?: LinkLogLevel;
extras?: Record<string, any>;
}
export type LinkTokenConfiguration = (CommonPlaidLinkOptions & {
token: string;
noLoadingState?: boolean;
});
export declare enum LinkLogLevel {
DEBUG = "debug",
INFO = "info",
WARN = "warn",
ERROR = "error"
}
export declare enum PlaidEnvironment {
PRODUCTION = "production",
DEVELOPMENT = "development",
SANDBOX = "sandbox"
}
export declare enum PlaidProduct {
ASSETS = "assets",
AUTH = "auth",
DEPOSIT_SWITCH = "deposit_switch",
IDENTITY = "identity",
INCOME = "income",
INVESTMENTS = "investments",
LIABILITIES = "liabilities",
LIABILITIES_REPORT = "liabilities_report",
PAYMENT_INITIATION = "payment_initiation",
TRANSACTIONS = "transactions"
}
export declare enum LinkAccountType {
CREDIT = "credit",
DEPOSITORY = "depository",
INVESTMENT = "investment",
LOAN = "loan",
OTHER = "other"
}
export declare enum LinkAccountSubtypes {
ALL = "all",
CREDIT_CARD = "credit card",
PAYPAL = "paypal",
AUTO = "auto",
BUSINESS = "business",
COMMERCIAL = "commercial",
CONSTRUCTION = "construction",
CONSUMER = "consumer",
HOME_EQUITY = "home equity",
LINE_OF_CREDIT = "line of credit",
LOAN = "loan",
MORTGAGE = "mortgage",
OVERDRAFT = "overdraft",
STUDENT = "student",
CASH_MANAGEMENT = "cash management",
CD = "cd",
CHECKING = "checking",
EBT = "ebt",
HSA = "hsa",
MONEY_MARKET = "money market",
PREPAID = "prepaid",
SAVINGS = "savings",
FOUR_0_1_A = "401a",
FOUR_0_1_K = "401k",
FOUR_0_3_B = "403B",
FOUR_5_7_B = "457b",
FIVE_2_9 = "529",
BROKERAGE = "brokerage",
CASH_ISA = "cash isa",
EDUCATION_SAVINGS_ACCOUNT = "education savings account",
FIXED_ANNUNITY = "fixed annuity",
GIC = "gic",
HEALTH_REIMBURSEMENT_ARRANGEMENT = "health reimbursement arrangement",
IRA = "ira",
ISA = "isa",
KEOGH = "keogh",
LIF = "lif",
LIRA = "lira",
LRIF = "lrif",
LRSP = "lrsp",
MUTUAL_FUND = "mutual fund",
NON_TAXABLE_BROKERAGE_ACCOUNT = "non-taxable brokerage account",
PENSION = "pension",
PLAN = "plan",
PRIF = "prif",
PROFIT_SHARING_PLAN = "profit sharing plan",
RDSP = "rdsp",
RESP = "resp",
RETIREMENT = "retirement",
RLIF = "rlif",
ROTH_401K = "roth 401k",
ROTH = "roth",
RRIF = "rrif",
RRSP = "rrsp",
SARSEP = "sarsep",
SEP_IRA = "sep ira",
SIMPLE_IRA = "simple ira",
SIPP = "sipp",
STOCK_PLAN = "stock plan",
TFSA = "tfsa",
THRIFT_SAVINGS_PLAN = "thrift savings plan",
TRUST = "trust",
UGMA = "ugma",
UTMA = "utma",
VARIABLE_ANNUITY = "variable annuity"
}
export interface LinkAccountSubtype {
}
export declare class LinkAccountSubtypeCredit implements LinkAccountSubtype {
readonly type: LinkAccountType;
readonly subtype: LinkAccountSubtype;
static readonly ALL: LinkAccountSubtypeCredit;
static readonly CREDIT_CARD: LinkAccountSubtypeCredit;
static readonly PAYPAL: LinkAccountSubtypeCredit;
private constructor();
}
export declare class LinkAccountSubtypeDepository implements LinkAccountSubtype {
readonly type: LinkAccountType;
readonly subtype: LinkAccountSubtype;
static readonly ALL: LinkAccountSubtypeDepository;
static readonly CASH_MANAGEMENT: LinkAccountSubtypeDepository;
static readonly CD: LinkAccountSubtypeDepository;
static readonly CHECKING: LinkAccountSubtypeDepository;
static readonly EBT: LinkAccountSubtypeDepository;
static readonly HSA: LinkAccountSubtypeDepository;
static readonly MONEY_MARKET: LinkAccountSubtypeDepository;
static readonly PAYPAL: LinkAccountSubtypeDepository;
static readonly PREPAID: LinkAccountSubtypeDepository;
static readonly SAVINGS: LinkAccountSubtypeDepository;
private constructor();
}
export declare class LinkAccountSubtypeInvestment implements LinkAccountSubtype {
readonly type: LinkAccountType;
readonly subtype: LinkAccountSubtype;
static readonly ALL: LinkAccountSubtypeInvestment;
static readonly BROKERAGE: LinkAccountSubtypeInvestment;
static readonly CASH_ISA: LinkAccountSubtypeInvestment;
static readonly EDUCATION_SAVINGS_ACCOUNT: LinkAccountSubtypeInvestment;
static readonly FIXED_ANNUNITY: LinkAccountSubtypeInvestment;
static readonly GIC: LinkAccountSubtypeInvestment;
static readonly HEALTH_REIMBURSEMENT_ARRANGEMENT: LinkAccountSubtypeInvestment;
static readonly HSA: LinkAccountSubtypeInvestment;
static readonly INVESTMENT_401A: LinkAccountSubtypeInvestment;
static readonly INVESTMENT_401K: LinkAccountSubtypeInvestment;
static readonly INVESTMENT_403B: LinkAccountSubtypeInvestment;
static readonly INVESTMENT_457B: LinkAccountSubtypeInvestment;
static readonly INVESTMENT_529: LinkAccountSubtypeInvestment;
static readonly IRA: LinkAccountSubtypeInvestment;
static readonly ISA: LinkAccountSubtypeInvestment;
static readonly KEOGH: LinkAccountSubtypeInvestment;
static readonly LIF: LinkAccountSubtypeInvestment;
static readonly LIRA: LinkAccountSubtypeInvestment;
static readonly LRIF: LinkAccountSubtypeInvestment;
static readonly LRSP: LinkAccountSubtypeInvestment;
static readonly MUTUAL_FUND: LinkAccountSubtypeInvestment;
static readonly NON_TAXABLE_BROKERAGE_ACCOUNT: LinkAccountSubtypeInvestment;
static readonly PENSION: LinkAccountSubtypeInvestment;
static readonly PLAN: LinkAccountSubtypeInvestment;
static readonly PRIF: LinkAccountSubtypeInvestment;
static readonly PROFIT_SHARING_PLAN: LinkAccountSubtypeInvestment;
static readonly RDSP: LinkAccountSubtypeInvestment;
static readonly RESP: LinkAccountSubtypeInvestment;
static readonly RETIREMENT: LinkAccountSubtypeInvestment;
static readonly RLIF: LinkAccountSubtypeInvestment;
static readonly ROTH: LinkAccountSubtypeInvestment;
static readonly ROTH_401K: LinkAccountSubtypeInvestment;
static readonly RRIF: LinkAccountSubtypeInvestment;
static readonly RRSP: LinkAccountSubtypeInvestment;
static readonly SARSEP: LinkAccountSubtypeInvestment;
static readonly SEP_IRA: LinkAccountSubtypeInvestment;
static readonly SIMPLE_IRA: LinkAccountSubtypeInvestment;
static readonly SIIP: LinkAccountSubtypeInvestment;
static readonly STOCK_PLAN: LinkAccountSubtypeInvestment;
static readonly TFSA: LinkAccountSubtypeInvestment;
static readonly THRIFT_SAVINGS_PLAN: LinkAccountSubtypeInvestment;
static readonly TRUST: LinkAccountSubtypeInvestment;
static readonly UGMA: LinkAccountSubtypeInvestment;
static readonly UTMA: LinkAccountSubtypeInvestment;
static readonly VARIABLE_ANNUITY: LinkAccountSubtypeInvestment;
private constructor();
}
export declare class LinkAccountSubtypeLoan implements LinkAccountSubtype {
readonly type: LinkAccountType;
readonly subtype: LinkAccountSubtype;
static readonly ALL: LinkAccountSubtypeLoan;
static readonly AUTO: LinkAccountSubtypeLoan;
static readonly BUSINESS: LinkAccountSubtypeLoan;
static readonly COMMERCIAL: LinkAccountSubtypeLoan;
static readonly CONSTRUCTION: LinkAccountSubtypeLoan;
static readonly CONSUMER: LinkAccountSubtypeLoan;
static readonly HOME_EQUITY: LinkAccountSubtypeLoan;
static readonly LINE_OF_CREDIT: LinkAccountSubtypeLoan;
static readonly LOAN: LinkAccountSubtypeLoan;
static readonly MORTGAGE: LinkAccountSubtypeLoan;
static readonly OVERDRAFT: LinkAccountSubtypeLoan;
static readonly STUDENT: LinkAccountSubtypeLoan;
private constructor();
}
export declare class LinkAccountSubtypeUnknown implements LinkAccountSubtype {
readonly type: string;
readonly subtype: string;
constructor(type: string, subtype: string);
}
export interface LinkSuccess {
publicToken: string;
metadata: LinkSuccessMetadata;
}
export interface LinkSuccessMetadata {
institution?: LinkInstitution;
accounts: LinkAccount[];
linkSessionId: string;
metadataJson?: string;
}
export interface LinkAccount {
id: string;
name?: string;
mask?: string;
type: LinkAccountType;
subtype: LinkAccountSubtype;
verificationStatus?: LinkAccountVerificationStatus;
}
export declare enum LinkAccountVerificationStatus {
PENDING_AUTOMATIC_VERIFICATION = "pending_automatic_verification",
PENDING_MANUAL_VERIFICATION = "pending_manual_verification",
MANUALLY_VERIFIED = "manually_verified"
}
export interface LinkInstitution {
id: string;
name: string;
}
export interface LinkExit {
error?: LinkError;
metadata: LinkExitMetadata;
}
export interface LinkExitMetadata {
status?: LinkExitMetadataStatus;
institution?: LinkInstitution;
linkSessionId: string;
requestId: string;
metadataJson?: string;
}
export declare enum LinkExitMetadataStatus {
CONNECTED = "connected",
CHOOSE_DEVICE = "choose_device",
REQUIRES_ACCOUNT_SELECTION = "requires_account_selection",
REQUIRES_CODE = "requires_code",
REQUIRES_CREDENTIALS = "requires_credentials",
REQUIRES_EXTERNAL_ACTION = "requires_external_action",
REQUIRES_OAUTH = "requires_oauth",
REQUIRES_QUESTIONS = "requires_questions",
REQUIRES_RECAPTCHA = "requires_recaptcha",
REQUIRES_SELECTIONS = "requires_selections",
REQUIRES_DEPOSIT_SWITCH_ALLOCATION_CONFIGURATION = "requires_deposit_switch_allocation_configuration",
REQUIRES_DEPOSIT_SWITCH_ALLOCATION_SELECTION = "requires_deposit_switch_allocation_selection"
}
export interface LinkError {
errorCode: LinkErrorCode;
errorType: LinkErrorType;
errorMessage: string;
/** @deprecated DO NOT USE, data not guaranteed. Use `displayMessage` instead */
errorDisplayMessage?: string;
displayMessage?: string;
errorJson?: string;
}
export declare enum LinkErrorCode {
INVALID_CREDENTIALS = "INVALID_CREDENTIALS",
INVALID_MFA = "INVALID_MFA",
ITEM_LOGIN_REQUIRED = "ITEM_LOGIN_REQUIRED",
INSUFFICIENT_CREDENTIALS = "INSUFFICIENT_CREDENTIALS",
ITEM_LOCKED = "ITEM_LOCKED",
USER_SETUP_REQUIRED = "USER_SETUP_REQUIRED",
MFA_NOT_SUPPORTED = "MFA_NOT_SUPPORTED",
INVALID_SEND_METHOD = "INVALID_SEND_METHOD",
NO_ACCOUNTS = "NO_ACCOUNTS",
ITEM_NOT_SUPPORTED = "ITEM_NOT_SUPPORTED",
TOO_MANY_VERIFICATION_ATTEMPTS = "TOO_MANY_VERIFICATION_ATTEMPTS",
INVALD_UPDATED_USERNAME = "INVALD_UPDATED_USERNAME",
INVALID_UPDATED_USERNAME = "INVALID_UPDATED_USERNAME",
ITEM_NO_ERROR = "ITEM_NO_ERROR",
item_no_error = "item-no-error",
NO_AUTH_ACCOUNTS = "NO_AUTH_ACCOUNTS",
NO_INVESTMENT_ACCOUNTS = "NO_INVESTMENT_ACCOUNTS",
NO_INVESTMENT_AUTH_ACCOUNTS = "NO_INVESTMENT_AUTH_ACCOUNTS",
NO_LIABILITY_ACCOUNTS = "NO_LIABILITY_ACCOUNTS",
PRODUCTS_NOT_SUPPORTED = "PRODUCTS_NOT_SUPPORTED",
ITEM_NOT_FOUND = "ITEM_NOT_FOUND",
ITEM_PRODUCT_NOT_READY = "ITEM_PRODUCT_NOT_READY",
INSTITUTION_DOWN = "INSTITUTION_DOWN",
INSTITUTION_NOT_RESPONDING = "INSTITUTION_NOT_RESPONDING",
INSTITUTION_NOT_AVAILABLE = "INSTITUTION_NOT_AVAILABLE",
INSTITUTION_NO_LONGER_SUPPORTED = "INSTITUTION_NO_LONGER_SUPPORTED",
INTERNAL_SERVER_ERROR = "INTERNAL_SERVER_ERROR",
PLANNED_MAINTENANCE = "PLANNED_MAINTENANCE",
PRODUCT_NOT_ENABLED = "PRODUCT_NOT_ENABLED",
DATA_UNAVAILABLE = "DATA_UNAVAILABLE",
ASSET_PRODUCT_NOT_READY = "ASSET_PRODUCT_NOT_READY",
ASSET_REPORT_GENERATION_FAILED = "ASSET_REPORT_GENERATION_FAILED",
INVALID_PARENT = "INVALID_PARENT",
INSIGHTS_NOT_ENABLED = "INSIGHTS_NOT_ENABLED",
INSIGHTS_PREVIOUSLY_NOT_ENABLED = "INSIGHTS_PREVIOUSLY_NOT_ENABLED",
BANK_TRANSFER_LIMIT_EXCEEDED = "BANK_TRANSFER_LIMIT_EXCEEDED",
BANK_TRANSFER_MISSING_ORIGINATION_ACCOUNT = "BANK_TRANSFER_MISSING_ORIGINATION_ACCOUNT",
BANK_TRANSFER_INVALID_ORIGINATION_ACCOUNT = "BANK_TRANSFER_INVALID_ORIGINATION_ACCOUNT",
BANK_TRANSFER_ACCOUNT_BLOCKED = "BANK_TRANSFER_ACCOUNT_BLOCKED",
BANK_TRANSFER_INSUFFICIENT_FUNDS = "BANK_TRANSFER_INSUFFICIENT_FUNDS",
BANK_TRANSFER_NOT_CANCELLABLE = "BANK_TRANSFER_NOT_CANCELLABLE",
BANK_TRANSFER_UNSUPPORTED_ACCOUNT_TYPE = "BANK_TRANSFER_UNSUPPORTED_ACCOUNT_TYPE",
BANK_TRANSFER_UNSUPPORTED_ENVIRONMENT = "BANK_TRANSFER_UNSUPPORTED_ENVIRONMENT",
SANDBOX_PRODUCT_NOT_ENABLED = "SANDBOX_PRODUCT_NOT_ENABLED",
SANDBOX_WEBHOOK_INVALID = "SANDBOX_WEBHOOK_INVALID",
SANDBOX_BANK_TRANSFER_EVENT_TRANSITION_INVALID = "SANDBOX_BANK_TRANSFER_EVENT_TRANSITION_INVALID",
MISSING_FIELDS = "MISSING_FIELDS",
UNKNOWN_FIELDS = "UNKNOWN_FIELDS",
INVALID_FIELD = "INVALID_FIELD",
INCOMPATIBLE_API_VERSION = "INCOMPATIBLE_API_VERSION",
INVALID_BODY = "INVALID_BODY",
INVALID_HEADERS = "INVALID_HEADERS",
NOT_FOUND = "NOT_FOUND",
NO_LONGER_AVAILABLE = "NO_LONGER_AVAILABLE",
SANDBOX_ONLY = "SANDBOX_ONLY",
INVALID_ACCOUNT_NUMBER = "INVALID_ACCOUNT_NUMBER",
INCORRECT_DEPOSIT_AMOUNTS = "INCORRECT_DEPOSIT_AMOUNTS",
UNAUTHORIZED_ENVIRONMENT = "UNAUTHORIZED_ENVIRONMENT",
INVALID_PRODUCT = "INVALID_PRODUCT",
UNAUTHORIZED_ROUTE_ACCESS = "UNAUTHORIZED_ROUTE_ACCESS",
DIRECT_INTEGRATION_NOT_ENABLED = "DIRECT_INTEGRATION_NOT_ENABLED",
INVALID_API_KEYS = "INVALID_API_KEYS",
INVALID_ACCESS_TOKEN = "INVALID_ACCESS_TOKEN",
INVALID_PUBLIC_TOKEN = "INVALID_PUBLIC_TOKEN",
INVALID_LINK_TOKEN = "INVALID_LINK_TOKEN",
INVALID_PROCESSOR_TOKEN = "INVALID_PROCESSOR_TOKEN",
INVALID_AUDIT_COPY_TOKEN = "INVALID_AUDIT_COPY_TOKEN",
INVALID_ACCOUNT_ID = "INVALID_ACCOUNT_ID",
MICRODEPOSITS_ALREADY_VERIFIED = "MICRODEPOSITS_ALREADY_VERIFIED",
PLAID_DIRECT_ITEM_IMPORT_RETURNED_INVALID_MFA = "PLAID_DIRECT_ITEM_IMPORT_RETURNED_INVALID_MFA",
ACCOUNTS_LIMIT = "ACCOUNTS_LIMIT",
ADDITION_LIMIT = "ADDITION_LIMIT",
AUTH_LIMIT = "AUTH_LIMIT",
BALANCE_LIMIT = "BALANCE_LIMIT",
IDENTITY_LIMIT = "IDENTITY_LIMIT",
ITEM_GET_LIMIT = "ITEM_GET_LIMIT",
RATE_LIMIT = "RATE_LIMIT",
TRANSACTIONS_LIMIT = "TRANSACTIONS_LIMIT",
RECAPTCHA_REQUIRED = "RECAPTCHA_REQUIRED",
RECAPTCHA_BAD = "RECAPTCHA_BAD",
INCORRECT_OAUTH_NONCE = "INCORRECT_OAUTH_NONCE",
OAUTH_STATE_ID_ALREADY_PROCESSED = "OAUTH_STATE_ID_ALREADY_PROCESSED"
}
export declare enum LinkErrorType {
BANK_TRANSFER = "BANK_TRANSFER_ERROR",
INVALID_REQUEST = "INVALID_REQUEST",
INVALID_RESULT = "INVALID_RESULT",
INVALID_INPUT = "INVALID_INPUT",
INSTITUTION_ERROR = "INSTITUTION_ERROR",
RATE_LIMIT_EXCEEDED = "RATE_LIMIT_EXCEEDED",
API_ERROR = "API_ERROR",
ITEM_ERROR = "ITEM_ERROR",
AUTH_ERROR = "AUTH_ERROR",
ASSET_REPORT_ERROR = "ASSET_REPORT_ERROR",
SANDBOX_ERROR = "SANDBOX_ERROR",
RECAPTCHA_ERROR = "RECAPTCHA_ERROR",
OAUTH_ERROR = "OAUTH_ERROR"
}
export type LinkEventListener = (linkEvent: LinkEvent) => void;
export interface LinkEvent {
eventName: LinkEventName;
metadata: LinkEventMetadata;
}
export interface LinkEventMetadata {
accountNumberMask?: string;
linkSessionId: string;
mfaType?: string;
requestId?: string;
viewName: LinkEventViewName;
errorCode?: string;
errorMessage?: string;
errorType?: string;
exitStatus?: string;
institutionId?: string;
institutionName?: string;
institutionSearchQuery?: string;
isUpdateMode?: string;
matchReason?: string;
selection?: null | string;
timestamp: string;
}
export declare enum LinkEventName {
AUTO_SELECT_SAVED_INSTITUTION = "AUTO_SELECT_SAVED_INSTITUTION",
BANK_INCOME_INSIGHTS_COMPLETED = "BANK_INCOME_INSIGHTS_COMPLETED",
CLOSE_OAUTH = "CLOSE_OAUTH",
CONNECT_NEW_INSTITUTION = "CONNECT_NEW_INSTITUTION",
ERROR = "ERROR",
EXIT = "EXIT",
FAIL_OAUTH = "FAIL_OAUTH",
HANDOFF = "HANDOFF",
IDENTITY_VERIFICATION_CLOSE_UI = "IDENTITY_VERIFICATION_CLOSE_UI",
IDENTITY_VERIFICATION_CREATE_SESSION = "IDENTITY_VERIFICATION_CREATE_SESSION",
IDENTITY_VERIFICATION_FAIL_SESSION = "IDENTITY_VERIFICATION_FAIL_SESSION",
IDENTITY_VERIFICATION_FAIL_STEP = "IDENTITY_VERIFICATION_FAIL_STEP",
IDENTITY_VERIFICATION_OPEN_UI = "IDENTITY_VERIFICATION_OPEN_UI",
IDENTITY_VERIFICATION_PASS_SESSION = "IDENTITY_VERIFICATION_PASS_SESSION",
IDENTITY_VERIFICATION_PASS_STEP = "IDENTITY_VERIFICATION_PASS_STEP",
IDENTITY_VERIFICATION_PENDING_REVIEW_SESSION = "IDENTITY_VERIFICATION_PENDING_REVIEW_SESSION",
IDENTITY_VERIFICATION_PENDING_REVIEW_STEP = "IDENTITY_VERIFICATION_PENDING_REVIEW_STEP",
IDENTITY_VERIFICATION_RESUME_SESSION = "IDENTITY_VERIFICATION_RESUME_SESSION",
IDENTITY_VERIFICATION_RESUME_UI = "IDENTITY_VERIFICATION_RESUME_UI",
IDENTITY_VERIFICATION_START_STEP = "IDENTITY_VERIFICATION_START_STEP",
LAYER_NOT_AVAILABLE = "LAYER_NOT_AVAILABLE",
LAYER_READY = "LAYER_READY",
MATCHED_CONSENT = "MATCHED_CONSENT",
MATCHED_SELECT_INSTITUTION = "MATCHED_SELECT_INSTITUTION",
MATCHED_SELECT_VERIFY_METHOD = "MATCHED_SELECT_VERIFY_METHOD",
OPEN = "OPEN",
OPEN_MY_PLAID = "OPEN_MY_PLAID",
OPEN_OAUTH = "OPEN_OAUTH",
PLAID_CHECK_PANE = "PLAID_CHECK_PANE",
PROFILE_ELIGIBILITY_CHECK_ERROR = "PROFILE_ELIGIBILITY_CHECK_ERROR",
PROFILE_ELIGIBILITY_CHECK_READY = "PROFILE_ELIGIBILITY_CHECK_READY",
REMEMBER_ME_DISABLED = "REMEMBER_ME_DISABLED",
REMEMBER_ME_ENABLED = "REMEMBER_ME_ENABLED",
REMEMBER_ME_HOLDOUT = "REMEMBER_ME_HOLDOUT",
SEARCH_INSTITUTION = "SEARCH_INSTITUTION",
SELECT_AUTH_TYPE = "SELECT_AUTH_TYPE",
SELECT_BRAND = "SELECT_BRAND",
SELECT_DEGRADED_INSTITUTION = "SELECT_DEGRADED_INSTITUTION",
SELECT_DOWN_INSTITUTION = "SELECT_DOWN_INSTITUTION",
SELECT_FILTERED_INSTITUTION = "SELECT_FILTERED_INSTITUTION",
SELECT_INSTITUTION = "SELECT_INSTITUTION",
SELECT_SAVED_ACCOUNT = "SELECT_SAVED_ACCOUNT",
SELECT_SAVED_INSTITUTION = "SELECT_SAVED_INSTITUTION",
SKIP_SUBMIT_EMAIL = "SKIP_SUBMIT_EMAIL",
SKIP_SUBMIT_PHONE = "SKIP_SUBMIT_PHONE",
SUBMIT_ACCOUNT_NUMBER = "SUBMIT_ACCOUNT_NUMBER",
SUBMIT_CREDENTIALS = "SUBMIT_CREDENTIALS",
SUBMIT_DOCUMENTS = "SUBMIT_DOCUMENTS",
SUBMIT_DOCUMENTS_ERROR = "SUBMIT_DOCUMENTS_ERROR",
SUBMIT_DOCUMENTS_SUCCESS = "SUBMIT_DOCUMENTS_SUCCESS",
SUBMIT_EMAIL = "SUBMIT_EMAIL",
SUBMIT_MFA = "SUBMIT_MFA",
SUBMIT_PHONE = "SUBMIT_PHONE",
SUBMIT_ROUTING_NUMBER = "SUBMIT_ROUTING_NUMBER",
TRANSITION_VIEW = "TRANSITION_VIEW",
VERIFY_PHONE = "VERIFY_PHONE",
VIEW_DATA_TYPES = "VIEW_DATA_TYPES"
}
export declare enum LinkEventViewName {
ACCEPT_TOS = "ACCEPT_TOS",
CONNECTED = "CONNECTED",
CONSENT = "CONSENT",
CREDENTIAL = "CREDENTIAL",
DATA_TRANSPARENCY = "DATA_TRANSPARENCY",
DATA_TRANSPARENCY_CONSENT = "DATA_TRANSPARENCY_CONSENT",
DOCUMENTARY_VERIFICATION = "DOCUMENTARY_VERIFICATION",
ERROR = "ERROR",
EXIT = "EXIT",
KYC_CHECK = "KYC_CHECK",
SELFIE_CHECK = "SELFIE_CHECK",
LOADING = "LOADING",
MATCHED_CONSENT = "MATCHED_CONSENT",
MATCHED_CREDENTIAL = "MATCHED_CREDENTIAL",
MATCHED_MFA = "MATCHED_MFA",
MFA = "MFA",
NUMBERS = "NUMBERS",
NUMBERS_SELECT_INSTITUTION = "NUMBERS_SELECT_INSTITUTION",
OAUTH = "OAUTH",
RECAPTCHA = "RECAPTCHA",
RISK_CHECK = "RISK_CHECK",
SCREENING = "SCREENING",
SELECT_ACCOUNT = "SELECT_ACCOUNT",
SELECT_AUTH_TYPE = "SELECT_AUTH_TYPE",
SUBMIT_EMAIL = "SUBMIT_EMAIL",
SUBMIT_PHONE = "SUBMIT_PHONE",
VERIFY_PHONE = "VERIFY_PHONE",
SELECT_SAVED_INSTITUTION = "SELECT_SAVED_INSTITUTION",
SELECT_SAVED_ACCOUNT = "SELECT_SAVED_ACCOUNT",
SELECT_BRAND = "SELECT_BRAND",
SELECT_INSTITUTION = "SELECT_INSTITUTION",
SUBMIT_DOCUMENTS = "SUBMIT_DOCUMENTS",
SUBMIT_DOCUMENTS_SUCCESS = "SUBMIT_DOCUMENTS_SUCCESS",
SUBMIT_DOCUMENTS_ERROR = "SUBMIT_DOCUMENTS_ERROR",
UPLOAD_DOCUMENTS = "UPLOAD_DOCUMENTS",
VERIFY_EMAIL = "VERIFY_EMAIL",
VERIFY_SMS = "VERIFY_SMS"
}
export declare enum LinkIOSPresentationStyle {
FULL_SCREEN = "FULL_SCREEN",
MODAL = "MODAL"
}
export type LinkSuccessListener = (LinkSuccess: LinkSuccess) => void;
export type LinkExitListener = (LinkExit: LinkExit) => void;
export type LinkOnEventListener = (LinkEvent: LinkEvent) => void;
export interface PlaidLinkProps {
tokenConfig: LinkTokenConfiguration;
onSuccess: LinkSuccessListener;
onExit?: LinkExitListener;
iOSPresentationStyle?: LinkIOSPresentationStyle;
logLevel?: LinkLogLevel;
onPress?(): any;
}
export interface LinkOpenProps {
onSuccess: LinkSuccessListener;
onExit?: LinkExitListener;
iOSPresentationStyle?: LinkIOSPresentationStyle;
logLevel?: LinkLogLevel;
}
export type PlaidLinkComponentProps = (PlaidLinkProps & {
children: React.ReactNode;
});
export declare enum FinanceKitErrorType {
InvalidToken = 0,
PermissionError = 1,
LinkApiError = 2,
PermissionAccessError = 3,
Unknown = 4
}
interface InvalidTokenError {
type: FinanceKitErrorType.InvalidToken;
message: string;
}
interface PermissionError {
type: FinanceKitErrorType.PermissionError;
message: string;
}
interface LinkApiError {
type: FinanceKitErrorType.LinkApiError;
message: string;
}
interface PermissionAccessError {
type: FinanceKitErrorType.PermissionAccessError;
message: string;
}
interface UnknownError {
type: FinanceKitErrorType.Unknown;
message: string;
}
export type FinanceKitError = InvalidTokenError | PermissionError | LinkApiError | PermissionAccessError | UnknownError;
export interface SubmissionData {
phoneNumber?: string;
}
export {};