/** * This file was generated by scripts/codegen.ts * * Original abi file: * - node_modules/@axelar-network/interchain-token-service/artifacts/contracts/interfaces/ITokenManager.sol/ITokenManager.json * * DO NOT EDIT MANUALLY */ import type { PublicContractClient } from "../../PublicContractClient"; import ABI_FILE from "./ITokenManager.abi"; export type ITokenManagerAcceptOperatorshipArgs = { fromOperator: `0x${string}`; }; /** * Factory function for ITokenManager.acceptOperatorship function args */ export declare const encodeITokenManagerAcceptOperatorshipArgs: ({ fromOperator, }: ITokenManagerAcceptOperatorshipArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.acceptOperatorship function data */ export declare const encodeITokenManagerAcceptOperatorshipData: ({ fromOperator, }: ITokenManagerAcceptOperatorshipArgs) => `0x${string}`; export type ITokenManagerAddFlowInArgs = { amount: bigint; }; /** * Factory function for ITokenManager.addFlowIn function args */ export declare const encodeITokenManagerAddFlowInArgs: ({ amount, }: ITokenManagerAddFlowInArgs) => readonly [bigint]; /** * Encoder function for ITokenManager.addFlowIn function data */ export declare const encodeITokenManagerAddFlowInData: ({ amount, }: ITokenManagerAddFlowInArgs) => `0x${string}`; export type ITokenManagerAddFlowLimiterArgs = { flowLimiter: `0x${string}`; }; /** * Factory function for ITokenManager.addFlowLimiter function args */ export declare const encodeITokenManagerAddFlowLimiterArgs: ({ flowLimiter, }: ITokenManagerAddFlowLimiterArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.addFlowLimiter function data */ export declare const encodeITokenManagerAddFlowLimiterData: ({ flowLimiter, }: ITokenManagerAddFlowLimiterArgs) => `0x${string}`; export type ITokenManagerAddFlowOutArgs = { amount: bigint; }; /** * Factory function for ITokenManager.addFlowOut function args */ export declare const encodeITokenManagerAddFlowOutArgs: ({ amount, }: ITokenManagerAddFlowOutArgs) => readonly [bigint]; /** * Encoder function for ITokenManager.addFlowOut function data */ export declare const encodeITokenManagerAddFlowOutData: ({ amount, }: ITokenManagerAddFlowOutArgs) => `0x${string}`; export type ITokenManagerBurnTokenArgs = { tokenAddress_: `0x${string}`; from: `0x${string}`; amount: bigint; }; /** * Factory function for ITokenManager.burnToken function args */ export declare const encodeITokenManagerBurnTokenArgs: ({ tokenAddress_, from, amount, }: ITokenManagerBurnTokenArgs) => readonly [`0x${string}`, `0x${string}`, bigint]; /** * Encoder function for ITokenManager.burnToken function data */ export declare const encodeITokenManagerBurnTokenData: ({ tokenAddress_, from, amount, }: ITokenManagerBurnTokenArgs) => `0x${string}`; export type ITokenManagerGetTokenAddressFromParamsArgs = { params: `0x${string}`; }; /** * Factory function for ITokenManager.getTokenAddressFromParams function args */ export declare const encodeITokenManagerGetTokenAddressFromParamsArgs: ({ params, }: ITokenManagerGetTokenAddressFromParamsArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.getTokenAddressFromParams function data */ export declare const encodeITokenManagerGetTokenAddressFromParamsData: ({ params, }: ITokenManagerGetTokenAddressFromParamsArgs) => `0x${string}`; export type ITokenManagerHasRoleArgs = { account: `0x${string}`; role: number; }; /** * Factory function for ITokenManager.hasRole function args */ export declare const encodeITokenManagerHasRoleArgs: ({ account, role, }: ITokenManagerHasRoleArgs) => readonly [`0x${string}`, number]; /** * Encoder function for ITokenManager.hasRole function data */ export declare const encodeITokenManagerHasRoleData: ({ account, role, }: ITokenManagerHasRoleArgs) => `0x${string}`; export type ITokenManagerIsFlowLimiterArgs = { addr: `0x${string}`; }; /** * Factory function for ITokenManager.isFlowLimiter function args */ export declare const encodeITokenManagerIsFlowLimiterArgs: ({ addr, }: ITokenManagerIsFlowLimiterArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.isFlowLimiter function data */ export declare const encodeITokenManagerIsFlowLimiterData: ({ addr, }: ITokenManagerIsFlowLimiterArgs) => `0x${string}`; export type ITokenManagerIsOperatorArgs = { addr: `0x${string}`; }; /** * Factory function for ITokenManager.isOperator function args */ export declare const encodeITokenManagerIsOperatorArgs: ({ addr, }: ITokenManagerIsOperatorArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.isOperator function data */ export declare const encodeITokenManagerIsOperatorData: ({ addr, }: ITokenManagerIsOperatorArgs) => `0x${string}`; export type ITokenManagerMintTokenArgs = { tokenAddress_: `0x${string}`; to: `0x${string}`; amount: bigint; }; /** * Factory function for ITokenManager.mintToken function args */ export declare const encodeITokenManagerMintTokenArgs: ({ tokenAddress_, to, amount, }: ITokenManagerMintTokenArgs) => readonly [`0x${string}`, `0x${string}`, bigint]; /** * Encoder function for ITokenManager.mintToken function data */ export declare const encodeITokenManagerMintTokenData: ({ tokenAddress_, to, amount, }: ITokenManagerMintTokenArgs) => `0x${string}`; export type ITokenManagerParamsArgs = { operator_: `0x${string}`; tokenAddress_: `0x${string}`; }; /** * Factory function for ITokenManager.params function args */ export declare const encodeITokenManagerParamsArgs: ({ operator_, tokenAddress_, }: ITokenManagerParamsArgs) => readonly [`0x${string}`, `0x${string}`]; /** * Encoder function for ITokenManager.params function data */ export declare const encodeITokenManagerParamsData: ({ operator_, tokenAddress_, }: ITokenManagerParamsArgs) => `0x${string}`; export type ITokenManagerProposeOperatorshipArgs = { operator_: `0x${string}`; }; /** * Factory function for ITokenManager.proposeOperatorship function args */ export declare const encodeITokenManagerProposeOperatorshipArgs: ({ operator_, }: ITokenManagerProposeOperatorshipArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.proposeOperatorship function data */ export declare const encodeITokenManagerProposeOperatorshipData: ({ operator_, }: ITokenManagerProposeOperatorshipArgs) => `0x${string}`; export type ITokenManagerRemoveFlowLimiterArgs = { flowLimiter: `0x${string}`; }; /** * Factory function for ITokenManager.removeFlowLimiter function args */ export declare const encodeITokenManagerRemoveFlowLimiterArgs: ({ flowLimiter, }: ITokenManagerRemoveFlowLimiterArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.removeFlowLimiter function data */ export declare const encodeITokenManagerRemoveFlowLimiterData: ({ flowLimiter, }: ITokenManagerRemoveFlowLimiterArgs) => `0x${string}`; export type ITokenManagerSetFlowLimitArgs = { flowLimit_: bigint; }; /** * Factory function for ITokenManager.setFlowLimit function args */ export declare const encodeITokenManagerSetFlowLimitArgs: ({ flowLimit_, }: ITokenManagerSetFlowLimitArgs) => readonly [bigint]; /** * Encoder function for ITokenManager.setFlowLimit function data */ export declare const encodeITokenManagerSetFlowLimitData: ({ flowLimit_, }: ITokenManagerSetFlowLimitArgs) => `0x${string}`; export type ITokenManagerSetupArgs = { data: `0x${string}`; }; /** * Factory function for ITokenManager.setup function args */ export declare const encodeITokenManagerSetupArgs: ({ data, }: ITokenManagerSetupArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.setup function data */ export declare const encodeITokenManagerSetupData: ({ data, }: ITokenManagerSetupArgs) => `0x${string}`; export type ITokenManagerTransferOperatorshipArgs = { operator_: `0x${string}`; }; /** * Factory function for ITokenManager.transferOperatorship function args */ export declare const encodeITokenManagerTransferOperatorshipArgs: ({ operator_, }: ITokenManagerTransferOperatorshipArgs) => readonly [`0x${string}`]; /** * Encoder function for ITokenManager.transferOperatorship function data */ export declare const encodeITokenManagerTransferOperatorshipData: ({ operator_, }: ITokenManagerTransferOperatorshipArgs) => `0x${string}`; export declare const ITOKEN_MANAGER_ENCODERS: { acceptOperatorship: { args: ({ fromOperator, }: ITokenManagerAcceptOperatorshipArgs) => readonly [`0x${string}`]; data: ({ fromOperator, }: ITokenManagerAcceptOperatorshipArgs) => `0x${string}`; }; addFlowIn: { args: ({ amount, }: ITokenManagerAddFlowInArgs) => readonly [bigint]; data: ({ amount, }: ITokenManagerAddFlowInArgs) => `0x${string}`; }; addFlowLimiter: { args: ({ flowLimiter, }: ITokenManagerAddFlowLimiterArgs) => readonly [`0x${string}`]; data: ({ flowLimiter, }: ITokenManagerAddFlowLimiterArgs) => `0x${string}`; }; addFlowOut: { args: ({ amount, }: ITokenManagerAddFlowOutArgs) => readonly [bigint]; data: ({ amount, }: ITokenManagerAddFlowOutArgs) => `0x${string}`; }; burnToken: { args: ({ tokenAddress_, from, amount, }: ITokenManagerBurnTokenArgs) => readonly [`0x${string}`, `0x${string}`, bigint]; data: ({ tokenAddress_, from, amount, }: ITokenManagerBurnTokenArgs) => `0x${string}`; }; getTokenAddressFromParams: { args: ({ params, }: ITokenManagerGetTokenAddressFromParamsArgs) => readonly [`0x${string}`]; data: ({ params, }: ITokenManagerGetTokenAddressFromParamsArgs) => `0x${string}`; }; hasRole: { args: ({ account, role, }: ITokenManagerHasRoleArgs) => readonly [`0x${string}`, number]; data: ({ account, role, }: ITokenManagerHasRoleArgs) => `0x${string}`; }; isFlowLimiter: { args: ({ addr, }: ITokenManagerIsFlowLimiterArgs) => readonly [`0x${string}`]; data: ({ addr, }: ITokenManagerIsFlowLimiterArgs) => `0x${string}`; }; isOperator: { args: ({ addr, }: ITokenManagerIsOperatorArgs) => readonly [`0x${string}`]; data: ({ addr, }: ITokenManagerIsOperatorArgs) => `0x${string}`; }; mintToken: { args: ({ tokenAddress_, to, amount, }: ITokenManagerMintTokenArgs) => readonly [`0x${string}`, `0x${string}`, bigint]; data: ({ tokenAddress_, to, amount, }: ITokenManagerMintTokenArgs) => `0x${string}`; }; params: { args: ({ operator_, tokenAddress_, }: ITokenManagerParamsArgs) => readonly [`0x${string}`, `0x${string}`]; data: ({ operator_, tokenAddress_, }: ITokenManagerParamsArgs) => `0x${string}`; }; proposeOperatorship: { args: ({ operator_, }: ITokenManagerProposeOperatorshipArgs) => readonly [`0x${string}`]; data: ({ operator_, }: ITokenManagerProposeOperatorshipArgs) => `0x${string}`; }; removeFlowLimiter: { args: ({ flowLimiter, }: ITokenManagerRemoveFlowLimiterArgs) => readonly [`0x${string}`]; data: ({ flowLimiter, }: ITokenManagerRemoveFlowLimiterArgs) => `0x${string}`; }; setFlowLimit: { args: ({ flowLimit_, }: ITokenManagerSetFlowLimitArgs) => readonly [bigint]; data: ({ flowLimit_, }: ITokenManagerSetFlowLimitArgs) => `0x${string}`; }; setup: { args: ({ data, }: ITokenManagerSetupArgs) => readonly [`0x${string}`]; data: ({ data, }: ITokenManagerSetupArgs) => `0x${string}`; }; transferOperatorship: { args: ({ operator_, }: ITokenManagerTransferOperatorshipArgs) => readonly [`0x${string}`]; data: ({ operator_, }: ITokenManagerTransferOperatorshipArgs) => `0x${string}`; }; }; export declare function createITokenManagerReadClient(publicClient: PublicContractClient): { contractId(): Promise; flowInAmount(): Promise; flowLimit(): Promise; flowOutAmount(): Promise; getTokenAddressFromParams(getTokenAddressFromParamsArgs: ITokenManagerGetTokenAddressFromParamsArgs): Promise; hasRole(hasRoleArgs: ITokenManagerHasRoleArgs): Promise; implementationType(): Promise; interchainTokenId(): Promise<`0x${string}`>; isFlowLimiter(isFlowLimiterArgs: ITokenManagerIsFlowLimiterArgs): Promise; isOperator(isOperatorArgs: ITokenManagerIsOperatorArgs): Promise; params(paramsArgs: ITokenManagerParamsArgs): Promise; tokenAddress(): Promise<`0x${string}`>; };