/** * This file was generated by scripts/codegen.ts * * Original abi file: * - node_modules/@axelar-network/interchain-token-service/artifacts/contracts/interfaces/IERC20Named.sol/IERC20Named.json * * DO NOT EDIT MANUALLY */ import type { PublicContractClient } from "../../PublicContractClient"; import ABI_FILE from "./IERC20Named.abi"; export type IERC20NamedAllowanceArgs = { owner: `0x${string}`; spender: `0x${string}`; }; /** * Factory function for IERC20Named.allowance function args */ export declare const encodeIERC20NamedAllowanceArgs: ({ owner, spender, }: IERC20NamedAllowanceArgs) => readonly [`0x${string}`, `0x${string}`]; /** * Encoder function for IERC20Named.allowance function data */ export declare const encodeIERC20NamedAllowanceData: ({ owner, spender, }: IERC20NamedAllowanceArgs) => `0x${string}`; export type IERC20NamedApproveArgs = { spender: `0x${string}`; amount: bigint; }; /** * Factory function for IERC20Named.approve function args */ export declare const encodeIERC20NamedApproveArgs: ({ spender, amount, }: IERC20NamedApproveArgs) => readonly [`0x${string}`, bigint]; /** * Encoder function for IERC20Named.approve function data */ export declare const encodeIERC20NamedApproveData: ({ spender, amount, }: IERC20NamedApproveArgs) => `0x${string}`; export type IERC20NamedBalanceOfArgs = { account: `0x${string}`; }; /** * Factory function for IERC20Named.balanceOf function args */ export declare const encodeIERC20NamedBalanceOfArgs: ({ account, }: IERC20NamedBalanceOfArgs) => readonly [`0x${string}`]; /** * Encoder function for IERC20Named.balanceOf function data */ export declare const encodeIERC20NamedBalanceOfData: ({ account, }: IERC20NamedBalanceOfArgs) => `0x${string}`; export type IERC20NamedTransferArgs = { recipient: `0x${string}`; amount: bigint; }; /** * Factory function for IERC20Named.transfer function args */ export declare const encodeIERC20NamedTransferArgs: ({ recipient, amount, }: IERC20NamedTransferArgs) => readonly [`0x${string}`, bigint]; /** * Encoder function for IERC20Named.transfer function data */ export declare const encodeIERC20NamedTransferData: ({ recipient, amount, }: IERC20NamedTransferArgs) => `0x${string}`; export type IERC20NamedTransferFromArgs = { sender: `0x${string}`; recipient: `0x${string}`; amount: bigint; }; /** * Factory function for IERC20Named.transferFrom function args */ export declare const encodeIERC20NamedTransferFromArgs: ({ sender, recipient, amount, }: IERC20NamedTransferFromArgs) => readonly [`0x${string}`, `0x${string}`, bigint]; /** * Encoder function for IERC20Named.transferFrom function data */ export declare const encodeIERC20NamedTransferFromData: ({ sender, recipient, amount, }: IERC20NamedTransferFromArgs) => `0x${string}`; export declare const IERC20_NAMED_ENCODERS: { allowance: { args: ({ owner, spender, }: IERC20NamedAllowanceArgs) => readonly [`0x${string}`, `0x${string}`]; data: ({ owner, spender, }: IERC20NamedAllowanceArgs) => `0x${string}`; }; approve: { args: ({ spender, amount, }: IERC20NamedApproveArgs) => readonly [`0x${string}`, bigint]; data: ({ spender, amount, }: IERC20NamedApproveArgs) => `0x${string}`; }; balanceOf: { args: ({ account, }: IERC20NamedBalanceOfArgs) => readonly [`0x${string}`]; data: ({ account, }: IERC20NamedBalanceOfArgs) => `0x${string}`; }; transfer: { args: ({ recipient, amount, }: IERC20NamedTransferArgs) => readonly [`0x${string}`, bigint]; data: ({ recipient, amount, }: IERC20NamedTransferArgs) => `0x${string}`; }; transferFrom: { args: ({ sender, recipient, amount, }: IERC20NamedTransferFromArgs) => readonly [`0x${string}`, `0x${string}`, bigint]; data: ({ sender, recipient, amount, }: IERC20NamedTransferFromArgs) => `0x${string}`; }; }; export declare function createIERC20NamedReadClient(publicClient: PublicContractClient): { allowance(allowanceArgs: IERC20NamedAllowanceArgs): Promise; balanceOf(balanceOfArgs: IERC20NamedBalanceOfArgs): Promise; decimals(): Promise; name(): Promise; symbol(): Promise; totalSupply(): Promise; };