UNPKG

@meterio/web3-context

Version:

A React Context wrapper for Blocknative OnbardJS with a couple of utility functions

36 lines (35 loc) 1.15 kB
import { BigNumber, BigNumberish, CallOverrides, ContractTransaction, Overrides } from 'ethers'; import { BigNumber as BN } from 'bignumber.js'; export declare type TokenInfo = { name?: string; symbol?: string; decimals: number; native: boolean; balance: number; balanceBN: BN; imageUri?: string; spenderAllowance?: number; approve?: (spender: string, amount: BigNumberish, overrides?: Overrides) => Promise<ContractTransaction>; transfer?: (recipient: string, amount: BigNumberish, overrides?: Overrides) => Promise<ContractTransaction>; allowance?: (owner: string, spender: string, overrides?: CallOverrides) => Promise<BigNumber>; }; export declare type Tokens = { [address: string]: TokenInfo; }; export declare function tokensReducer(tokens: Tokens, action: { type: 'addToken'; payload: { id: string; token: TokenInfo; }; } | { type: 'resetTokens'; } | { type: 'updateTokenBalanceAllowance'; payload: { id: string; balance: number; balanceBN: BN; spenderAllowance: number; }; }): Tokens;