import { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import { Listener, Provider } from "@ethersproject/providers"; import { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export interface HomeInterface extends utils.Interface { functions: { "MAX_MESSAGE_BODY_BYTES()": FunctionFragment; "VERSION()": FunctionFragment; "committedRoot()": FunctionFragment; "count()": FunctionFragment; "dispatch(uint32,bytes32,bytes)": FunctionFragment; "doubleUpdate(bytes32,bytes32[2],bytes,bytes)": FunctionFragment; "homeDomainHash()": FunctionFragment; "improperUpdate(bytes32,bytes32,bytes)": FunctionFragment; "initialize(address)": FunctionFragment; "localDomain()": FunctionFragment; "nonces(uint32)": FunctionFragment; "owner()": FunctionFragment; "queueContains(bytes32)": FunctionFragment; "queueEnd()": FunctionFragment; "queueLength()": FunctionFragment; "renounceOwnership()": FunctionFragment; "root()": FunctionFragment; "setUpdater(address)": FunctionFragment; "setUpdaterManager(address)": FunctionFragment; "state()": FunctionFragment; "suggestUpdate()": FunctionFragment; "transferOwnership(address)": FunctionFragment; "tree()": FunctionFragment; "update(bytes32,bytes32,bytes)": FunctionFragment; "updater()": FunctionFragment; "updaterManager()": FunctionFragment; }; encodeFunctionData(functionFragment: "MAX_MESSAGE_BODY_BYTES", values?: undefined): string; encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; encodeFunctionData(functionFragment: "committedRoot", values?: undefined): string; encodeFunctionData(functionFragment: "count", values?: undefined): string; encodeFunctionData(functionFragment: "dispatch", values: [BigNumberish, BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: "doubleUpdate", values: [BytesLike, [BytesLike, BytesLike], BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: "homeDomainHash", values?: undefined): string; encodeFunctionData(functionFragment: "improperUpdate", values: [BytesLike, BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: "initialize", values: [string]): string; encodeFunctionData(functionFragment: "localDomain", values?: undefined): string; encodeFunctionData(functionFragment: "nonces", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "queueContains", values: [BytesLike]): string; encodeFunctionData(functionFragment: "queueEnd", values?: undefined): string; encodeFunctionData(functionFragment: "queueLength", values?: undefined): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "root", values?: undefined): string; encodeFunctionData(functionFragment: "setUpdater", values: [string]): string; encodeFunctionData(functionFragment: "setUpdaterManager", values: [string]): string; encodeFunctionData(functionFragment: "state", values?: undefined): string; encodeFunctionData(functionFragment: "suggestUpdate", values?: undefined): string; encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string; encodeFunctionData(functionFragment: "tree", values?: undefined): string; encodeFunctionData(functionFragment: "update", values: [BytesLike, BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: "updater", values?: undefined): string; encodeFunctionData(functionFragment: "updaterManager", values?: undefined): string; decodeFunctionResult(functionFragment: "MAX_MESSAGE_BODY_BYTES", data: BytesLike): Result; decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; decodeFunctionResult(functionFragment: "committedRoot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "count", data: BytesLike): Result; decodeFunctionResult(functionFragment: "dispatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "doubleUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "homeDomainHash", data: BytesLike): Result; decodeFunctionResult(functionFragment: "improperUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "localDomain", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nonces", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "queueContains", data: BytesLike): Result; decodeFunctionResult(functionFragment: "queueEnd", data: BytesLike): Result; decodeFunctionResult(functionFragment: "queueLength", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "root", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setUpdater", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setUpdaterManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "state", data: BytesLike): Result; decodeFunctionResult(functionFragment: "suggestUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tree", data: BytesLike): Result; decodeFunctionResult(functionFragment: "update", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updater", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updaterManager", data: BytesLike): Result; events: { "Dispatch(bytes32,uint256,uint64,bytes32,bytes)": EventFragment; "DoubleUpdate(bytes32,bytes32[2],bytes,bytes)": EventFragment; "ImproperUpdate(bytes32,bytes32,bytes)": EventFragment; "Initialized(uint8)": EventFragment; "NewUpdater(address,address)": EventFragment; "NewUpdaterManager(address)": EventFragment; "OwnershipTransferred(address,address)": EventFragment; "Update(uint32,bytes32,bytes32,bytes)": EventFragment; "UpdaterSlashed(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Dispatch"): EventFragment; getEvent(nameOrSignatureOrTopic: "DoubleUpdate"): EventFragment; getEvent(nameOrSignatureOrTopic: "ImproperUpdate"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewUpdater"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewUpdaterManager"): EventFragment; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; getEvent(nameOrSignatureOrTopic: "Update"): EventFragment; getEvent(nameOrSignatureOrTopic: "UpdaterSlashed"): EventFragment; } export declare type DispatchEvent = TypedEvent<[ string, BigNumber, BigNumber, string, string ], { messageHash: string; leafIndex: BigNumber; destinationAndNonce: BigNumber; committedRoot: string; message: string; }>; export declare type DispatchEventFilter = TypedEventFilter; export declare type DoubleUpdateEvent = TypedEvent<[ string, [string, string], string, string ], { oldRoot: string; newRoot: [string, string]; signature: string; signature2: string; }>; export declare type DoubleUpdateEventFilter = TypedEventFilter; export declare type ImproperUpdateEvent = TypedEvent<[ string, string, string ], { oldRoot: string; newRoot: string; signature: string; }>; export declare type ImproperUpdateEventFilter = TypedEventFilter; export declare type InitializedEvent = TypedEvent<[number], { version: number; }>; export declare type InitializedEventFilter = TypedEventFilter; export declare type NewUpdaterEvent = TypedEvent<[ string, string ], { oldUpdater: string; newUpdater: string; }>; export declare type NewUpdaterEventFilter = TypedEventFilter; export declare type NewUpdaterManagerEvent = TypedEvent<[ string ], { updaterManager: string; }>; export declare type NewUpdaterManagerEventFilter = TypedEventFilter; export declare type OwnershipTransferredEvent = TypedEvent<[ string, string ], { previousOwner: string; newOwner: string; }>; export declare type OwnershipTransferredEventFilter = TypedEventFilter; export declare type UpdateEvent = TypedEvent<[ number, string, string, string ], { homeDomain: number; oldRoot: string; newRoot: string; signature: string; }>; export declare type UpdateEventFilter = TypedEventFilter; export declare type UpdaterSlashedEvent = TypedEvent<[ string, string ], { updater: string; reporter: string; }>; export declare type UpdaterSlashedEventFilter = TypedEventFilter; export interface Home extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: HomeInterface; 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: { MAX_MESSAGE_BODY_BYTES(overrides?: CallOverrides): Promise<[BigNumber]>; VERSION(overrides?: CallOverrides): Promise<[number]>; committedRoot(overrides?: CallOverrides): Promise<[string]>; count(overrides?: CallOverrides): Promise<[BigNumber]>; dispatch(_destinationDomain: BigNumberish, _recipientAddress: BytesLike, _messageBody: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; doubleUpdate(_oldRoot: BytesLike, _newRoot: [BytesLike, BytesLike], _signature: BytesLike, _signature2: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; homeDomainHash(overrides?: CallOverrides): Promise<[string]>; improperUpdate(_oldRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; initialize(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; localDomain(overrides?: CallOverrides): Promise<[number]>; nonces(arg0: BigNumberish, overrides?: CallOverrides): Promise<[number]>; owner(overrides?: CallOverrides): Promise<[string]>; queueContains(_item: BytesLike, overrides?: CallOverrides): Promise<[boolean]>; queueEnd(overrides?: CallOverrides): Promise<[string]>; queueLength(overrides?: CallOverrides): Promise<[BigNumber]>; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; root(overrides?: CallOverrides): Promise<[string]>; setUpdater(_updater: string, overrides?: Overrides & { from?: string | Promise; }): Promise; setUpdaterManager(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; state(overrides?: CallOverrides): Promise<[number]>; suggestUpdate(overrides?: CallOverrides): Promise<[string, string] & { _committedRoot: string; _new: string; }>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; tree(overrides?: CallOverrides): Promise<[BigNumber] & { count: BigNumber; }>; update(_committedRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; updater(overrides?: CallOverrides): Promise<[string]>; updaterManager(overrides?: CallOverrides): Promise<[string]>; }; MAX_MESSAGE_BODY_BYTES(overrides?: CallOverrides): Promise; VERSION(overrides?: CallOverrides): Promise; committedRoot(overrides?: CallOverrides): Promise; count(overrides?: CallOverrides): Promise; dispatch(_destinationDomain: BigNumberish, _recipientAddress: BytesLike, _messageBody: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; doubleUpdate(_oldRoot: BytesLike, _newRoot: [BytesLike, BytesLike], _signature: BytesLike, _signature2: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; homeDomainHash(overrides?: CallOverrides): Promise; improperUpdate(_oldRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; initialize(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; localDomain(overrides?: CallOverrides): Promise; nonces(arg0: BigNumberish, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; queueContains(_item: BytesLike, overrides?: CallOverrides): Promise; queueEnd(overrides?: CallOverrides): Promise; queueLength(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; root(overrides?: CallOverrides): Promise; setUpdater(_updater: string, overrides?: Overrides & { from?: string | Promise; }): Promise; setUpdaterManager(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; state(overrides?: CallOverrides): Promise; suggestUpdate(overrides?: CallOverrides): Promise<[string, string] & { _committedRoot: string; _new: string; }>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; tree(overrides?: CallOverrides): Promise; update(_committedRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; updater(overrides?: CallOverrides): Promise; updaterManager(overrides?: CallOverrides): Promise; callStatic: { MAX_MESSAGE_BODY_BYTES(overrides?: CallOverrides): Promise; VERSION(overrides?: CallOverrides): Promise; committedRoot(overrides?: CallOverrides): Promise; count(overrides?: CallOverrides): Promise; dispatch(_destinationDomain: BigNumberish, _recipientAddress: BytesLike, _messageBody: BytesLike, overrides?: CallOverrides): Promise; doubleUpdate(_oldRoot: BytesLike, _newRoot: [BytesLike, BytesLike], _signature: BytesLike, _signature2: BytesLike, overrides?: CallOverrides): Promise; homeDomainHash(overrides?: CallOverrides): Promise; improperUpdate(_oldRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: CallOverrides): Promise; initialize(_updaterManager: string, overrides?: CallOverrides): Promise; localDomain(overrides?: CallOverrides): Promise; nonces(arg0: BigNumberish, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; queueContains(_item: BytesLike, overrides?: CallOverrides): Promise; queueEnd(overrides?: CallOverrides): Promise; queueLength(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: CallOverrides): Promise; root(overrides?: CallOverrides): Promise; setUpdater(_updater: string, overrides?: CallOverrides): Promise; setUpdaterManager(_updaterManager: string, overrides?: CallOverrides): Promise; state(overrides?: CallOverrides): Promise; suggestUpdate(overrides?: CallOverrides): Promise<[string, string] & { _committedRoot: string; _new: string; }>; transferOwnership(newOwner: string, overrides?: CallOverrides): Promise; tree(overrides?: CallOverrides): Promise; update(_committedRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: CallOverrides): Promise; updater(overrides?: CallOverrides): Promise; updaterManager(overrides?: CallOverrides): Promise; }; filters: { "Dispatch(bytes32,uint256,uint64,bytes32,bytes)"(messageHash?: BytesLike | null, leafIndex?: BigNumberish | null, destinationAndNonce?: BigNumberish | null, committedRoot?: null, message?: null): DispatchEventFilter; Dispatch(messageHash?: BytesLike | null, leafIndex?: BigNumberish | null, destinationAndNonce?: BigNumberish | null, committedRoot?: null, message?: null): DispatchEventFilter; "DoubleUpdate(bytes32,bytes32[2],bytes,bytes)"(oldRoot?: null, newRoot?: null, signature?: null, signature2?: null): DoubleUpdateEventFilter; DoubleUpdate(oldRoot?: null, newRoot?: null, signature?: null, signature2?: null): DoubleUpdateEventFilter; "ImproperUpdate(bytes32,bytes32,bytes)"(oldRoot?: null, newRoot?: null, signature?: null): ImproperUpdateEventFilter; ImproperUpdate(oldRoot?: null, newRoot?: null, signature?: null): ImproperUpdateEventFilter; "Initialized(uint8)"(version?: null): InitializedEventFilter; Initialized(version?: null): InitializedEventFilter; "NewUpdater(address,address)"(oldUpdater?: null, newUpdater?: null): NewUpdaterEventFilter; NewUpdater(oldUpdater?: null, newUpdater?: null): NewUpdaterEventFilter; "NewUpdaterManager(address)"(updaterManager?: null): NewUpdaterManagerEventFilter; NewUpdaterManager(updaterManager?: null): NewUpdaterManagerEventFilter; "OwnershipTransferred(address,address)"(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; "Update(uint32,bytes32,bytes32,bytes)"(homeDomain?: BigNumberish | null, oldRoot?: BytesLike | null, newRoot?: BytesLike | null, signature?: null): UpdateEventFilter; Update(homeDomain?: BigNumberish | null, oldRoot?: BytesLike | null, newRoot?: BytesLike | null, signature?: null): UpdateEventFilter; "UpdaterSlashed(address,address)"(updater?: string | null, reporter?: string | null): UpdaterSlashedEventFilter; UpdaterSlashed(updater?: string | null, reporter?: string | null): UpdaterSlashedEventFilter; }; estimateGas: { MAX_MESSAGE_BODY_BYTES(overrides?: CallOverrides): Promise; VERSION(overrides?: CallOverrides): Promise; committedRoot(overrides?: CallOverrides): Promise; count(overrides?: CallOverrides): Promise; dispatch(_destinationDomain: BigNumberish, _recipientAddress: BytesLike, _messageBody: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; doubleUpdate(_oldRoot: BytesLike, _newRoot: [BytesLike, BytesLike], _signature: BytesLike, _signature2: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; homeDomainHash(overrides?: CallOverrides): Promise; improperUpdate(_oldRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; initialize(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; localDomain(overrides?: CallOverrides): Promise; nonces(arg0: BigNumberish, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; queueContains(_item: BytesLike, overrides?: CallOverrides): Promise; queueEnd(overrides?: CallOverrides): Promise; queueLength(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; root(overrides?: CallOverrides): Promise; setUpdater(_updater: string, overrides?: Overrides & { from?: string | Promise; }): Promise; setUpdaterManager(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; state(overrides?: CallOverrides): Promise; suggestUpdate(overrides?: CallOverrides): Promise; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; tree(overrides?: CallOverrides): Promise; update(_committedRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; updater(overrides?: CallOverrides): Promise; updaterManager(overrides?: CallOverrides): Promise; }; populateTransaction: { MAX_MESSAGE_BODY_BYTES(overrides?: CallOverrides): Promise; VERSION(overrides?: CallOverrides): Promise; committedRoot(overrides?: CallOverrides): Promise; count(overrides?: CallOverrides): Promise; dispatch(_destinationDomain: BigNumberish, _recipientAddress: BytesLike, _messageBody: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; doubleUpdate(_oldRoot: BytesLike, _newRoot: [BytesLike, BytesLike], _signature: BytesLike, _signature2: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; homeDomainHash(overrides?: CallOverrides): Promise; improperUpdate(_oldRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; initialize(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; localDomain(overrides?: CallOverrides): Promise; nonces(arg0: BigNumberish, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; queueContains(_item: BytesLike, overrides?: CallOverrides): Promise; queueEnd(overrides?: CallOverrides): Promise; queueLength(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; root(overrides?: CallOverrides): Promise; setUpdater(_updater: string, overrides?: Overrides & { from?: string | Promise; }): Promise; setUpdaterManager(_updaterManager: string, overrides?: Overrides & { from?: string | Promise; }): Promise; state(overrides?: CallOverrides): Promise; suggestUpdate(overrides?: CallOverrides): Promise; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; tree(overrides?: CallOverrides): Promise; update(_committedRoot: BytesLike, _newRoot: BytesLike, _signature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; updater(overrides?: CallOverrides): Promise; updaterManager(overrides?: CallOverrides): Promise; }; }