UNPKG

wallets-wrapper

Version:

How to install

77 lines (76 loc) 2.14 kB
import { BlockchainEventMessage, DeviceEventMessage, TransportEventMessage } from '@trezor/connect-web'; import { BehaviorSubject } from 'rxjs'; import { AllCoins } from '../wallets/trezor'; import { EosContractCoins, ERC20Names } from '..'; import { WalletsNames } from './enums'; export interface ChainInfo { chainId: string; name: string; } export interface IProviderRpcError extends Error { message: string; code: number | string; data?: unknown; } export interface ProviderMessage { type: string; data: unknown; } export interface TransferEvent { operator?: string; from: string; to: string; values?: number[]; ids?: number[]; event: string; } export interface TransferToken { addressTo: string; value: number; } export interface TransferERC721Token { addressTo: string; tokenId: number; } export interface TransferContractToken { addressFrom?: string; addressTo: string; tokenIds?: number[]; values?: number[]; data?: string; } export interface ApproveToken { address: string; amount?: string; tokenId?: number; } export interface SetApprovalForAll { operator: string; approved: boolean; } export interface GetContractBalance { addresses?: string[]; ids?: number[]; } export interface GlobalState<T> { place: string; payload: T; } export interface AccountInfo { address?: string; balance?: number | string; coin?: AllCoins; } export interface WalletsWrapperProps { type?: WalletsNames; infuraApiKey: string; } export interface WalletStateProps { address$: BehaviorSubject<string[]>; chainId$: BehaviorSubject<ChainInfo | null>; isConnected$: BehaviorSubject<boolean>; subscriptionMessage$: BehaviorSubject<SubscriptionMessage | null>; errors$: BehaviorSubject<IProviderRpcError | null>; } export declare type SubscriptionMessage = ProviderMessage | DeviceEventMessage | TransportEventMessage | BlockchainEventMessage; export declare type CoinsNames = ERC20Names | EosContractCoins | AllCoins;