import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "./common"; export interface IHashflowGovernanceInterface extends Interface { getFunction(nameOrSignature: "disableCustomNetworkFees" | "getCustomNetworkFees" | "getDefaultNetworkFees" | "getFactory" | "getLzChainId" | "getLzEndpoint" | "getLzUa" | "getNetworkFees" | "getPercentWithdrawLimit" | "getRouter" | "getRouterAuthStatus" | "getTracker" | "getTreasury" | "getWithdrawPeriod" | "updateCustomNetworkFees" | "updateDefaultNetworkFees" | "updateFactory" | "updateLzChainId" | "updateLzEndpoint" | "updateLzUa" | "updatePercentWithdrawLimit" | "updateRouter" | "updateRouterAuthStatus" | "updateTracker" | "updateTreasury" | "updateWithdrawPeriod"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "DisableCustomNetworkFees" | "UpdateCustomNetworkFees" | "UpdateDefaultNetworkFees" | "UpdateFactory" | "UpdateLzChainId" | "UpdateLzEndpoint" | "UpdateLzUA" | "UpdatePercentWithdrawLimit" | "UpdateRouter" | "UpdateRouterAuthStatus" | "UpdateTracker" | "UpdateTreasury" | "UpdateWithdrawPeriod"): EventFragment; encodeFunctionData(functionFragment: "disableCustomNetworkFees", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getCustomNetworkFees", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getDefaultNetworkFees", values?: undefined): string; encodeFunctionData(functionFragment: "getFactory", values?: undefined): string; encodeFunctionData(functionFragment: "getLzChainId", values?: undefined): string; encodeFunctionData(functionFragment: "getLzEndpoint", values?: undefined): string; encodeFunctionData(functionFragment: "getLzUa", values?: undefined): string; encodeFunctionData(functionFragment: "getNetworkFees", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getPercentWithdrawLimit", values?: undefined): string; encodeFunctionData(functionFragment: "getRouter", values?: undefined): string; encodeFunctionData(functionFragment: "getRouterAuthStatus", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getTracker", values?: undefined): string; encodeFunctionData(functionFragment: "getTreasury", values?: undefined): string; encodeFunctionData(functionFragment: "getWithdrawPeriod", values?: undefined): string; encodeFunctionData(functionFragment: "updateCustomNetworkFees", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "updateDefaultNetworkFees", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "updateFactory", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updateLzChainId", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "updateLzEndpoint", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updateLzUa", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updatePercentWithdrawLimit", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "updateRouter", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updateRouterAuthStatus", values: [AddressLike, boolean]): string; encodeFunctionData(functionFragment: "updateTracker", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updateTreasury", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updateWithdrawPeriod", values: [BigNumberish]): string; decodeFunctionResult(functionFragment: "disableCustomNetworkFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getCustomNetworkFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDefaultNetworkFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFactory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLzChainId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLzEndpoint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLzUa", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getNetworkFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPercentWithdrawLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRouter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRouterAuthStatus", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTracker", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTreasury", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getWithdrawPeriod", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateCustomNetworkFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateDefaultNetworkFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateFactory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateLzChainId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateLzEndpoint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateLzUa", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updatePercentWithdrawLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateRouter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateRouterAuthStatus", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateTracker", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateTreasury", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateWithdrawPeriod", data: BytesLike): Result; } export declare namespace DisableCustomNetworkFeesEvent { type InputTuple = [pool: AddressLike]; type OutputTuple = [pool: string]; interface OutputObject { pool: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateCustomNetworkFeesEvent { type InputTuple = [pool: AddressLike, fees: BigNumberish]; type OutputTuple = [pool: string, fees: bigint]; interface OutputObject { pool: string; fees: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateDefaultNetworkFeesEvent { type InputTuple = [fees: BigNumberish]; type OutputTuple = [fees: bigint]; interface OutputObject { fees: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateFactoryEvent { type InputTuple = [factory: AddressLike, prevFactory: AddressLike]; type OutputTuple = [factory: string, prevFactory: string]; interface OutputObject { factory: string; prevFactory: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateLzChainIdEvent { type InputTuple = [ lzChainId: BigNumberish, prevLzChainId: BigNumberish ]; type OutputTuple = [lzChainId: bigint, prevLzChainId: bigint]; interface OutputObject { lzChainId: bigint; prevLzChainId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateLzEndpointEvent { type InputTuple = [ lzEndpoint: AddressLike, prevLzEndpoint: AddressLike ]; type OutputTuple = [lzEndpoint: string, prevLzEndpoint: string]; interface OutputObject { lzEndpoint: string; prevLzEndpoint: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateLzUAEvent { type InputTuple = [lzUa: AddressLike, prevLzUa: AddressLike]; type OutputTuple = [lzUa: string, prevLzUa: string]; interface OutputObject { lzUa: string; prevLzUa: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdatePercentWithdrawLimitEvent { type InputTuple = [limit: BigNumberish]; type OutputTuple = [limit: bigint]; interface OutputObject { limit: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateRouterEvent { type InputTuple = [router: AddressLike, prevRouter: AddressLike]; type OutputTuple = [router: string, prevRouter: string]; interface OutputObject { router: string; prevRouter: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateRouterAuthStatusEvent { type InputTuple = [router: AddressLike, status: boolean]; type OutputTuple = [router: string, status: boolean]; interface OutputObject { router: string; status: boolean; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateTrackerEvent { type InputTuple = [tracker: AddressLike, prevTracker: AddressLike]; type OutputTuple = [tracker: string, prevTracker: string]; interface OutputObject { tracker: string; prevTracker: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateTreasuryEvent { type InputTuple = [trasury: AddressLike, prevTreasury: AddressLike]; type OutputTuple = [trasury: string, prevTreasury: string]; interface OutputObject { trasury: string; prevTreasury: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace UpdateWithdrawPeriodEvent { type InputTuple = [period: BigNumberish]; type OutputTuple = [period: bigint]; interface OutputObject { period: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface IHashflowGovernance extends BaseContract { connect(runner?: ContractRunner | null): IHashflowGovernance; waitForDeployment(): Promise; interface: IHashflowGovernanceInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; disableCustomNetworkFees: TypedContractMethod<[ pool: AddressLike ], [ void ], "nonpayable">; getCustomNetworkFees: TypedContractMethod<[ pool: AddressLike ], [ bigint ], "view">; getDefaultNetworkFees: TypedContractMethod<[], [bigint], "view">; getFactory: TypedContractMethod<[], [string], "view">; getLzChainId: TypedContractMethod<[], [bigint], "view">; getLzEndpoint: TypedContractMethod<[], [string], "view">; getLzUa: TypedContractMethod<[], [string], "view">; getNetworkFees: TypedContractMethod<[pool: AddressLike], [bigint], "view">; getPercentWithdrawLimit: TypedContractMethod<[], [bigint], "view">; getRouter: TypedContractMethod<[], [string], "view">; getRouterAuthStatus: TypedContractMethod<[ router: AddressLike ], [ boolean ], "view">; getTracker: TypedContractMethod<[], [string], "view">; getTreasury: TypedContractMethod<[], [string], "view">; getWithdrawPeriod: TypedContractMethod<[], [bigint], "view">; updateCustomNetworkFees: TypedContractMethod<[ pool: AddressLike, networkFees: BigNumberish ], [ void ], "nonpayable">; updateDefaultNetworkFees: TypedContractMethod<[ networkFees: BigNumberish ], [ void ], "nonpayable">; updateFactory: TypedContractMethod<[ factory: AddressLike ], [ void ], "nonpayable">; updateLzChainId: TypedContractMethod<[ chainId: BigNumberish ], [ void ], "nonpayable">; updateLzEndpoint: TypedContractMethod<[ lzEndpoint: AddressLike ], [ void ], "nonpayable">; updateLzUa: TypedContractMethod<[lzUa: AddressLike], [void], "nonpayable">; updatePercentWithdrawLimit: TypedContractMethod<[ percentWithdrawLimit: BigNumberish ], [ void ], "nonpayable">; updateRouter: TypedContractMethod<[ router: AddressLike ], [ void ], "nonpayable">; updateRouterAuthStatus: TypedContractMethod<[ router: AddressLike, status: boolean ], [ void ], "nonpayable">; updateTracker: TypedContractMethod<[ tracker: AddressLike ], [ void ], "nonpayable">; updateTreasury: TypedContractMethod<[ treasury: AddressLike ], [ void ], "nonpayable">; updateWithdrawPeriod: TypedContractMethod<[ withdrawPeriod: BigNumberish ], [ void ], "nonpayable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "disableCustomNetworkFees"): TypedContractMethod<[pool: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "getCustomNetworkFees"): TypedContractMethod<[pool: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "getDefaultNetworkFees"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getFactory"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getLzChainId"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getLzEndpoint"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getLzUa"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getNetworkFees"): TypedContractMethod<[pool: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "getPercentWithdrawLimit"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getRouter"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getRouterAuthStatus"): TypedContractMethod<[router: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "getTracker"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getTreasury"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getWithdrawPeriod"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "updateCustomNetworkFees"): TypedContractMethod<[ pool: AddressLike, networkFees: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "updateDefaultNetworkFees"): TypedContractMethod<[networkFees: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "updateFactory"): TypedContractMethod<[factory: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "updateLzChainId"): TypedContractMethod<[chainId: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "updateLzEndpoint"): TypedContractMethod<[lzEndpoint: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "updateLzUa"): TypedContractMethod<[lzUa: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "updatePercentWithdrawLimit"): TypedContractMethod<[ percentWithdrawLimit: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "updateRouter"): TypedContractMethod<[router: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "updateRouterAuthStatus"): TypedContractMethod<[ router: AddressLike, status: boolean ], [ void ], "nonpayable">; getFunction(nameOrSignature: "updateTracker"): TypedContractMethod<[tracker: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "updateTreasury"): TypedContractMethod<[treasury: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "updateWithdrawPeriod"): TypedContractMethod<[withdrawPeriod: BigNumberish], [void], "nonpayable">; getEvent(key: "DisableCustomNetworkFees"): TypedContractEvent; getEvent(key: "UpdateCustomNetworkFees"): TypedContractEvent; getEvent(key: "UpdateDefaultNetworkFees"): TypedContractEvent; getEvent(key: "UpdateFactory"): TypedContractEvent; getEvent(key: "UpdateLzChainId"): TypedContractEvent; getEvent(key: "UpdateLzEndpoint"): TypedContractEvent; getEvent(key: "UpdateLzUA"): TypedContractEvent; getEvent(key: "UpdatePercentWithdrawLimit"): TypedContractEvent; getEvent(key: "UpdateRouter"): TypedContractEvent; getEvent(key: "UpdateRouterAuthStatus"): TypedContractEvent; getEvent(key: "UpdateTracker"): TypedContractEvent; getEvent(key: "UpdateTreasury"): TypedContractEvent; getEvent(key: "UpdateWithdrawPeriod"): TypedContractEvent; filters: { "DisableCustomNetworkFees(address)": TypedContractEvent; DisableCustomNetworkFees: TypedContractEvent; "UpdateCustomNetworkFees(address,uint256)": TypedContractEvent; UpdateCustomNetworkFees: TypedContractEvent; "UpdateDefaultNetworkFees(uint256)": TypedContractEvent; UpdateDefaultNetworkFees: TypedContractEvent; "UpdateFactory(address,address)": TypedContractEvent; UpdateFactory: TypedContractEvent; "UpdateLzChainId(uint16,uint16)": TypedContractEvent; UpdateLzChainId: TypedContractEvent; "UpdateLzEndpoint(address,address)": TypedContractEvent; UpdateLzEndpoint: TypedContractEvent; "UpdateLzUA(address,address)": TypedContractEvent; UpdateLzUA: TypedContractEvent; "UpdatePercentWithdrawLimit(uint256)": TypedContractEvent; UpdatePercentWithdrawLimit: TypedContractEvent; "UpdateRouter(address,address)": TypedContractEvent; UpdateRouter: TypedContractEvent; "UpdateRouterAuthStatus(address,bool)": TypedContractEvent; UpdateRouterAuthStatus: TypedContractEvent; "UpdateTracker(address,address)": TypedContractEvent; UpdateTracker: TypedContractEvent; "UpdateTreasury(address,address)": TypedContractEvent; UpdateTreasury: TypedContractEvent; "UpdateWithdrawPeriod(uint256)": TypedContractEvent; UpdateWithdrawPeriod: TypedContractEvent; }; }