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 type LiquidityAddDataStruct = { index: BigNumberish; margin: BigNumberish; leverage: BigNumberish; }; export type LiquidityAddDataStructOutput = [ index: bigint, margin: bigint, leverage: bigint ] & { index: bigint; margin: bigint; leverage: bigint; }; export type LiquidityAddReturnDataStruct = { pool: AddressLike; shares: BigNumberish; quote: BigNumberish; base: BigNumberish; }; export type LiquidityAddReturnDataStructOutput = [ pool: string, shares: bigint, quote: bigint, base: bigint ] & { pool: string; shares: bigint; quote: bigint; base: bigint; }; export type FeeRatiosStruct = { baseFeeRatio: BigNumberish; ammFeeRatio: BigNumberish; limitMakerFeeRatio: BigNumberish; keeperFeeRatio: BigNumberish; liquidationFeeRatio: BigNumberish; }; export type FeeRatiosStructOutput = [ baseFeeRatio: bigint, ammFeeRatio: bigint, limitMakerFeeRatio: bigint, keeperFeeRatio: bigint, liquidationFeeRatio: bigint ] & { baseFeeRatio: bigint; ammFeeRatio: bigint; limitMakerFeeRatio: bigint; keeperFeeRatio: bigint; liquidationFeeRatio: bigint; }; export type PoolPositionStruct = { pool: AddressLike; shares: BigNumberish; quote: BigNumberish; base: BigNumberish; }; export type PoolPositionStructOutput = [ pool: string, shares: bigint, quote: bigint, base: bigint ] & { pool: string; shares: bigint; quote: bigint; base: bigint; }; export type MakerProfileStruct = { margin: BigNumberish; pools: AddressLike[]; }; export type MakerProfileStructOutput = [margin: bigint, pools: string[]] & { margin: bigint; pools: string[]; }; export type AMMParamsStruct = { owner: AddressLike; fundingPeriod: BigNumberish; tradeLimitRatio: BigNumberish; fluctuationLimitRatio: BigNumberish; openMarginRatio: BigNumberish; maintenanceMarginRatio: BigNumberish; maxSizeCap: BigNumberish; openInterestCap: BigNumberish; indexPriceWeight: BigNumberish; twapInterval: BigNumberish; baseFeeRatio: BigNumberish; ammFeeRatio: BigNumberish; limitMakerFeeRatio: BigNumberish; keeperFeeRatio: BigNumberish; liquidatorFeeRatio: BigNumberish; }; export type AMMParamsStructOutput = [ owner: string, fundingPeriod: bigint, tradeLimitRatio: bigint, fluctuationLimitRatio: bigint, openMarginRatio: bigint, maintenanceMarginRatio: bigint, maxSizeCap: bigint, openInterestCap: bigint, indexPriceWeight: bigint, twapInterval: bigint, baseFeeRatio: bigint, ammFeeRatio: bigint, limitMakerFeeRatio: bigint, keeperFeeRatio: bigint, liquidatorFeeRatio: bigint ] & { owner: string; fundingPeriod: bigint; tradeLimitRatio: bigint; fluctuationLimitRatio: bigint; openMarginRatio: bigint; maintenanceMarginRatio: bigint; maxSizeCap: bigint; openInterestCap: bigint; indexPriceWeight: bigint; twapInterval: bigint; baseFeeRatio: bigint; ammFeeRatio: bigint; limitMakerFeeRatio: bigint; keeperFeeRatio: bigint; liquidatorFeeRatio: bigint; }; export type LiquidityRemoveDataStruct = { index: BigNumberish; shares: BigNumberish; }; export type LiquidityRemoveDataStructOutput = [ index: bigint, shares: bigint ] & { index: bigint; shares: bigint; }; export type PoolParamsStruct = { id: BigNumberish; upperBound: BigNumberish; lowerBound: BigNumberish; }; export type PoolParamsStructOutput = [ id: bigint, upperBound: bigint, lowerBound: bigint ] & { id: bigint; upperBound: bigint; lowerBound: bigint; }; export type PoolStruct = { id: BigNumberish; pool: AddressLike; }; export type PoolStructOutput = [id: bigint, pool: string] & { id: bigint; pool: string; }; export interface AMMRouterInterface extends Interface { getFunction(nameOrSignature: "addLiquidity" | "cancelOwnershipHandover" | "clearingHouse" | "completeOwnershipHandover" | "getAMMFee" | "getActiveIndex" | "getActivePool" | "getBaseFeeRatio" | "getBaseToFill" | "getBaseValue" | "getFeeRatios" | "getFluctuationLimitRatio" | "getFullMakerImpermanentPosition" | "getFundingPeriod" | "getFundingRate" | "getIndexPrice" | "getLastSettledFundingTime" | "getLiquidationFeeRatio" | "getLiquidationPrice" | "getMakerImpermanentPosition" | "getMakerPools" | "getMakerPositionData" | "getMakerProfile" | "getMarginRatio" | "getMarkPrice" | "getMarkPriceAfterClose" | "getMarkPriceAfterOpen" | "getMarkTwap" | "getMaxSize" | "getNextFundingTime" | "getOpenInterestCap" | "getOpenMarginRatio" | "getPendingMakerFees" | "getPendingMakerFundingPayment" | "getPool" | "getPoolsInRange" | "getPriceWeights" | "getQuoteToFill" | "getQuoteValue" | "getReserves" | "getTickSpacing" | "getTwapInterval" | "initialize" | "isActive" | "isMakerLiquidatable" | "liquidateMaker" | "owner" | "ownershipHandoverExpiresAt" | "poolFactory" | "priceFeed" | "removeLiquidity" | "renounceOwnership" | "requestOwnershipHandover" | "setAMMFeeRatio" | "setActive" | "setBaseFeeRatio" | "setFluctuationLimitRatio" | "setFundingPeriod" | "setIndexPriceWeight" | "setInitMarginRatio" | "setKeeperFeeRatio" | "setLimitMakerFeeRatio" | "setLiquidationFeeRatio" | "setMaintenanceMarginRatio" | "setMaxSize" | "setOpenInterestCap" | "setPoolLogicContract" | "setPools" | "setTickSpacing" | "setTwapInterval" | "settleFunding" | "swapClose" | "swapOpen" | "transferOwnership"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "AMMFeeRatioChanged" | "Activated" | "ActivePoolChanged" | "BaseFeeRatioChanged" | "CapChanged" | "Deactivated" | "FluctuationLimitRatioChanged" | "FundingPeriodChanged" | "FundingRateUpdated" | "InitMarginRatioChanged" | "Initialized" | "KeeperFeeRatioChanged" | "LimitMakerFeeRatioChanged" | "LiquidationFeeRatioChanged" | "LiquidityAdded" | "LiquidityRemoved" | "MaintenanceMarginRatioChanged" | "MaxSizeSet" | "NewPool" | "NewPriceSnapshot" | "OpenInterestCapSet" | "OwnershipHandoverCanceled" | "OwnershipHandoverRequested" | "OwnershipTransferred" | "PoolLogicContractChanged" | "PriceWeightsChanged" | "TickSpacingChanged" | "TwapIntervalChanged"): EventFragment; encodeFunctionData(functionFragment: "addLiquidity", values: [AddressLike, LiquidityAddDataStruct[]]): string; encodeFunctionData(functionFragment: "cancelOwnershipHandover", values?: undefined): string; encodeFunctionData(functionFragment: "clearingHouse", values?: undefined): string; encodeFunctionData(functionFragment: "completeOwnershipHandover", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getAMMFee", values?: undefined): string; encodeFunctionData(functionFragment: "getActiveIndex", values?: undefined): string; encodeFunctionData(functionFragment: "getActivePool", values?: undefined): string; encodeFunctionData(functionFragment: "getBaseFeeRatio", values?: undefined): string; encodeFunctionData(functionFragment: "getBaseToFill", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getBaseValue", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "getFeeRatios", values?: undefined): string; encodeFunctionData(functionFragment: "getFluctuationLimitRatio", values?: undefined): string; encodeFunctionData(functionFragment: "getFullMakerImpermanentPosition", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getFundingPeriod", values?: undefined): string; encodeFunctionData(functionFragment: "getFundingRate", values?: undefined): string; encodeFunctionData(functionFragment: "getIndexPrice", values?: undefined): string; encodeFunctionData(functionFragment: "getLastSettledFundingTime", values?: undefined): string; encodeFunctionData(functionFragment: "getLiquidationFeeRatio", values?: undefined): string; encodeFunctionData(functionFragment: "getLiquidationPrice", values?: undefined): string; encodeFunctionData(functionFragment: "getMakerImpermanentPosition", values: [AddressLike, BigNumberish[]]): string; encodeFunctionData(functionFragment: "getMakerPools", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getMakerPositionData", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getMakerProfile", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getMarginRatio", values?: undefined): string; encodeFunctionData(functionFragment: "getMarkPrice", values?: undefined): string; encodeFunctionData(functionFragment: "getMarkPriceAfterClose", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "getMarkPriceAfterOpen", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "getMarkTwap", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getMaxSize", values?: undefined): string; encodeFunctionData(functionFragment: "getNextFundingTime", values?: undefined): string; encodeFunctionData(functionFragment: "getOpenInterestCap", values?: undefined): string; encodeFunctionData(functionFragment: "getOpenMarginRatio", values?: undefined): string; encodeFunctionData(functionFragment: "getPendingMakerFees", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getPendingMakerFundingPayment", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getPool", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getPoolsInRange", values?: undefined): string; encodeFunctionData(functionFragment: "getPriceWeights", values?: undefined): string; encodeFunctionData(functionFragment: "getQuoteToFill", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getQuoteValue", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "getReserves", values?: undefined): string; encodeFunctionData(functionFragment: "getTickSpacing", values?: undefined): string; encodeFunctionData(functionFragment: "getTwapInterval", values?: undefined): string; encodeFunctionData(functionFragment: "initialize", values: [AMMParamsStruct]): string; encodeFunctionData(functionFragment: "isActive", values?: undefined): string; encodeFunctionData(functionFragment: "isMakerLiquidatable", values: [AddressLike]): string; encodeFunctionData(functionFragment: "liquidateMaker", values: [AddressLike]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "ownershipHandoverExpiresAt", values: [AddressLike]): string; encodeFunctionData(functionFragment: "poolFactory", values?: undefined): string; encodeFunctionData(functionFragment: "priceFeed", values?: undefined): string; encodeFunctionData(functionFragment: "removeLiquidity", values: [AddressLike, LiquidityRemoveDataStruct[]]): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "requestOwnershipHandover", values?: undefined): string; encodeFunctionData(functionFragment: "setAMMFeeRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setActive", values: [boolean]): string; encodeFunctionData(functionFragment: "setBaseFeeRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setFluctuationLimitRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setFundingPeriod", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setIndexPriceWeight", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setInitMarginRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setKeeperFeeRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setLimitMakerFeeRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setLiquidationFeeRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setMaintenanceMarginRatio", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setMaxSize", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setOpenInterestCap", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setPoolLogicContract", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setPools", values: [PoolParamsStruct[], BigNumberish]): string; encodeFunctionData(functionFragment: "setTickSpacing", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setTwapInterval", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "settleFunding", values?: undefined): string; encodeFunctionData(functionFragment: "swapClose", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "swapOpen", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; decodeFunctionResult(functionFragment: "addLiquidity", data: BytesLike): Result; decodeFunctionResult(functionFragment: "cancelOwnershipHandover", data: BytesLike): Result; decodeFunctionResult(functionFragment: "clearingHouse", data: BytesLike): Result; decodeFunctionResult(functionFragment: "completeOwnershipHandover", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getAMMFee", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getActiveIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getActivePool", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getBaseFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getBaseToFill", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getBaseValue", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFeeRatios", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFluctuationLimitRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFullMakerImpermanentPosition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFundingPeriod", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFundingRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getIndexPrice", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLastSettledFundingTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLiquidationFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLiquidationPrice", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMakerImpermanentPosition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMakerPools", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMakerPositionData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMakerProfile", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMarginRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMarkPrice", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMarkPriceAfterClose", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMarkPriceAfterOpen", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMarkTwap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMaxSize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getNextFundingTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getOpenInterestCap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getOpenMarginRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPendingMakerFees", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPendingMakerFundingPayment", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPool", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPoolsInRange", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPriceWeights", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getQuoteToFill", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getQuoteValue", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getReserves", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTickSpacing", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTwapInterval", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isActive", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isMakerLiquidatable", data: BytesLike): Result; decodeFunctionResult(functionFragment: "liquidateMaker", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ownershipHandoverExpiresAt", data: BytesLike): Result; decodeFunctionResult(functionFragment: "poolFactory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "priceFeed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeLiquidity", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "requestOwnershipHandover", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAMMFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setActive", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setBaseFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setFluctuationLimitRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setFundingPeriod", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setIndexPriceWeight", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setInitMarginRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setKeeperFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setLimitMakerFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setLiquidationFeeRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setMaintenanceMarginRatio", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setMaxSize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setOpenInterestCap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPoolLogicContract", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPools", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setTickSpacing", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setTwapInterval", data: BytesLike): Result; decodeFunctionResult(functionFragment: "settleFunding", data: BytesLike): Result; decodeFunctionResult(functionFragment: "swapClose", data: BytesLike): Result; decodeFunctionResult(functionFragment: "swapOpen", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; } export declare namespace AMMFeeRatioChangedEvent { type InputTuple = [newAMMFeeRatio: BigNumberish]; type OutputTuple = [newAMMFeeRatio: bigint]; interface OutputObject { newAMMFeeRatio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ActivatedEvent { type InputTuple = []; type OutputTuple = []; interface OutputObject { } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ActivePoolChangedEvent { type InputTuple = [newPool: AddressLike, newIndex: BigNumberish]; type OutputTuple = [newPool: string, newIndex: bigint]; interface OutputObject { newPool: string; newIndex: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace BaseFeeRatioChangedEvent { type InputTuple = [newFeeRatio: BigNumberish]; type OutputTuple = [newFeeRatio: bigint]; interface OutputObject { newFeeRatio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace CapChangedEvent { type InputTuple = [ maxSize: BigNumberish, openInterestNotionalCap: BigNumberish ]; type OutputTuple = [maxSize: bigint, openInterestNotionalCap: bigint]; interface OutputObject { maxSize: bigint; openInterestNotionalCap: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace DeactivatedEvent { type InputTuple = []; type OutputTuple = []; interface OutputObject { } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace FluctuationLimitRatioChangedEvent { type InputTuple = [ratio: BigNumberish]; type OutputTuple = [ratio: bigint]; interface OutputObject { ratio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace FundingPeriodChangedEvent { type InputTuple = [fundingPeriod: BigNumberish]; type OutputTuple = [fundingPeriod: bigint]; interface OutputObject { fundingPeriod: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace FundingRateUpdatedEvent { type InputTuple = [fundingRate: BigNumberish, price: BigNumberish]; type OutputTuple = [fundingRate: bigint, price: bigint]; interface OutputObject { fundingRate: bigint; price: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace InitMarginRatioChangedEvent { type InputTuple = [ratio: BigNumberish]; type OutputTuple = [ratio: bigint]; interface OutputObject { ratio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace InitializedEvent { type InputTuple = [version: BigNumberish]; type OutputTuple = [version: bigint]; interface OutputObject { version: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace KeeperFeeRatioChangedEvent { type InputTuple = [newKeeperFeeRatio: BigNumberish]; type OutputTuple = [newKeeperFeeRatio: bigint]; interface OutputObject { newKeeperFeeRatio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace LimitMakerFeeRatioChangedEvent { type InputTuple = [newLiquidatorFeeRatio: BigNumberish]; type OutputTuple = [newLiquidatorFeeRatio: bigint]; interface OutputObject { newLiquidatorFeeRatio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace LiquidationFeeRatioChangedEvent { type InputTuple = [ratio: BigNumberish]; type OutputTuple = [ratio: bigint]; interface OutputObject { ratio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace LiquidityAddedEvent { type InputTuple = [ maker: AddressLike, addedMargin: BigNumberish, addedNotional: BigNumberish, poolsIds: BigNumberish[] ]; type OutputTuple = [ maker: string, addedMargin: bigint, addedNotional: bigint, poolsIds: bigint[] ]; interface OutputObject { maker: string; addedMargin: bigint; addedNotional: bigint; poolsIds: bigint[]; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace LiquidityRemovedEvent { type InputTuple = [ maker: AddressLike, removedMargin: BigNumberish, removedNotional: BigNumberish, poolIds: BigNumberish[] ]; type OutputTuple = [ maker: string, removedMargin: bigint, removedNotional: bigint, poolIds: bigint[] ]; interface OutputObject { maker: string; removedMargin: bigint; removedNotional: bigint; poolIds: bigint[]; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace MaintenanceMarginRatioChangedEvent { type InputTuple = [ratio: BigNumberish]; type OutputTuple = [ratio: bigint]; interface OutputObject { ratio: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace MaxSizeSetEvent { type InputTuple = [maxSize: BigNumberish]; type OutputTuple = [maxSize: bigint]; interface OutputObject { maxSize: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace NewPoolEvent { type InputTuple = [pool: AddressLike, id: BigNumberish]; type OutputTuple = [pool: string, id: bigint]; interface OutputObject { pool: string; id: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace NewPriceSnapshotEvent { type InputTuple = [markPrice: BigNumberish, timestamp: BigNumberish]; type OutputTuple = [markPrice: bigint, timestamp: bigint]; interface OutputObject { markPrice: bigint; timestamp: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace OpenInterestCapSetEvent { type InputTuple = [openInterestCap: BigNumberish]; type OutputTuple = [openInterestCap: bigint]; interface OutputObject { openInterestCap: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace OwnershipHandoverCanceledEvent { type InputTuple = [pendingOwner: AddressLike]; type OutputTuple = [pendingOwner: string]; interface OutputObject { pendingOwner: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace OwnershipHandoverRequestedEvent { type InputTuple = [pendingOwner: AddressLike]; type OutputTuple = [pendingOwner: string]; interface OutputObject { pendingOwner: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace OwnershipTransferredEvent { type InputTuple = [oldOwner: AddressLike, newOwner: AddressLike]; type OutputTuple = [oldOwner: string, newOwner: string]; interface OutputObject { oldOwner: string; newOwner: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace PoolLogicContractChangedEvent { type InputTuple = [newPoolLogic: AddressLike]; type OutputTuple = [newPoolLogic: string]; interface OutputObject { newPoolLogic: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace PriceWeightsChangedEvent { type InputTuple = [ markPriceWeight: BigNumberish, indexPriceWeight: BigNumberish ]; type OutputTuple = [markPriceWeight: bigint, indexPriceWeight: bigint]; interface OutputObject { markPriceWeight: bigint; indexPriceWeight: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace TickSpacingChangedEvent { type InputTuple = [tickSpacing: BigNumberish]; type OutputTuple = [tickSpacing: bigint]; interface OutputObject { tickSpacing: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace TwapIntervalChangedEvent { type InputTuple = [twapInterval: BigNumberish]; type OutputTuple = [twapInterval: bigint]; interface OutputObject { twapInterval: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface AMMRouter extends BaseContract { connect(runner?: ContractRunner | null): AMMRouter; waitForDeployment(): Promise; interface: AMMRouterInterface; 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; addLiquidity: TypedContractMethod<[ maker: AddressLike, liquidityAddData: LiquidityAddDataStruct[] ], [ [ LiquidityAddReturnDataStructOutput[], bigint ] & { returnData: LiquidityAddReturnDataStructOutput[]; marginAdded: bigint; } ], "nonpayable">; cancelOwnershipHandover: TypedContractMethod<[], [void], "payable">; clearingHouse: TypedContractMethod<[], [string], "view">; completeOwnershipHandover: TypedContractMethod<[ pendingOwner: AddressLike ], [ void ], "payable">; getAMMFee: TypedContractMethod<[], [bigint], "view">; getActiveIndex: TypedContractMethod<[], [bigint], "view">; getActivePool: TypedContractMethod<[], [string], "view">; getBaseFeeRatio: TypedContractMethod<[], [bigint], "view">; getBaseToFill: TypedContractMethod<[ targetPrice: BigNumberish ], [ bigint ], "view">; getBaseValue: TypedContractMethod<[ dirOfQuote: BigNumberish, quoteAmount: BigNumberish ], [ bigint ], "view">; getFeeRatios: TypedContractMethod<[], [FeeRatiosStructOutput], "view">; getFluctuationLimitRatio: TypedContractMethod<[], [bigint], "view">; getFullMakerImpermanentPosition: TypedContractMethod<[ maker: AddressLike ], [ [bigint, bigint] & { size: bigint; openNotional: bigint; } ], "view">; getFundingPeriod: TypedContractMethod<[], [bigint], "view">; getFundingRate: TypedContractMethod<[], [bigint], "view">; getIndexPrice: TypedContractMethod<[], [bigint], "view">; getLastSettledFundingTime: TypedContractMethod<[], [bigint], "view">; getLiquidationFeeRatio: TypedContractMethod<[], [bigint], "view">; getLiquidationPrice: TypedContractMethod<[], [bigint], "view">; getMakerImpermanentPosition: TypedContractMethod<[ maker: AddressLike, poolIndexes: BigNumberish[] ], [ [bigint, bigint] & { size: bigint; openNotional: bigint; } ], "view">; getMakerPools: TypedContractMethod<[maker: AddressLike], [string[]], "view">; getMakerPositionData: TypedContractMethod<[ maker: AddressLike ], [ [ bigint, bigint, bigint, bigint, bigint, PoolPositionStructOutput[] ] & { size: bigint; openNotional: bigint; margin: bigint; pendingFees: bigint; pendingFundingPayment: bigint; poolInfo: PoolPositionStructOutput[]; } ], "view">; getMakerProfile: TypedContractMethod<[ maker: AddressLike ], [ MakerProfileStructOutput ], "view">; getMarginRatio: TypedContractMethod<[], [bigint], "view">; getMarkPrice: TypedContractMethod<[], [bigint], "view">; getMarkPriceAfterClose: TypedContractMethod<[ dirOfBase: BigNumberish, baseAmount: BigNumberish ], [ bigint ], "view">; getMarkPriceAfterOpen: TypedContractMethod<[ dirOfQuote: BigNumberish, quoteAmount: BigNumberish ], [ bigint ], "view">; getMarkTwap: TypedContractMethod<[interval: BigNumberish], [bigint], "view">; getMaxSize: TypedContractMethod<[], [bigint], "view">; getNextFundingTime: TypedContractMethod<[], [bigint], "view">; getOpenInterestCap: TypedContractMethod<[], [bigint], "view">; getOpenMarginRatio: TypedContractMethod<[], [bigint], "view">; getPendingMakerFees: TypedContractMethod<[ maker: AddressLike ], [ bigint ], "view">; getPendingMakerFundingPayment: TypedContractMethod<[ maker: AddressLike ], [ bigint ], "view">; getPool: TypedContractMethod<[_index: BigNumberish], [string], "view">; getPoolsInRange: TypedContractMethod<[], [string[]], "view">; getPriceWeights: TypedContractMethod<[ ], [ [bigint, bigint] & { markWeight: bigint; indexWeight: bigint; } ], "view">; getQuoteToFill: TypedContractMethod<[ targetPrice: BigNumberish ], [ bigint ], "view">; getQuoteValue: TypedContractMethod<[ dirOfBase: BigNumberish, baseAmount: BigNumberish ], [ bigint ], "view">; getReserves: TypedContractMethod<[ ], [ [bigint, bigint] & { quoteReserve: bigint; baseReserve: bigint; } ], "view">; getTickSpacing: TypedContractMethod<[], [bigint], "view">; getTwapInterval: TypedContractMethod<[], [bigint], "view">; initialize: TypedContractMethod<[ params: AMMParamsStruct ], [ void ], "nonpayable">; isActive: TypedContractMethod<[], [boolean], "view">; isMakerLiquidatable: TypedContractMethod<[ maker: AddressLike ], [ boolean ], "view">; liquidateMaker: TypedContractMethod<[ maker: AddressLike ], [ [ bigint, bigint, bigint ] & { size: bigint; openNotional: bigint; margin: bigint; } ], "nonpayable">; owner: TypedContractMethod<[], [string], "view">; ownershipHandoverExpiresAt: TypedContractMethod<[ pendingOwner: AddressLike ], [ bigint ], "view">; poolFactory: TypedContractMethod<[], [string], "view">; priceFeed: TypedContractMethod<[], [string], "view">; removeLiquidity: TypedContractMethod<[ maker: AddressLike, liquidityRemoveData: LiquidityRemoveDataStruct[] ], [ [ bigint, bigint, bigint ] & { size: bigint; openNotional: bigint; marginRemoved: bigint; } ], "nonpayable">; renounceOwnership: TypedContractMethod<[], [void], "payable">; requestOwnershipHandover: TypedContractMethod<[], [void], "payable">; setAMMFeeRatio: TypedContractMethod<[ _ammFeeRatio: BigNumberish ], [ void ], "nonpayable">; setActive: TypedContractMethod<[_active: boolean], [void], "nonpayable">; setBaseFeeRatio: TypedContractMethod<[ _baseFeeRatio: BigNumberish ], [ void ], "nonpayable">; setFluctuationLimitRatio: TypedContractMethod<[ _fluctuationLimitRatio: BigNumberish ], [ void ], "nonpayable">; setFundingPeriod: TypedContractMethod<[ _fundingPeriod: BigNumberish ], [ void ], "nonpayable">; setIndexPriceWeight: TypedContractMethod<[ _indexPriceWeight: BigNumberish ], [ void ], "nonpayable">; setInitMarginRatio: TypedContractMethod<[ _initMarginRatio: BigNumberish ], [ void ], "nonpayable">; setKeeperFeeRatio: TypedContractMethod<[ _keeperFeeRatio: BigNumberish ], [ void ], "nonpayable">; setLimitMakerFeeRatio: TypedContractMethod<[ _limitMakerFeeRatio: BigNumberish ], [ void ], "nonpayable">; setLiquidationFeeRatio: TypedContractMethod<[ _liquidationFeeRatio: BigNumberish ], [ void ], "nonpayable">; setMaintenanceMarginRatio: TypedContractMethod<[ _maintenanceMarginRatio: BigNumberish ], [ void ], "nonpayable">; setMaxSize: TypedContractMethod<[ _maxSize: BigNumberish ], [ void ], "nonpayable">; setOpenInterestCap: TypedContractMethod<[ _openInterestNotionalCap: BigNumberish ], [ void ], "nonpayable">; setPoolLogicContract: TypedContractMethod<[ _poolLogic: AddressLike ], [ void ], "nonpayable">; setPools: TypedContractMethod<[ poolsToSet: PoolParamsStruct[], activeID: BigNumberish ], [ PoolStructOutput[] ], "nonpayable">; setTickSpacing: TypedContractMethod<[ spacing: BigNumberish ], [ void ], "nonpayable">; setTwapInterval: TypedContractMethod<[ _twapInterval: BigNumberish ], [ void ], "nonpayable">; settleFunding: TypedContractMethod<[ ], [ [ bigint, bigint, bigint ] & { premiumFraction: bigint; mark: bigint; indexPrice: bigint; } ], "nonpayable">; swapClose: TypedContractMethod<[ dirOfBase: BigNumberish, baseAmount: BigNumberish ], [ bigint ], "nonpayable">; swapOpen: TypedContractMethod<[ dirOfQuote: BigNumberish, quoteAmount: BigNumberish ], [ bigint ], "nonpayable">; transferOwnership: TypedContractMethod<[ newOwner: AddressLike ], [ void ], "payable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "addLiquidity"): TypedContractMethod<[ maker: AddressLike, liquidityAddData: LiquidityAddDataStruct[] ], [ [ LiquidityAddReturnDataStructOutput[], bigint ] & { returnData: LiquidityAddReturnDataStructOutput[]; marginAdded: bigint; } ], "nonpayable">; getFunction(nameOrSignature: "cancelOwnershipHandover"): TypedContractMethod<[], [void], "payable">; getFunction(nameOrSignature: "clearingHouse"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "completeOwnershipHandover"): TypedContractMethod<[pendingOwner: AddressLike], [void], "payable">; getFunction(nameOrSignature: "getAMMFee"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getActiveIndex"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getActivePool"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getBaseFeeRatio"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getBaseToFill"): TypedContractMethod<[targetPrice: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "getBaseValue"): TypedContractMethod<[ dirOfQuote: BigNumberish, quoteAmount: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "getFeeRatios"): TypedContractMethod<[], [FeeRatiosStructOutput], "view">; getFunction(nameOrSignature: "getFluctuationLimitRatio"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getFullMakerImpermanentPosition"): TypedContractMethod<[ maker: AddressLike ], [ [bigint, bigint] & { size: bigint; openNotional: bigint; } ], "view">; getFunction(nameOrSignature: "getFundingPeriod"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getFundingRate"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getIndexPrice"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getLastSettledFundingTime"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getLiquidationFeeRatio"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getLiquidationPrice"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getMakerImpermanentPosition"): TypedContractMethod<[ maker: AddressLike, poolIndexes: BigNumberish[] ], [ [bigint, bigint] & { size: bigint; openNotional: bigint; } ], "view">; getFunction(nameOrSignature: "getMakerPools"): TypedContractMethod<[maker: AddressLike], [string[]], "view">; getFunction(nameOrSignature: "getMakerPositionData"): TypedContractMethod<[ maker: AddressLike ], [ [ bigint, bigint, bigint, bigint, bigint, PoolPositionStructOutput[] ] & { size: bigint; openNotional: bigint; margin: bigint; pendingFees: bigint; pendingFundingPayment: bigint; poolInfo: PoolPositionStructOutput[]; } ], "view">; getFunction(nameOrSignature: "getMakerProfile"): TypedContractMethod<[ maker: AddressLike ], [ MakerProfileStructOutput ], "view">; getFunction(nameOrSignature: "getMarginRatio"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getMarkPrice"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getMarkPriceAfterClose"): TypedContractMethod<[ dirOfBase: BigNumberish, baseAmount: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "getMarkPriceAfterOpen"): TypedContractMethod<[ dirOfQuote: BigNumberish, quoteAmount: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "getMarkTwap"): TypedContractMethod<[interval: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "getMaxSize"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getNextFundingTime"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getOpenInterestCap"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getOpenMarginRatio"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getPendingMakerFees"): TypedContractMethod<[maker: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "getPendingMakerFundingPayment"): TypedContractMethod<[maker: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "getPool"): TypedContractMethod<[_index: BigNumberish], [string], "view">; getFunction(nameOrSignature: "getPoolsInRange"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "getPriceWeights"): TypedContractMethod<[ ], [ [bigint, bigint] & { markWeight: bigint; indexWeight: bigint; } ], "view">; getFunction(nameOrSignature: "getQuoteToFill"): TypedContractMethod<[targetPrice: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "getQuoteValue"): TypedContractMethod<[ dirOfBase: BigNumberish, baseAmount: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "getReserves"): TypedContractMethod<[ ], [ [bigint, bigint] & { quoteReserve: bigint; baseReserve: bigint; } ], "view">; getFunction(nameOrSignature: "getTickSpacing"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getTwapInterval"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "initialize"): TypedContractMethod<[params: AMMParamsStruct], [void], "nonpayable">; getFunction(nameOrSignature: "isActive"): TypedContractMethod<[], [boolean], "view">; getFunction(nameOrSignature: "isMakerLiquidatable"): TypedContractMethod<[maker: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "liquidateMaker"): TypedContractMethod<[ maker: AddressLike ], [ [ bigint, bigint, bigint ] & { size: bigint; openNotional: bigint; margin: bigint; } ], "nonpayable">; getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "ownershipHandoverExpiresAt"): TypedContractMethod<[pendingOwner: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "poolFactory"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "priceFeed"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "removeLiquidity"): TypedContractMethod<[ maker: AddressLike, liquidityRemoveData: LiquidityRemoveDataStruct[] ], [ [ bigint, bigint, bigint ] & { size: bigint; openNotional: bigint; marginRemoved: bigint; } ], "nonpayable">; getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "payable">; getFunction(nameOrSignature: "requestOwnershipHandover"): TypedContractMethod<[], [void], "payable">; getFunction(nameOrSignature: "setAMMFeeRatio"): TypedContractMethod<[_ammFeeRatio: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setActive"): TypedContractMethod<[_active: boolean], [void], "nonpayable">; getFunction(nameOrSignature: "setBaseFeeRatio"): TypedContractMethod<[_baseFeeRatio: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setFluctuationLimitRatio"): TypedContractMethod<[ _fluctuationLimitRatio: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setFundingPeriod"): TypedContractMethod<[_fundingPeriod: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setIndexPriceWeight"): TypedContractMethod<[ _indexPriceWeight: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setInitMarginRatio"): TypedContractMethod<[ _initMarginRatio: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setKeeperFeeRatio"): TypedContractMethod<[_keeperFeeRatio: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setLimitMakerFeeRatio"): TypedContractMethod<[ _limitMakerFeeRatio: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setLiquidationFeeRatio"): TypedContractMethod<[ _liquidationFeeRatio: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setMaintenanceMarginRatio"): TypedContractMethod<[ _maintenanceMarginRatio: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setMaxSize"): TypedContractMethod<[_maxSize: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setOpenInterestCap"): TypedContractMethod<[ _openInterestNotionalCap: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setPoolLogicContract"): TypedContractMethod<[_poolLogic: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "setPools"): TypedContractMethod<[ poolsToSet: PoolParamsStruct[], activeID: BigNumberish ], [ PoolStructOutput[] ], "nonpayable">; getFunction(nameOrSignature: "setTickSpacing"): TypedContractMethod<[spacing: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setTwapInterval"): TypedContractMethod<[_twapInterval: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "settleFunding"): TypedContractMethod<[ ], [ [ bigint, bigint, bigint ] & { premiumFraction: bigint; mark: bigint; indexPrice: bigint; } ], "nonpayable">; getFunction(nameOrSignature: "swapClose"): TypedContractMethod<[ dirOfBase: BigNumberish, baseAmount: BigNumberish ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "swapOpen"): TypedContractMethod<[ dirOfQuote: BigNumberish, quoteAmount: BigNumberish ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "payable">; getEvent(key: "AMMFeeRatioChanged"): TypedContractEvent; getEvent(key: "Activated"): TypedContractEvent; getEvent(key: "ActivePoolChanged"): TypedContractEvent; getEvent(key: "BaseFeeRatioChanged"): TypedContractEvent; getEvent(key: "CapChanged"): TypedContractEvent; getEvent(key: "Deactivated"): TypedContractEvent; getEvent(key: "FluctuationLimitRatioChanged"): TypedContractEvent; getEvent(key: "FundingPeriodChanged"): TypedContractEvent; getEvent(key: "FundingRateUpdated"): TypedContractEvent; getEvent(key: "InitMarginRatioChanged"): TypedContractEvent; getEvent(key: "Initialized"): TypedContractEvent; getEvent(key: "KeeperFeeRatioChanged"): TypedContractEvent; getEvent(key: "LimitMakerFeeRatioChanged"): TypedContractEvent; getEvent(key: "LiquidationFeeRatioChanged"): TypedContractEvent; getEvent(key: "LiquidityAdded"): TypedContractEvent; getEvent(key: "LiquidityRemoved"): TypedContractEvent; getEvent(key: "MaintenanceMarginRatioChanged"): TypedContractEvent; getEvent(key: "MaxSizeSet"): TypedContractEvent; getEvent(key: "NewPool"): TypedContractEvent; getEvent(key: "NewPriceSnapshot"): TypedContractEvent; getEvent(key: "OpenInterestCapSet"): TypedContractEvent; getEvent(key: "OwnershipHandoverCanceled"): TypedContractEvent; getEvent(key: "OwnershipHandoverRequested"): TypedContractEvent; getEvent(key: "OwnershipTransferred"): TypedContractEvent; getEvent(key: "PoolLogicContractChanged"): TypedContractEvent; getEvent(key: "PriceWeightsChanged"): TypedContractEvent; getEvent(key: "TickSpacingChanged"): TypedContractEvent; getEvent(key: "TwapIntervalChanged"): TypedContractEvent; filters: { "AMMFeeRatioChanged(uint256)": TypedContractEvent; AMMFeeRatioChanged: TypedContractEvent; "Activated()": TypedContractEvent; Activated: TypedContractEvent; "ActivePoolChanged(address,uint256)": TypedContractEvent; ActivePoolChanged: TypedContractEvent; "BaseFeeRatioChanged(uint256)": TypedContractEvent; BaseFeeRatioChanged: TypedContractEvent; "CapChanged(uint256,uint256)": TypedContractEvent; CapChanged: TypedContractEvent; "Deactivated()": TypedContractEvent; Deactivated: TypedContractEvent; "FluctuationLimitRatioChanged(uint256)": TypedContractEvent; FluctuationLimitRatioChanged: TypedContractEvent; "FundingPeriodChanged(uint256)": TypedContractEvent; FundingPeriodChanged: TypedContractEvent; "FundingRateUpdated(int256,uint256)": TypedContractEvent; FundingRateUpdated: TypedContractEvent; "InitMarginRatioChanged(uint256)": TypedContractEvent; InitMarginRatioChanged: TypedContractEvent; "Initialized(uint8)": TypedContractEvent; Initialized: TypedContractEvent; "KeeperFeeRatioChanged(uint256)": TypedContractEvent; KeeperFeeRatioChanged: TypedContractEvent; "LimitMakerFeeRatioChanged(uint256)": TypedContractEvent; LimitMakerFeeRatioChanged: TypedContractEvent; "LiquidationFeeRatioChanged(uint256)": TypedContractEvent; LiquidationFeeRatioChanged: TypedContractEvent; "LiquidityAdded(address,uint256,uint256,uint256[])": TypedContractEvent; LiquidityAdded: TypedContractEvent; "LiquidityRemoved(address,uint256,uint256,uint256[])": TypedContractEvent; LiquidityRemoved: TypedContractEvent; "MaintenanceMarginRatioChanged(uint256)": TypedContractEvent; MaintenanceMarginRatioChanged: TypedContractEvent; "MaxSizeSet(uint256)": TypedContractEvent; MaxSizeSet: TypedContractEvent; "NewPool(address,uint256)": TypedContractEvent; NewPool: TypedContractEvent; "NewPriceSnapshot(uint256,uint256)": TypedContractEvent; NewPriceSnapshot: TypedContractEvent; "OpenInterestCapSet(uint256)": TypedContractEvent; OpenInterestCapSet: TypedContractEvent; "OwnershipHandoverCanceled(address)": TypedContractEvent; OwnershipHandoverCanceled: TypedContractEvent; "OwnershipHandoverRequested(address)": TypedContractEvent; OwnershipHandoverRequested: TypedContractEvent; "OwnershipTransferred(address,address)": TypedContractEvent; OwnershipTransferred: TypedContractEvent; "PoolLogicContractChanged(address)": TypedContractEvent; PoolLogicContractChanged: TypedContractEvent; "PriceWeightsChanged(uint256,uint256)": TypedContractEvent; PriceWeightsChanged: TypedContractEvent; "TickSpacingChanged(uint256)": TypedContractEvent; TickSpacingChanged: TypedContractEvent; "TwapIntervalChanged(uint256)": TypedContractEvent; TwapIntervalChanged: TypedContractEvent; }; }