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 declare namespace ICPCrossChainTreasuryHub { type EVMMessageDataStruct = { token: string; to: string; amount: BigNumberish; destinationChain: string; }; type EVMMessageDataStructOutput = [ string, string, BigNumber, string ] & { token: string; to: string; amount: BigNumber; destinationChain: string; }; type CanisterConnectionDataStruct = { rpcUrl: string; chainId: BigNumberish; treasuryAddress: string; }; type CanisterConnectionDataStructOutput = [ string, BigNumber, string ] & { rpcUrl: string; chainId: BigNumber; treasuryAddress: string; }; } 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 ICPCrossChainTreasuryHubInterface extends utils.Interface { functions: { "MODULE_RESOURCE()": FunctionFragment; "__ICPCrossChainTreasuryHub_init(string,string)": FunctionFragment; "__ICPCrossChainTreasuryHub_initAndSetDeps(address,string,string)": FunctionFragment; "checkPermission(address,string)": FunctionFragment; "destinationToData(string)": FunctionFragment; "evmMessages(uint256)": FunctionFragment; "getDestinationChainData(string)": FunctionFragment; "getEVMMessage(uint256)": FunctionFragment; "getInjector()": FunctionFragment; "getNextEVMMessageId()": FunctionFragment; "getProposalKey(address,uint256)": FunctionFragment; "getProposalMessageId(address,uint256)": FunctionFragment; "getResource()": FunctionFragment; "getResourceRecords()": FunctionFragment; "implementation()": FunctionFragment; "newModuleAddress()": FunctionFragment; "nextEVMMessageId()": FunctionFragment; "permissionManager()": FunctionFragment; "proposalToMessageId(bytes32)": FunctionFragment; "proxiableUUID()": FunctionFragment; "redeemTokens(address,uint256)": FunctionFragment; "sendERC20EVM(address,address,uint256,string)": FunctionFragment; "sendNativeEVM(address,uint256,string)": FunctionFragment; "setCanisterModuleAddress(address)": FunctionFragment; "setDependencies(address,bytes)": FunctionFragment; "setDestinationChainData(string,string,address)": FunctionFragment; "setInjector(address)": FunctionFragment; "supportsInterface(bytes4)": FunctionFragment; "upgradeTo(address)": FunctionFragment; "upgradeToAndCall(address,bytes)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "MODULE_RESOURCE" | "__ICPCrossChainTreasuryHub_init" | "__ICPCrossChainTreasuryHub_initAndSetDeps" | "checkPermission" | "destinationToData" | "evmMessages" | "getDestinationChainData" | "getEVMMessage" | "getInjector" | "getNextEVMMessageId" | "getProposalKey" | "getProposalMessageId" | "getResource" | "getResourceRecords" | "implementation" | "newModuleAddress" | "nextEVMMessageId" | "permissionManager" | "proposalToMessageId" | "proxiableUUID" | "redeemTokens" | "sendERC20EVM" | "sendNativeEVM" | "setCanisterModuleAddress" | "setDependencies" | "setDestinationChainData" | "setInjector" | "supportsInterface" | "upgradeTo" | "upgradeToAndCall"): FunctionFragment; encodeFunctionData(functionFragment: "MODULE_RESOURCE", values?: undefined): string; encodeFunctionData(functionFragment: "__ICPCrossChainTreasuryHub_init", values: [string, string]): string; encodeFunctionData(functionFragment: "__ICPCrossChainTreasuryHub_initAndSetDeps", values: [string, string, string]): string; encodeFunctionData(functionFragment: "checkPermission", values: [string, string]): string; encodeFunctionData(functionFragment: "destinationToData", values: [string]): string; encodeFunctionData(functionFragment: "evmMessages", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getDestinationChainData", values: [string]): string; encodeFunctionData(functionFragment: "getEVMMessage", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getInjector", values?: undefined): string; encodeFunctionData(functionFragment: "getNextEVMMessageId", values?: undefined): string; encodeFunctionData(functionFragment: "getProposalKey", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "getProposalMessageId", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "getResource", values?: undefined): string; encodeFunctionData(functionFragment: "getResourceRecords", values?: undefined): string; encodeFunctionData(functionFragment: "implementation", values?: undefined): string; encodeFunctionData(functionFragment: "newModuleAddress", values?: undefined): string; encodeFunctionData(functionFragment: "nextEVMMessageId", values?: undefined): string; encodeFunctionData(functionFragment: "permissionManager", values?: undefined): string; encodeFunctionData(functionFragment: "proposalToMessageId", values: [BytesLike]): string; encodeFunctionData(functionFragment: "proxiableUUID", values?: undefined): string; encodeFunctionData(functionFragment: "redeemTokens", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "sendERC20EVM", values: [string, string, BigNumberish, string]): string; encodeFunctionData(functionFragment: "sendNativeEVM", values: [string, BigNumberish, string]): string; encodeFunctionData(functionFragment: "setCanisterModuleAddress", values: [string]): string; encodeFunctionData(functionFragment: "setDependencies", values: [string, BytesLike]): string; encodeFunctionData(functionFragment: "setDestinationChainData", values: [string, string, string]): string; encodeFunctionData(functionFragment: "setInjector", values: [string]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string; encodeFunctionData(functionFragment: "upgradeToAndCall", values: [string, BytesLike]): string; decodeFunctionResult(functionFragment: "MODULE_RESOURCE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "__ICPCrossChainTreasuryHub_init", data: BytesLike): Result; decodeFunctionResult(functionFragment: "__ICPCrossChainTreasuryHub_initAndSetDeps", data: BytesLike): Result; decodeFunctionResult(functionFragment: "checkPermission", data: BytesLike): Result; decodeFunctionResult(functionFragment: "destinationToData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "evmMessages", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDestinationChainData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getEVMMessage", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getInjector", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getNextEVMMessageId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getProposalKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getProposalMessageId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getResource", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getResourceRecords", data: BytesLike): Result; decodeFunctionResult(functionFragment: "implementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "newModuleAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nextEVMMessageId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissionManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proposalToMessageId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proxiableUUID", data: BytesLike): Result; decodeFunctionResult(functionFragment: "redeemTokens", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendERC20EVM", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendNativeEVM", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCanisterModuleAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setDependencies", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setDestinationChainData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setInjector", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "upgradeToAndCall", data: BytesLike): Result; events: { "AdminChanged(address,address)": EventFragment; "BeaconUpgraded(address)": EventFragment; "DestinationChainUpdated(string,address)": EventFragment; "Initialized(uint8)": EventFragment; "MessageSent((address,address,uint256,string))": EventFragment; "Upgraded(address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment; getEvent(nameOrSignatureOrTopic: "DestinationChainUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "MessageSent"): EventFragment; getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment; } export interface AdminChangedEventObject { previousAdmin: string; newAdmin: string; } export type AdminChangedEvent = TypedEvent<[ string, string ], AdminChangedEventObject>; export type AdminChangedEventFilter = TypedEventFilter; export interface BeaconUpgradedEventObject { beacon: string; } export type BeaconUpgradedEvent = TypedEvent<[ string ], BeaconUpgradedEventObject>; export type BeaconUpgradedEventFilter = TypedEventFilter; export interface DestinationChainUpdatedEventObject { destinationChain: string; treasuryAddress: string; } export type DestinationChainUpdatedEvent = TypedEvent<[ string, string ], DestinationChainUpdatedEventObject>; export type DestinationChainUpdatedEventFilter = TypedEventFilter; export interface InitializedEventObject { version: number; } export type InitializedEvent = TypedEvent<[number], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface MessageSentEventObject { action: ICPCrossChainTreasuryHub.EVMMessageDataStructOutput; } export type MessageSentEvent = TypedEvent<[ ICPCrossChainTreasuryHub.EVMMessageDataStructOutput ], MessageSentEventObject>; export type MessageSentEventFilter = TypedEventFilter; export interface UpgradedEventObject { implementation: string; } export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; export type UpgradedEventFilter = TypedEventFilter; export interface ICPCrossChainTreasuryHub extends BaseContract { contractName: "ICPCrossChainTreasuryHub"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ICPCrossChainTreasuryHubInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { MODULE_RESOURCE(overrides?: CallOverrides): Promise<[string]>; __ICPCrossChainTreasuryHub_init(resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; __ICPCrossChainTreasuryHub_initAndSetDeps(registry_: string, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise<[boolean]>; destinationToData(destinationChain: string, overrides?: CallOverrides): Promise<[ string, BigNumber, string ] & { rpcUrl: string; chainId: BigNumber; treasuryAddress: string; }>; evmMessages(messageId: BigNumberish, overrides?: CallOverrides): Promise<[ string, string, BigNumber, string ] & { token: string; to: string; amount: BigNumber; destinationChain: string; }>; getDestinationChainData(destinationChain_: string, overrides?: CallOverrides): Promise<[ICPCrossChainTreasuryHub.CanisterConnectionDataStructOutput]>; getEVMMessage(messageId_: BigNumberish, overrides?: CallOverrides): Promise<[ICPCrossChainTreasuryHub.EVMMessageDataStructOutput]>; getInjector(overrides?: CallOverrides): Promise<[string] & { injector_: string; }>; getNextEVMMessageId(overrides?: CallOverrides): Promise<[BigNumber]>; getProposalKey(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise<[string]>; getProposalMessageId(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; getResource(overrides?: CallOverrides): Promise<[string]>; getResourceRecords(overrides?: CallOverrides): Promise<[ IDAOIntegration.ResourceRecordsStructOutput[] ] & { records_: IDAOIntegration.ResourceRecordsStructOutput[]; }>; implementation(overrides?: CallOverrides): Promise<[string]>; newModuleAddress(overrides?: CallOverrides): Promise<[string]>; nextEVMMessageId(overrides?: CallOverrides): Promise<[BigNumber]>; permissionManager(overrides?: CallOverrides): Promise<[string]>; proposalToMessageId(proposalKey: BytesLike, overrides?: CallOverrides): Promise<[BigNumber] & { messageId: BigNumber; }>; proxiableUUID(overrides?: CallOverrides): Promise<[string]>; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; sendERC20EVM(token_: string, to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; sendNativeEVM(to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; setCanisterModuleAddress(newModuleAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setDestinationChainData(destinationChain_: string, destinationChainRpcUrl_: string, treasuryAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]>; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; }; MODULE_RESOURCE(overrides?: CallOverrides): Promise; __ICPCrossChainTreasuryHub_init(resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; __ICPCrossChainTreasuryHub_initAndSetDeps(registry_: string, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise; destinationToData(destinationChain: string, overrides?: CallOverrides): Promise<[ string, BigNumber, string ] & { rpcUrl: string; chainId: BigNumber; treasuryAddress: string; }>; evmMessages(messageId: BigNumberish, overrides?: CallOverrides): Promise<[ string, string, BigNumber, string ] & { token: string; to: string; amount: BigNumber; destinationChain: string; }>; getDestinationChainData(destinationChain_: string, overrides?: CallOverrides): Promise; getEVMMessage(messageId_: BigNumberish, overrides?: CallOverrides): Promise; getInjector(overrides?: CallOverrides): Promise; getNextEVMMessageId(overrides?: CallOverrides): Promise; getProposalKey(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getProposalMessageId(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getResource(overrides?: CallOverrides): Promise; getResourceRecords(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; newModuleAddress(overrides?: CallOverrides): Promise; nextEVMMessageId(overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proposalToMessageId(proposalKey: BytesLike, overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; sendERC20EVM(token_: string, to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; sendNativeEVM(to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; setCanisterModuleAddress(newModuleAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setDestinationChainData(destinationChain_: string, destinationChainRpcUrl_: string, treasuryAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; callStatic: { MODULE_RESOURCE(overrides?: CallOverrides): Promise; __ICPCrossChainTreasuryHub_init(resource_: string, relatedExpertPanelName_: string, overrides?: CallOverrides): Promise; __ICPCrossChainTreasuryHub_initAndSetDeps(registry_: string, resource_: string, relatedExpertPanelName_: string, overrides?: CallOverrides): Promise; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise; destinationToData(destinationChain: string, overrides?: CallOverrides): Promise<[ string, BigNumber, string ] & { rpcUrl: string; chainId: BigNumber; treasuryAddress: string; }>; evmMessages(messageId: BigNumberish, overrides?: CallOverrides): Promise<[ string, string, BigNumber, string ] & { token: string; to: string; amount: BigNumber; destinationChain: string; }>; getDestinationChainData(destinationChain_: string, overrides?: CallOverrides): Promise; getEVMMessage(messageId_: BigNumberish, overrides?: CallOverrides): Promise; getInjector(overrides?: CallOverrides): Promise; getNextEVMMessageId(overrides?: CallOverrides): Promise; getProposalKey(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getProposalMessageId(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getResource(overrides?: CallOverrides): Promise; getResourceRecords(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; newModuleAddress(overrides?: CallOverrides): Promise; nextEVMMessageId(overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proposalToMessageId(proposalKey: BytesLike, overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; redeemTokens(to_: string, value_: BigNumberish, overrides?: CallOverrides): Promise; sendERC20EVM(token_: string, to_: string, amount_: BigNumberish, destination_: string, overrides?: CallOverrides): Promise; sendNativeEVM(to_: string, amount_: BigNumberish, destination_: string, overrides?: CallOverrides): Promise; setCanisterModuleAddress(newModuleAddress_: string, overrides?: CallOverrides): Promise; setDependencies(registry_: string, arg1: BytesLike, overrides?: CallOverrides): Promise; setDestinationChainData(destinationChain_: string, destinationChainRpcUrl_: string, treasuryAddress_: string, overrides?: CallOverrides): Promise; setInjector(injector_: string, overrides?: CallOverrides): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: CallOverrides): Promise; }; 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; "DestinationChainUpdated(string,address)"(destinationChain?: null, treasuryAddress?: null): DestinationChainUpdatedEventFilter; DestinationChainUpdated(destinationChain?: null, treasuryAddress?: null): DestinationChainUpdatedEventFilter; "Initialized(uint8)"(version?: null): InitializedEventFilter; Initialized(version?: null): InitializedEventFilter; "MessageSent((address,address,uint256,string))"(action?: null): MessageSentEventFilter; MessageSent(action?: null): MessageSentEventFilter; "Upgraded(address)"(implementation?: string | null): UpgradedEventFilter; Upgraded(implementation?: string | null): UpgradedEventFilter; }; estimateGas: { MODULE_RESOURCE(overrides?: CallOverrides): Promise; __ICPCrossChainTreasuryHub_init(resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; __ICPCrossChainTreasuryHub_initAndSetDeps(registry_: string, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise; destinationToData(destinationChain: string, overrides?: CallOverrides): Promise; evmMessages(messageId: BigNumberish, overrides?: CallOverrides): Promise; getDestinationChainData(destinationChain_: string, overrides?: CallOverrides): Promise; getEVMMessage(messageId_: BigNumberish, overrides?: CallOverrides): Promise; getInjector(overrides?: CallOverrides): Promise; getNextEVMMessageId(overrides?: CallOverrides): Promise; getProposalKey(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getProposalMessageId(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getResource(overrides?: CallOverrides): Promise; getResourceRecords(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; newModuleAddress(overrides?: CallOverrides): Promise; nextEVMMessageId(overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proposalToMessageId(proposalKey: BytesLike, overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; sendERC20EVM(token_: string, to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; sendNativeEVM(to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; setCanisterModuleAddress(newModuleAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setDestinationChainData(destinationChain_: string, destinationChainRpcUrl_: string, treasuryAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; }; populateTransaction: { MODULE_RESOURCE(overrides?: CallOverrides): Promise; __ICPCrossChainTreasuryHub_init(resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; __ICPCrossChainTreasuryHub_initAndSetDeps(registry_: string, resource_: string, relatedExpertPanelName_: string, overrides?: Overrides & { from?: string; }): Promise; checkPermission(member_: string, permission_: string, overrides?: CallOverrides): Promise; destinationToData(destinationChain: string, overrides?: CallOverrides): Promise; evmMessages(messageId: BigNumberish, overrides?: CallOverrides): Promise; getDestinationChainData(destinationChain_: string, overrides?: CallOverrides): Promise; getEVMMessage(messageId_: BigNumberish, overrides?: CallOverrides): Promise; getInjector(overrides?: CallOverrides): Promise; getNextEVMMessageId(overrides?: CallOverrides): Promise; getProposalKey(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getProposalMessageId(account_: string, proposalId_: BigNumberish, overrides?: CallOverrides): Promise; getResource(overrides?: CallOverrides): Promise; getResourceRecords(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; newModuleAddress(overrides?: CallOverrides): Promise; nextEVMMessageId(overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proposalToMessageId(proposalKey: BytesLike, overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; redeemTokens(to_: string, value_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; sendERC20EVM(token_: string, to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; sendNativeEVM(to_: string, amount_: BigNumberish, destination_: string, overrides?: Overrides & { from?: string; }): Promise; setCanisterModuleAddress(newModuleAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registry_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setDestinationChainData(destinationChain_: string, destinationChainRpcUrl_: string, treasuryAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; }; }