/** IMX API error shape (code + message); kept local to avoid generated-clients. */ export type APIError = { code: string; message: string; details?: string; }; export declare enum PassportErrorType { AUTHENTICATION_ERROR = "AUTHENTICATION_ERROR", INVALID_CONFIGURATION = "INVALID_CONFIGURATION", WALLET_CONNECTION_ERROR = "WALLET_CONNECTION_ERROR", NOT_LOGGED_IN_ERROR = "NOT_LOGGED_IN_ERROR", SILENT_LOGIN_ERROR = "SILENT_LOGIN_ERROR", REFRESH_TOKEN_ERROR = "REFRESH_TOKEN_ERROR", USER_REGISTRATION_ERROR = "USER_REGISTRATION_ERROR", USER_NOT_REGISTERED_ERROR = "USER_NOT_REGISTERED_ERROR", LOGOUT_ERROR = "LOGOUT_ERROR", TRANSFER_ERROR = "TRANSFER_ERROR", CREATE_ORDER_ERROR = "CREATE_ORDER_ERROR", CANCEL_ORDER_ERROR = "CANCEL_ORDER_ERROR", EXCHANGE_TRANSFER_ERROR = "EXCHANGE_TRANSFER_ERROR", CREATE_TRADE_ERROR = "CREATE_TRADE_ERROR", OPERATION_NOT_SUPPORTED_ERROR = "OPERATION_NOT_SUPPORTED_ERROR", LINK_WALLET_ALREADY_LINKED_ERROR = "LINK_WALLET_ALREADY_LINKED_ERROR", LINK_WALLET_MAX_WALLETS_LINKED_ERROR = "LINK_WALLET_MAX_WALLETS_LINKED_ERROR", LINK_WALLET_VALIDATION_ERROR = "LINK_WALLET_VALIDATION_ERROR", LINK_WALLET_DUPLICATE_NONCE_ERROR = "LINK_WALLET_DUPLICATE_NONCE_ERROR", LINK_WALLET_GENERIC_ERROR = "LINK_WALLET_GENERIC_ERROR", SERVICE_UNAVAILABLE_ERROR = "SERVICE_UNAVAILABLE_ERROR", TRANSACTION_REJECTED = "TRANSACTION_REJECTED" } export declare function isAPIError(error: any): error is APIError; export declare class PassportError extends Error { type: PassportErrorType; constructor(message: string, type: PassportErrorType); } export declare const withPassportError: (fn: () => Promise, customErrorType: PassportErrorType) => Promise;