UNPKG

@q-dev/gdk-sdk

Version:

Typescript Library to interact with GDK Contracts

584 lines (583 loc) 37.3 kB
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export type MessageActionStruct = { token: string; to: string; amount: BigNumberish; }; export type MessageActionStructOutput = [string, string, BigNumber] & { token: string; to: string; amount: BigNumber; }; export declare namespace IDAOIntegration { type ResourceRecordsStruct = { existingRole: string; resource: string; permissions: string[]; }; type ResourceRecordsStructOutput = [string, string, string[]] & { existingRole: string; resource: string; permissions: string[]; }; } export interface CrossChainTreasuryModuleInterface extends utils.Interface { functions: { "HANDLE_GAS_AMOUNT()": FunctionFragment; "MODULE_RESOURCE()": FunctionFragment; "__CrossChainTreasuryModule_init(uint32,address,bytes32,string,string)": FunctionFragment; "__CrossChainTreasuryModule_initAndSetDeps(address,uint32,address,bytes32,string,string)": FunctionFragment; "checkPermission(address,string)": FunctionFragment; "destinationDomain()": FunctionFragment; "domains()": FunctionFragment; "enrollRemoteRouter(uint32,bytes32)": FunctionFragment; "enrollRemoteRouters(uint32[],bytes32[])": FunctionFragment; "getEncodedOperation(address,address,uint256)": FunctionFragment; "getInjector()": FunctionFragment; "getResource()": FunctionFragment; "getResourceRecords()": FunctionFragment; "handle(uint32,bytes32,bytes)": FunctionFragment; "hook()": FunctionFragment; "implementation()": FunctionFragment; "interchainSecurityModule()": FunctionFragment; "localDomain()": FunctionFragment; "mailbox()": FunctionFragment; "owner()": FunctionFragment; "permissionManager()": FunctionFragment; "proxiableUUID()": FunctionFragment; "quoteDispatch(uint32,bytes)": FunctionFragment; "redeemTokens(address,uint256)": FunctionFragment; "renounceOwnership()": FunctionFragment; "routers(uint32)": FunctionFragment; "sendERC20(address,address,uint256)": FunctionFragment; "sendNative(address,uint256)": FunctionFragment; "setDependencies(address,bytes)": FunctionFragment; "setHook(address)": FunctionFragment; "setInjector(address)": FunctionFragment; "setInterchainSecurityModule(address)": FunctionFragment; "supportsInterface(bytes4)": FunctionFragment; "transferOwnership(address)": FunctionFragment; "unenrollRemoteRouter(uint32)": FunctionFragment; "unenrollRemoteRouters(uint32[])": FunctionFragment; "upgradeTo(address)": FunctionFragment; "upgradeToAndCall(address,bytes)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "HANDLE_GAS_AMOUNT" | "MODULE_RESOURCE" | "__CrossChainTreasuryModule_init" | "__CrossChainTreasuryModule_initAndSetDeps" | "checkPermission" | "destinationDomain" | "domains" | "enrollRemoteRouter" | "enrollRemoteRouters" | "getEncodedOperation" | "getInjector" | "getResource" | "getResourceRecords" | "handle" | "hook" | "implementation" | "interchainSecurityModule" | "localDomain" | "mailbox" | "owner" | "permissionManager" | "proxiableUUID" | "quoteDispatch" | "redeemTokens" | "renounceOwnership" | "routers" | "sendERC20" | "sendNative" | "setDependencies" | "setHook" | "setInjector" | "setInterchainSecurityModule" | "supportsInterface" | "transferOwnership" | "unenrollRemoteRouter" | "unenrollRemoteRouters" | "upgradeTo" | "upgradeToAndCall"): FunctionFragment; encodeFunctionData(functionFragment: "HANDLE_GAS_AMOUNT", values?: undefined): string; encodeFunctionData(functionFragment: "MODULE_RESOURCE", values?: undefined): string; encodeFunctionData(functionFragment: "__CrossChainTreasuryModule_init", values: [BigNumberish, string, BytesLike, string, string]): string; encodeFunctionData(functionFragment: "__CrossChainTreasuryModule_initAndSetDeps", values: [string, BigNumberish, string, BytesLike, string, string]): string; encodeFunctionData(functionFragment: "checkPermission", values: [string, string]): string; encodeFunctionData(functionFragment: "destinationDomain", values?: undefined): string; encodeFunctionData(functionFragment: "domains", values?: undefined): string; encodeFunctionData(functionFragment: "enrollRemoteRouter", values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "enrollRemoteRouters", values: [BigNumberish[], BytesLike[]]): string; encodeFunctionData(functionFragment: "getEncodedOperation", values: [string, string, BigNumberish]): string; encodeFunctionData(functionFragment: "getInjector", values?: undefined): string; encodeFunctionData(functionFragment: "getResource", values?: undefined): string; encodeFunctionData(functionFragment: "getResourceRecords", values?: undefined): string; encodeFunctionData(functionFragment: "handle", values: [BigNumberish, BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: "hook", values?: undefined): string; encodeFunctionData(functionFragment: "implementation", values?: undefined): string; encodeFunctionData(functionFragment: "interchainSecurityModule", values?: undefined): string; encodeFunctionData(functionFragment: "localDomain", values?: undefined): string; encodeFunctionData(functionFragment: "mailbox", values?: undefined): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "permissionManager", values?: undefined): string; encodeFunctionData(functionFragment: "proxiableUUID", values?: undefined): string; encodeFunctionData(functionFragment: "quoteDispatch", values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "redeemTokens", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "routers", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "sendERC20", values: [string, string, BigNumberish]): string; encodeFunctionData(functionFragment: "sendNative", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "setDependencies", values: [string, BytesLike]): string; encodeFunctionData(functionFragment: "setHook", values: [string]): string; encodeFunctionData(functionFragment: "setInjector", values: [string]): string; encodeFunctionData(functionFragment: "setInterchainSecurityModule", values: [string]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string; encodeFunctionData(functionFragment: "unenrollRemoteRouter", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "unenrollRemoteRouters", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string; encodeFunctionData(functionFragment: "upgradeToAndCall", values: [string, BytesLike]): string; decodeFunctionResult(functionFragment: "HANDLE_GAS_AMOUNT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "MODULE_RESOURCE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "__CrossChainTreasuryModule_init", data: BytesLike): Result; decodeFunctionResult(functionFragment: "__CrossChainTreasuryModule_initAndSetDeps", data: BytesLike): Result; decodeFunctionResult(functionFragment: "checkPermission", data: BytesLike): Result; decodeFunctionResult(functionFragment: "destinationDomain", data: BytesLike): Result; decodeFunctionResult(functionFragment: "domains", data: BytesLike): Result; decodeFunctionResult(functionFragment: "enrollRemoteRouter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "enrollRemoteRouters", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getEncodedOperation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getInjector", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getResource", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getResourceRecords", data: BytesLike): Result; decodeFunctionResult(functionFragment: "handle", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hook", data: BytesLike): Result; decodeFunctionResult(functionFragment: "implementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "interchainSecurityModule", data: BytesLike): Result; decodeFunctionResult(functionFragment: "localDomain", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mailbox", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissionManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proxiableUUID", data: BytesLike): Result; decodeFunctionResult(functionFragment: "quoteDispatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "redeemTokens", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "routers", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendERC20", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendNative", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setDependencies", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setHook", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setInjector", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setInterchainSecurityModule", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unenrollRemoteRouter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unenrollRemoteRouters", data: BytesLike): Result; decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "upgradeToAndCall", data: BytesLike): Result; events: { "AdminChanged(address,address)": EventFragment; "BeaconUpgraded(address)": EventFragment; "Initialized(uint8)": EventFragment; "MessageSent(uint32,uint32,(address,address,uint256))": EventFragment; "OwnershipTransferred(address,address)": EventFragment; "Upgraded(address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "MessageSent"): EventFragment; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; } export interface AdminChangedEventObject { previousAdmin: string; newAdmin: string; } export type AdminChangedEvent = TypedEvent<[ string, string ], AdminChangedEventObject>; export type AdminChangedEventFilter = TypedEventFilter<AdminChangedEvent>; export interface BeaconUpgradedEventObject { beacon: string; } export type BeaconUpgradedEvent = TypedEvent<[ string ], BeaconUpgradedEventObject>; export type BeaconUpgradedEventFilter = TypedEventFilter<BeaconUpgradedEvent>; export interface InitializedEventObject { version: number; } export type InitializedEvent = TypedEvent<[number], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter<InitializedEvent>; export interface MessageSentEventObject { origin: number; destination: number; action: MessageActionStructOutput; } export type MessageSentEvent = TypedEvent<[ number, number, MessageActionStructOutput ], MessageSentEventObject>; export type MessageSentEventFilter = TypedEventFilter<MessageSentEvent>; export interface OwnershipTransferredEventObject { previousOwner: string; newOwner: string; } export type OwnershipTransferredEvent = TypedEvent<[ string, string ], OwnershipTransferredEventObject>; export type OwnershipTransferredEventFilter = TypedEventFilter<OwnershipTransferredEvent>; export interface UpgradedEventObject { implementation: string; } export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; export type UpgradedEventFilter = TypedEventFilter<UpgradedEvent>; export interface CrossChainTreasuryModule extends BaseContract { contractName: "CrossChainTreasuryModule"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: CrossChainTreasuryModuleInterface; queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>; listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>; listeners(eventName?: string): Array<Listener>; removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this; removeAllListeners(eventName?: string): this; off: OnEvent<this>; on: OnEvent<this>; once: OnEvent<this>; removeListener: OnEvent<this>; functions: { HANDLE_GAS_AMOUNT(overrides?: CallOverrides): Promise<[BigNumber]>; MODULE_RESOURCE(overrides?: CallOverrides): Promise<[string]>; __CrossChainTreasuryModule_init(remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; __CrossChainTreasuryModule_initAndSetDeps(registry_: string, remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise<[boolean]>; destinationDomain(overrides?: CallOverrides): Promise<[number]>; domains(overrides?: CallOverrides): Promise<[number[]]>; enrollRemoteRouter(_domain: BigNumberish, _router: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; enrollRemoteRouters(_domains: BigNumberish[], _addresses: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; getEncodedOperation(token_: string, to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<[string]>; getInjector(overrides?: CallOverrides): Promise<[string] & { injector_: string; }>; getResource(overrides?: CallOverrides): Promise<[string]>; getResourceRecords(overrides?: CallOverrides): Promise<[ IDAOIntegration.ResourceRecordsStructOutput[] ] & { records_: IDAOIntegration.ResourceRecordsStructOutput[]; }>; handle(_origin: BigNumberish, _sender: BytesLike, _message: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<ContractTransaction>; hook(overrides?: CallOverrides): Promise<[string]>; implementation(overrides?: CallOverrides): Promise<[string]>; interchainSecurityModule(overrides?: CallOverrides): Promise<[string]>; localDomain(overrides?: CallOverrides): Promise<[number]>; mailbox(overrides?: CallOverrides): Promise<[string]>; owner(overrides?: CallOverrides): Promise<[string]>; permissionManager(overrides?: CallOverrides): Promise<[string]>; proxiableUUID(overrides?: CallOverrides): Promise<[string]>; quoteDispatch(destinationDomain_: BigNumberish, message_: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]>; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; routers(_domain: BigNumberish, overrides?: CallOverrides): Promise<[string]>; sendERC20(token_: string, to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; sendNative(to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setHook(_hook: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setInterchainSecurityModule(_module: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unenrollRemoteRouter(_domain: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unenrollRemoteRouters(_domains: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<ContractTransaction>; }; HANDLE_GAS_AMOUNT(overrides?: CallOverrides): Promise<BigNumber>; MODULE_RESOURCE(overrides?: CallOverrides): Promise<string>; __CrossChainTreasuryModule_init(remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; __CrossChainTreasuryModule_initAndSetDeps(registry_: string, remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise<boolean>; destinationDomain(overrides?: CallOverrides): Promise<number>; domains(overrides?: CallOverrides): Promise<number[]>; enrollRemoteRouter(_domain: BigNumberish, _router: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; enrollRemoteRouters(_domains: BigNumberish[], _addresses: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; getEncodedOperation(token_: string, to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<string>; getInjector(overrides?: CallOverrides): Promise<string>; getResource(overrides?: CallOverrides): Promise<string>; getResourceRecords(overrides?: CallOverrides): Promise<IDAOIntegration.ResourceRecordsStructOutput[]>; handle(_origin: BigNumberish, _sender: BytesLike, _message: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<ContractTransaction>; hook(overrides?: CallOverrides): Promise<string>; implementation(overrides?: CallOverrides): Promise<string>; interchainSecurityModule(overrides?: CallOverrides): Promise<string>; localDomain(overrides?: CallOverrides): Promise<number>; mailbox(overrides?: CallOverrides): Promise<string>; owner(overrides?: CallOverrides): Promise<string>; permissionManager(overrides?: CallOverrides): Promise<string>; proxiableUUID(overrides?: CallOverrides): Promise<string>; quoteDispatch(destinationDomain_: BigNumberish, message_: BytesLike, overrides?: CallOverrides): Promise<BigNumber>; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; routers(_domain: BigNumberish, overrides?: CallOverrides): Promise<string>; sendERC20(token_: string, to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; sendNative(to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setHook(_hook: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setInterchainSecurityModule(_module: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<boolean>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unenrollRemoteRouter(_domain: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unenrollRemoteRouters(_domains: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<ContractTransaction>; callStatic: { HANDLE_GAS_AMOUNT(overrides?: CallOverrides): Promise<BigNumber>; MODULE_RESOURCE(overrides?: CallOverrides): Promise<string>; __CrossChainTreasuryModule_init(remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: CallOverrides): Promise<void>; __CrossChainTreasuryModule_initAndSetDeps(registry_: string, remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: CallOverrides): Promise<void>; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise<boolean>; destinationDomain(overrides?: CallOverrides): Promise<number>; domains(overrides?: CallOverrides): Promise<number[]>; enrollRemoteRouter(_domain: BigNumberish, _router: BytesLike, overrides?: CallOverrides): Promise<void>; enrollRemoteRouters(_domains: BigNumberish[], _addresses: BytesLike[], overrides?: CallOverrides): Promise<void>; getEncodedOperation(token_: string, to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<string>; getInjector(overrides?: CallOverrides): Promise<string>; getResource(overrides?: CallOverrides): Promise<string>; getResourceRecords(overrides?: CallOverrides): Promise<IDAOIntegration.ResourceRecordsStructOutput[]>; handle(_origin: BigNumberish, _sender: BytesLike, _message: BytesLike, overrides?: CallOverrides): Promise<void>; hook(overrides?: CallOverrides): Promise<string>; implementation(overrides?: CallOverrides): Promise<string>; interchainSecurityModule(overrides?: CallOverrides): Promise<string>; localDomain(overrides?: CallOverrides): Promise<number>; mailbox(overrides?: CallOverrides): Promise<string>; owner(overrides?: CallOverrides): Promise<string>; permissionManager(overrides?: CallOverrides): Promise<string>; proxiableUUID(overrides?: CallOverrides): Promise<string>; quoteDispatch(destinationDomain_: BigNumberish, message_: BytesLike, overrides?: CallOverrides): Promise<BigNumber>; redeemTokens(to_: string, value_: BigNumberish, overrides?: CallOverrides): Promise<void>; renounceOwnership(overrides?: CallOverrides): Promise<void>; routers(_domain: BigNumberish, overrides?: CallOverrides): Promise<string>; sendERC20(token_: string, to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<void>; sendNative(to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<void>; setDependencies(registry_: string, arg1: BytesLike, overrides?: CallOverrides): Promise<void>; setHook(_hook: string, overrides?: CallOverrides): Promise<void>; setInjector(injector_: string, overrides?: CallOverrides): Promise<void>; setInterchainSecurityModule(_module: string, overrides?: CallOverrides): Promise<void>; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<boolean>; transferOwnership(newOwner: string, overrides?: CallOverrides): Promise<void>; unenrollRemoteRouter(_domain: BigNumberish, overrides?: CallOverrides): Promise<void>; unenrollRemoteRouters(_domains: BigNumberish[], overrides?: CallOverrides): Promise<void>; upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise<void>; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: CallOverrides): Promise<void>; }; filters: { "AdminChanged(address,address)"(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter; AdminChanged(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter; "BeaconUpgraded(address)"(beacon?: string | null): BeaconUpgradedEventFilter; BeaconUpgraded(beacon?: string | null): BeaconUpgradedEventFilter; "Initialized(uint8)"(version?: null): InitializedEventFilter; Initialized(version?: null): InitializedEventFilter; "MessageSent(uint32,uint32,(address,address,uint256))"(origin?: BigNumberish | null, destination?: BigNumberish | null, action?: null): MessageSentEventFilter; MessageSent(origin?: BigNumberish | null, destination?: BigNumberish | null, action?: null): MessageSentEventFilter; "OwnershipTransferred(address,address)"(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; "Upgraded(address)"(implementation?: string | null): UpgradedEventFilter; Upgraded(implementation?: string | null): UpgradedEventFilter; }; estimateGas: { HANDLE_GAS_AMOUNT(overrides?: CallOverrides): Promise<BigNumber>; MODULE_RESOURCE(overrides?: CallOverrides): Promise<BigNumber>; __CrossChainTreasuryModule_init(remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; __CrossChainTreasuryModule_initAndSetDeps(registry_: string, remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise<BigNumber>; destinationDomain(overrides?: CallOverrides): Promise<BigNumber>; domains(overrides?: CallOverrides): Promise<BigNumber>; enrollRemoteRouter(_domain: BigNumberish, _router: BytesLike, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; enrollRemoteRouters(_domains: BigNumberish[], _addresses: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; getEncodedOperation(token_: string, to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; getInjector(overrides?: CallOverrides): Promise<BigNumber>; getResource(overrides?: CallOverrides): Promise<BigNumber>; getResourceRecords(overrides?: CallOverrides): Promise<BigNumber>; handle(_origin: BigNumberish, _sender: BytesLike, _message: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<BigNumber>; hook(overrides?: CallOverrides): Promise<BigNumber>; implementation(overrides?: CallOverrides): Promise<BigNumber>; interchainSecurityModule(overrides?: CallOverrides): Promise<BigNumber>; localDomain(overrides?: CallOverrides): Promise<BigNumber>; mailbox(overrides?: CallOverrides): Promise<BigNumber>; owner(overrides?: CallOverrides): Promise<BigNumber>; permissionManager(overrides?: CallOverrides): Promise<BigNumber>; proxiableUUID(overrides?: CallOverrides): Promise<BigNumber>; quoteDispatch(destinationDomain_: BigNumberish, message_: BytesLike, overrides?: CallOverrides): Promise<BigNumber>; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<BigNumber>; routers(_domain: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; sendERC20(token_: string, to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; sendNative(to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; setHook(_hook: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; setInterchainSecurityModule(_module: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<BigNumber>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; unenrollRemoteRouter(_domain: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; unenrollRemoteRouters(_domains: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<BigNumber>; }; populateTransaction: { HANDLE_GAS_AMOUNT(overrides?: CallOverrides): Promise<PopulatedTransaction>; MODULE_RESOURCE(overrides?: CallOverrides): Promise<PopulatedTransaction>; __CrossChainTreasuryModule_init(remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; __CrossChainTreasuryModule_initAndSetDeps(registry_: string, remoteDomain_: BigNumberish, ism_: string, remoteRouter_: BytesLike, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>; destinationDomain(overrides?: CallOverrides): Promise<PopulatedTransaction>; domains(overrides?: CallOverrides): Promise<PopulatedTransaction>; enrollRemoteRouter(_domain: BigNumberish, _router: BytesLike, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; enrollRemoteRouters(_domains: BigNumberish[], _addresses: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; getEncodedOperation(token_: string, to_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; getInjector(overrides?: CallOverrides): Promise<PopulatedTransaction>; getResource(overrides?: CallOverrides): Promise<PopulatedTransaction>; getResourceRecords(overrides?: CallOverrides): Promise<PopulatedTransaction>; handle(_origin: BigNumberish, _sender: BytesLike, _message: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<PopulatedTransaction>; hook(overrides?: CallOverrides): Promise<PopulatedTransaction>; implementation(overrides?: CallOverrides): Promise<PopulatedTransaction>; interchainSecurityModule(overrides?: CallOverrides): Promise<PopulatedTransaction>; localDomain(overrides?: CallOverrides): Promise<PopulatedTransaction>; mailbox(overrides?: CallOverrides): Promise<PopulatedTransaction>; owner(overrides?: CallOverrides): Promise<PopulatedTransaction>; permissionManager(overrides?: CallOverrides): Promise<PopulatedTransaction>; proxiableUUID(overrides?: CallOverrides): Promise<PopulatedTransaction>; quoteDispatch(destinationDomain_: BigNumberish, message_: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; routers(_domain: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; sendERC20(token_: string, to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; sendNative(to_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; setHook(_hook: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; setInterchainSecurityModule(_module: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; unenrollRemoteRouter(_domain: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; unenrollRemoteRouters(_domains: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise<PopulatedTransaction>; }; }