import type { BaseContractMethod, BaseContract } from '../abstracts'; import type { ITransactionRequestConfig, ITransactionOption, IContractInitParam, ITransactionWriteResult } from '../interfaces'; import type { POSERC1155TransferParam, TYPE_AMOUNT } from '../types'; import type { Web3SideChainClient } from './web3_side_chain_client'; export interface ITransactionConfigParam { txConfig: ITransactionRequestConfig; method?: BaseContractMethod; isWrite?: boolean; isParent?: boolean; } export declare class BaseToken { protected contractParam: IContractInitParam; protected client: Web3SideChainClient; private contract_; private chainId_; constructor(contractParam: IContractInitParam, client: Web3SideChainClient); get contractAddress(): string; getContract(): Promise; getChainId(): Promise; protected processWrite(method: BaseContractMethod, option?: ITransactionOption): Promise; protected sendTransaction(option?: ITransactionOption): Promise; protected readTransaction(option?: ITransactionOption): Promise; private validateTxOption_; protected processRead(method: BaseContractMethod, option?: ITransactionOption): Promise; protected getClient(isParent: any): import("../abstracts").BaseWeb3Client; private getContract_; protected get parentDefaultConfig(): { from: string; }; protected get childDefaultConfig(): { from: string; }; protected createTransactionConfig({ txConfig: txConfigInput, method, isParent, isWrite }: ITransactionConfigParam): Promise; protected transferERC20(to: string, amount: TYPE_AMOUNT, option?: ITransactionOption): Promise; protected transferERC721(from: string, to: string, tokenId: string, option: ITransactionOption): Promise; protected checkForNonNative(methodName: any): void; protected checkForRoot(methodName: any): void; protected checkForChild(methodName: any): void; protected checkAdapterPresent(methodName: any): void; protected transferERC1155(param: POSERC1155TransferParam, option: ITransactionOption): Promise; }