import type { TronWeb } from 'tronweb'; import type { Wallet, ContractCallParams, ContractSendParams, RawContractTxParams, EnsureAllowanceParams } from '../types'; export interface ContractContext { wallet: Wallet | null; rpcOverride?: string; apiKey?: string; } export declare function readContract(ctx: ContractContext, params: ContractCallParams, network?: string): Promise; export declare function buildUnsignedContractTx(tronWeb: TronWeb, params: ContractSendParams): Promise; export declare function buildRawContractTx(tronWeb: TronWeb, params: RawContractTxParams): Promise; export declare function requireWallet(ctx: ContractContext): Wallet; export declare function signAndBroadcastContractTx(ctx: ContractContext, unsignedTx: any, network?: string): Promise; export declare function sendContractTx(ctx: ContractContext, params: ContractSendParams & { network?: string; }): Promise; export declare function readConstantContractSolidity(tronWeb: TronWeb, contractAddress: string, functionSelector: string, parameters: { type: string; value: string; }[], issuerAddressHex: string): Promise; export declare function transferTokenTo(ctx: ContractContext, params: { network?: string; tokenAddress: string; to: string; amount: string; }): Promise; export declare function ensureTokenAllowance(ctx: ContractContext, params: EnsureAllowanceParams): Promise; //# sourceMappingURL=contracts.d.ts.map