import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "./common"; export interface IUniswapV3PoolImmutablesInterface extends Interface { getFunction(nameOrSignature: "factory" | "fee" | "maxLiquidityPerTick" | "tickSpacing" | "token0" | "token1"): FunctionFragment; encodeFunctionData(functionFragment: "factory", values?: undefined): string; encodeFunctionData(functionFragment: "fee", values?: undefined): string; encodeFunctionData(functionFragment: "maxLiquidityPerTick", values?: undefined): string; encodeFunctionData(functionFragment: "tickSpacing", values?: undefined): string; encodeFunctionData(functionFragment: "token0", values?: undefined): string; encodeFunctionData(functionFragment: "token1", values?: undefined): string; decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "fee", data: BytesLike): Result; decodeFunctionResult(functionFragment: "maxLiquidityPerTick", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tickSpacing", data: BytesLike): Result; decodeFunctionResult(functionFragment: "token0", data: BytesLike): Result; decodeFunctionResult(functionFragment: "token1", data: BytesLike): Result; } export interface IUniswapV3PoolImmutables extends BaseContract { connect(runner?: ContractRunner | null): IUniswapV3PoolImmutables; waitForDeployment(): Promise; interface: IUniswapV3PoolImmutablesInterface; 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; factory: TypedContractMethod<[], [string], "view">; fee: TypedContractMethod<[], [bigint], "view">; maxLiquidityPerTick: TypedContractMethod<[], [bigint], "view">; tickSpacing: TypedContractMethod<[], [bigint], "view">; token0: TypedContractMethod<[], [string], "view">; token1: TypedContractMethod<[], [string], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "factory"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "fee"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "maxLiquidityPerTick"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "tickSpacing"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "token0"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "token1"): TypedContractMethod<[], [string], "view">; filters: {}; }