import { ComponentErrorSeverity } from './ComponentError';
export declare enum PlaidErrorCodes {
    PLAID_SDK_LOAD_FAILED = "plaid-sdk-load-failed",
    PLAID_LINK_INIT_FAILED = "plaid-link-init-failed",
    PLAID_LINK_TOKEN_FAILED = "plaid-link-token-failed",
    PLAID_AUTHENTICATION_FAILED = "plaid-authentication-failed",
    PLAID_BANK_NOT_SUPPORTED = "plaid-bank-not-supported",
    PLAID_TOKEN_EXPIRED = "plaid-token-expired",
    PLAID_NETWORK_ERROR = "plaid-network-error",
    PLAID_USER_CANCELLED = "plaid-user-cancelled",
    PLAID_TIMEOUT = "plaid-timeout",
    PLAID_INVALID_CREDENTIALS = "plaid-invalid-credentials",
    PLAID_ACCOUNT_LOCKED = "plaid-account-locked",
    PLAID_MAINTENANCE = "plaid-maintenance",
    PLAID_RATE_LIMITED = "plaid-rate-limited"
}
export declare const PLAID_ERROR_MESSAGES: {
    "plaid-sdk-load-failed": string;
    "plaid-link-init-failed": string;
    "plaid-link-token-failed": string;
    "plaid-authentication-failed": string;
    "plaid-bank-not-supported": string;
    "plaid-token-expired": string;
    "plaid-network-error": string;
    "plaid-user-cancelled": string;
    "plaid-timeout": string;
    "plaid-invalid-credentials": string;
    "plaid-account-locked": string;
    "plaid-maintenance": string;
    "plaid-rate-limited": string;
};
export declare const PLAID_ERROR_SEVERITY: {
    "plaid-sdk-load-failed": ComponentErrorSeverity;
    "plaid-link-init-failed": ComponentErrorSeverity;
    "plaid-link-token-failed": ComponentErrorSeverity;
    "plaid-authentication-failed": ComponentErrorSeverity;
    "plaid-bank-not-supported": ComponentErrorSeverity;
    "plaid-token-expired": ComponentErrorSeverity;
    "plaid-network-error": ComponentErrorSeverity;
    "plaid-user-cancelled": ComponentErrorSeverity;
    "plaid-timeout": ComponentErrorSeverity;
    "plaid-invalid-credentials": ComponentErrorSeverity;
    "plaid-account-locked": ComponentErrorSeverity;
    "plaid-maintenance": ComponentErrorSeverity;
    "plaid-rate-limited": ComponentErrorSeverity;
};
export interface PlaidError {
    code: PlaidErrorCodes;
    message: string;
    severity: ComponentErrorSeverity;
    originalError?: any;
    retryable: boolean;
    userAction?: string;
}
