import { EoAccount, IAccount } from "../models/TAccount"; import { Web3Client } from '../clients/Web3Client'; import { IToken } from '../models/IToken'; import { TAddress } from '../models/TAddress'; import { ITxWriterOptions, TxWriter } from '../txs/TxWriter'; import { ITxBuilderOptions } from '../txs/ITxBuilderOptions'; import { LoggerService } from '../loggers/LoggerService'; import { TEth } from '../models/TEth'; export declare class TokenTransferService { client: Web3Client; private logger; private gasPriorityFee?; private builderConfig; private writerConfig; private tokenService; constructor(client: Web3Client, logger?: LoggerService); $config(builderConfig: ITxBuilderOptions): this; $configWriter(writerConfig: ITxWriterOptions): this; getBalance(address: TAddress, token: string | IToken): Promise; getReceived(receipt: TEth.TxReceipt): Promise; /** Returns NULL for transaction, if no balance to transfer */ transferAll(from: EoAccount, to: TAddress, token: string | IToken): Promise; transferAllWithRemainder(from: EoAccount, to: TAddress, token: string | IToken, remainder: number | bigint): Promise; transfer(from: IAccount, to: TAddress, token: string | IToken, amount: number | bigint): Promise; getToken(token: string | IToken): Promise; isNativeToken(token: string | IToken): boolean; private transferNativeAll; private transferNative; private transferErc20All; private transferErc20; private getAmount; }