import type { Address, EVMAddress, BigNumber as AssetTypeBigNumber } from "@rarible/types"; import type { Erc20AssetType, EthAssetType } from "@rarible/ethereum-api-client/build/models/AssetType"; import type { BigNumber } from "@rarible/utils"; import type { EthereumTransaction } from "@rarible/ethereum-provider"; import type { Maybe } from "@rarible/types"; import type { Ethereum } from "@rarible/ethereum-provider"; import type { RaribleEthereumApis } from "./apis"; import type { SendFunction } from "./send-transaction"; export type BalanceRequestAssetType = EthAssetType | Erc20AssetType; export type TransferBalanceAsset = { assetType: EthAssetType | Erc20AssetType; } & ({ value?: AssetTypeBigNumber; } | { valueDecimal?: AssetTypeBigNumber; }); export declare class Balances { private readonly ethereum; private readonly send; private readonly getApis; constructor(ethereum: Maybe, send: SendFunction, getApis: () => Promise); getBalance(address: EVMAddress | Address, assetType: BalanceRequestAssetType): Promise; getNormalizedTransferValue(asset: TransferBalanceAsset): Promise; transfer(address: Address | EVMAddress, asset: TransferBalanceAsset): Promise; }