/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ 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 type FeeStateStruct = { feeRecipient: string; maxPerformanceFeePercentage: BigNumberish; performanceFeePercentage: BigNumberish; }; export type FeeStateStructOutput = [string, BigNumber, BigNumber] & { feeRecipient: string; maxPerformanceFeePercentage: BigNumber; performanceFeePercentage: BigNumber; }; export type AccountInfoStruct = { collateralBalance: BigNumberish; owedRealizedPnl: BigNumberish; pendingFundingPayments: BigNumberish; netQuoteBalance: BigNumberish; }; export type AccountInfoStructOutput = [ BigNumber, BigNumber, BigNumber, BigNumber ] & { collateralBalance: BigNumber; owedRealizedPnl: BigNumber; pendingFundingPayments: BigNumber; netQuoteBalance: BigNumber; }; export type PositionNotionalInfoStruct = { baseToken: string; baseBalance: BigNumberish; quoteBalance: BigNumberish; }; export type PositionNotionalInfoStructOutput = [ string, BigNumber, BigNumber ] & { baseToken: string; baseBalance: BigNumber; quoteBalance: BigNumber }; export type PositionUnitInfoStruct = { baseToken: string; baseUnit: BigNumberish; quoteUnit: BigNumberish; }; export type PositionUnitInfoStructOutput = [string, BigNumber, BigNumber] & { baseToken: string; baseUnit: BigNumber; quoteUnit: BigNumber; }; export interface IPerpV2BasisTradingModuleInterface extends utils.Interface { functions: { "collateralDecimals()": FunctionFragment; "collateralToken()": FunctionFragment; "deposit(address,uint256)": FunctionFragment; "feeSettings(address)": FunctionFragment; "getAccountInfo(address)": FunctionFragment; "getIssuanceAdjustments(address,uint256)": FunctionFragment; "getPositionNotionalInfo(address)": FunctionFragment; "getPositionUnitInfo(address)": FunctionFragment; "getRedemptionAdjustments(address,uint256)": FunctionFragment; "getUpdatedSettledFunding(address)": FunctionFragment; "initialize(address,(address,uint256,uint256))": FunctionFragment; "perpAccountBalance()": FunctionFragment; "perpClearingHouse()": FunctionFragment; "perpExchange()": FunctionFragment; "perpMarketRegistry()": FunctionFragment; "perpQuoter()": FunctionFragment; "perpVault()": FunctionFragment; "settledFunding(address)": FunctionFragment; "trade(address,address,int256,uint256)": FunctionFragment; "tradeAndTrackFunding(address,address,int256,uint256)": FunctionFragment; "updateFeeRecipient(address,address)": FunctionFragment; "updatePerformanceFee(address,uint256)": FunctionFragment; "withdraw(address,uint256)": FunctionFragment; "withdrawFundingAndAccrueFees(address,uint256)": FunctionFragment; }; encodeFunctionData( functionFragment: "collateralDecimals", values?: undefined ): string; encodeFunctionData( functionFragment: "collateralToken", values?: undefined ): string; encodeFunctionData( functionFragment: "deposit", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "feeSettings", values: [string]): string; encodeFunctionData( functionFragment: "getAccountInfo", values: [string] ): string; encodeFunctionData( functionFragment: "getIssuanceAdjustments", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "getPositionNotionalInfo", values: [string] ): string; encodeFunctionData( functionFragment: "getPositionUnitInfo", values: [string] ): string; encodeFunctionData( functionFragment: "getRedemptionAdjustments", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "getUpdatedSettledFunding", values: [string] ): string; encodeFunctionData( functionFragment: "initialize", values: [string, FeeStateStruct] ): string; encodeFunctionData( functionFragment: "perpAccountBalance", values?: undefined ): string; encodeFunctionData( functionFragment: "perpClearingHouse", values?: undefined ): string; encodeFunctionData( functionFragment: "perpExchange", values?: undefined ): string; encodeFunctionData( functionFragment: "perpMarketRegistry", values?: undefined ): string; encodeFunctionData( functionFragment: "perpQuoter", values?: undefined ): string; encodeFunctionData(functionFragment: "perpVault", values?: undefined): string; encodeFunctionData( functionFragment: "settledFunding", values: [string] ): string; encodeFunctionData( functionFragment: "trade", values: [string, string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "tradeAndTrackFunding", values: [string, string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "updateFeeRecipient", values: [string, string] ): string; encodeFunctionData( functionFragment: "updatePerformanceFee", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "withdraw", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "withdrawFundingAndAccrueFees", values: [string, BigNumberish] ): string; decodeFunctionResult( functionFragment: "collateralDecimals", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "collateralToken", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult( functionFragment: "feeSettings", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getAccountInfo", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getIssuanceAdjustments", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getPositionNotionalInfo", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getPositionUnitInfo", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getRedemptionAdjustments", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getUpdatedSettledFunding", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult( functionFragment: "perpAccountBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "perpClearingHouse", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "perpExchange", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "perpMarketRegistry", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "perpQuoter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "perpVault", data: BytesLike): Result; decodeFunctionResult( functionFragment: "settledFunding", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "trade", data: BytesLike): Result; decodeFunctionResult( functionFragment: "tradeAndTrackFunding", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updateFeeRecipient", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "updatePerformanceFee", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; decodeFunctionResult( functionFragment: "withdrawFundingAndAccrueFees", data: BytesLike ): Result; events: { "CollateralDeposited(address,address,uint256)": EventFragment; "CollateralWithdrawn(address,address,uint256)": EventFragment; "FeeRecipientUpdated(address,address)": EventFragment; "FundingWithdrawn(address,address,uint256,uint256,uint256)": EventFragment; "PerformanceFeeUpdated(address,uint256)": EventFragment; "PerpTraded(address,address,uint256,uint256,uint256,bool)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "CollateralDeposited"): EventFragment; getEvent(nameOrSignatureOrTopic: "CollateralWithdrawn"): EventFragment; getEvent(nameOrSignatureOrTopic: "FeeRecipientUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "FundingWithdrawn"): EventFragment; getEvent(nameOrSignatureOrTopic: "PerformanceFeeUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "PerpTraded"): EventFragment; } export type CollateralDepositedEvent = TypedEvent< [string, string, BigNumber], { _setToken: string; _collateralToken: string; _amountDeposited: BigNumber } >; export type CollateralDepositedEventFilter = TypedEventFilter; export type CollateralWithdrawnEvent = TypedEvent< [string, string, BigNumber], { _setToken: string; _collateralToken: string; _amountWithdrawn: BigNumber } >; export type CollateralWithdrawnEventFilter = TypedEventFilter; export type FeeRecipientUpdatedEvent = TypedEvent< [string, string], { _setToken: string; _newFeeRecipient: string } >; export type FeeRecipientUpdatedEventFilter = TypedEventFilter; export type FundingWithdrawnEvent = TypedEvent< [string, string, BigNumber, BigNumber, BigNumber], { _setToken: string; _collateralToken: string; _amountWithdrawn: BigNumber; _managerFee: BigNumber; _protocolFee: BigNumber; } >; export type FundingWithdrawnEventFilter = TypedEventFilter; export type PerformanceFeeUpdatedEvent = TypedEvent< [string, BigNumber], { _setToken: string; _newPerformanceFee: BigNumber } >; export type PerformanceFeeUpdatedEventFilter = TypedEventFilter; export type PerpTradedEvent = TypedEvent< [string, string, BigNumber, BigNumber, BigNumber, boolean], { _setToken: string; _baseToken: string; _deltaBase: BigNumber; _deltaQuote: BigNumber; _protocolFee: BigNumber; _isBuy: boolean; } >; export type PerpTradedEventFilter = TypedEventFilter; export interface IPerpV2BasisTradingModule extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IPerpV2BasisTradingModuleInterface; 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: { collateralDecimals(overrides?: CallOverrides): Promise<[number]>; collateralToken(overrides?: CallOverrides): Promise<[string]>; deposit( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; feeSettings( _setToken: string, overrides?: CallOverrides ): Promise<[FeeStateStructOutput]>; getAccountInfo( _setToken: string, overrides?: CallOverrides ): Promise< [AccountInfoStructOutput] & { accountInfo: AccountInfoStructOutput } >; getIssuanceAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getPositionNotionalInfo( _setToken: string, overrides?: CallOverrides ): Promise<[PositionNotionalInfoStructOutput[]]>; getPositionUnitInfo( _setToken: string, overrides?: CallOverrides ): Promise<[PositionUnitInfoStructOutput[]]>; getRedemptionAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getUpdatedSettledFunding( _setToken: string, overrides?: CallOverrides ): Promise<[BigNumber]>; "initialize(address,(address,uint256,uint256))"( _setToken: string, _settings: FeeStateStruct, overrides?: Overrides & { from?: string | Promise } ): Promise; "initialize(address)"( _setToken: string, overrides?: Overrides & { from?: string | Promise } ): Promise; perpAccountBalance(overrides?: CallOverrides): Promise<[string]>; perpClearingHouse(overrides?: CallOverrides): Promise<[string]>; perpExchange(overrides?: CallOverrides): Promise<[string]>; perpMarketRegistry(overrides?: CallOverrides): Promise<[string]>; perpQuoter(overrides?: CallOverrides): Promise<[string]>; perpVault(overrides?: CallOverrides): Promise<[string]>; settledFunding( _settledFunding: string, overrides?: CallOverrides ): Promise<[BigNumber]>; trade( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; tradeAndTrackFunding( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; updateFeeRecipient( _setToken: string, _newFeeRecipient: string, overrides?: Overrides & { from?: string | Promise } ): Promise; updatePerformanceFee( _setToken: string, _newFee: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdraw( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdrawFundingAndAccrueFees( _setToken: string, _notionalFunding: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; }; collateralDecimals(overrides?: CallOverrides): Promise; collateralToken(overrides?: CallOverrides): Promise; deposit( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; feeSettings( _setToken: string, overrides?: CallOverrides ): Promise; getAccountInfo( _setToken: string, overrides?: CallOverrides ): Promise; getIssuanceAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getPositionNotionalInfo( _setToken: string, overrides?: CallOverrides ): Promise; getPositionUnitInfo( _setToken: string, overrides?: CallOverrides ): Promise; getRedemptionAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getUpdatedSettledFunding( _setToken: string, overrides?: CallOverrides ): Promise; "initialize(address,(address,uint256,uint256))"( _setToken: string, _settings: FeeStateStruct, overrides?: Overrides & { from?: string | Promise } ): Promise; "initialize(address)"( _setToken: string, overrides?: Overrides & { from?: string | Promise } ): Promise; perpAccountBalance(overrides?: CallOverrides): Promise; perpClearingHouse(overrides?: CallOverrides): Promise; perpExchange(overrides?: CallOverrides): Promise; perpMarketRegistry(overrides?: CallOverrides): Promise; perpQuoter(overrides?: CallOverrides): Promise; perpVault(overrides?: CallOverrides): Promise; settledFunding( _settledFunding: string, overrides?: CallOverrides ): Promise; trade( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; tradeAndTrackFunding( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; updateFeeRecipient( _setToken: string, _newFeeRecipient: string, overrides?: Overrides & { from?: string | Promise } ): Promise; updatePerformanceFee( _setToken: string, _newFee: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdraw( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdrawFundingAndAccrueFees( _setToken: string, _notionalFunding: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; callStatic: { collateralDecimals(overrides?: CallOverrides): Promise; collateralToken(overrides?: CallOverrides): Promise; deposit( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: CallOverrides ): Promise; feeSettings( _setToken: string, overrides?: CallOverrides ): Promise; getAccountInfo( _setToken: string, overrides?: CallOverrides ): Promise; getIssuanceAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber[], BigNumber[]]>; getPositionNotionalInfo( _setToken: string, overrides?: CallOverrides ): Promise; getPositionUnitInfo( _setToken: string, overrides?: CallOverrides ): Promise; getRedemptionAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber[], BigNumber[]]>; getUpdatedSettledFunding( _setToken: string, overrides?: CallOverrides ): Promise; "initialize(address,(address,uint256,uint256))"( _setToken: string, _settings: FeeStateStruct, overrides?: CallOverrides ): Promise; "initialize(address)"( _setToken: string, overrides?: CallOverrides ): Promise; perpAccountBalance(overrides?: CallOverrides): Promise; perpClearingHouse(overrides?: CallOverrides): Promise; perpExchange(overrides?: CallOverrides): Promise; perpMarketRegistry(overrides?: CallOverrides): Promise; perpQuoter(overrides?: CallOverrides): Promise; perpVault(overrides?: CallOverrides): Promise; settledFunding( _settledFunding: string, overrides?: CallOverrides ): Promise; trade( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: CallOverrides ): Promise; tradeAndTrackFunding( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: CallOverrides ): Promise; updateFeeRecipient( _setToken: string, _newFeeRecipient: string, overrides?: CallOverrides ): Promise; updatePerformanceFee( _setToken: string, _newFee: BigNumberish, overrides?: CallOverrides ): Promise; withdraw( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: CallOverrides ): Promise; withdrawFundingAndAccrueFees( _setToken: string, _notionalFunding: BigNumberish, overrides?: CallOverrides ): Promise; }; filters: { "CollateralDeposited(address,address,uint256)"( _setToken?: string | null, _collateralToken?: null, _amountDeposited?: null ): CollateralDepositedEventFilter; CollateralDeposited( _setToken?: string | null, _collateralToken?: null, _amountDeposited?: null ): CollateralDepositedEventFilter; "CollateralWithdrawn(address,address,uint256)"( _setToken?: string | null, _collateralToken?: null, _amountWithdrawn?: null ): CollateralWithdrawnEventFilter; CollateralWithdrawn( _setToken?: string | null, _collateralToken?: null, _amountWithdrawn?: null ): CollateralWithdrawnEventFilter; "FeeRecipientUpdated(address,address)"( _setToken?: string | null, _newFeeRecipient?: null ): FeeRecipientUpdatedEventFilter; FeeRecipientUpdated( _setToken?: string | null, _newFeeRecipient?: null ): FeeRecipientUpdatedEventFilter; "FundingWithdrawn(address,address,uint256,uint256,uint256)"( _setToken?: string | null, _collateralToken?: null, _amountWithdrawn?: null, _managerFee?: null, _protocolFee?: null ): FundingWithdrawnEventFilter; FundingWithdrawn( _setToken?: string | null, _collateralToken?: null, _amountWithdrawn?: null, _managerFee?: null, _protocolFee?: null ): FundingWithdrawnEventFilter; "PerformanceFeeUpdated(address,uint256)"( _setToken?: string | null, _newPerformanceFee?: null ): PerformanceFeeUpdatedEventFilter; PerformanceFeeUpdated( _setToken?: string | null, _newPerformanceFee?: null ): PerformanceFeeUpdatedEventFilter; "PerpTraded(address,address,uint256,uint256,uint256,bool)"( _setToken?: string | null, _baseToken?: string | null, _deltaBase?: null, _deltaQuote?: null, _protocolFee?: null, _isBuy?: null ): PerpTradedEventFilter; PerpTraded( _setToken?: string | null, _baseToken?: string | null, _deltaBase?: null, _deltaQuote?: null, _protocolFee?: null, _isBuy?: null ): PerpTradedEventFilter; }; estimateGas: { collateralDecimals(overrides?: CallOverrides): Promise; collateralToken(overrides?: CallOverrides): Promise; deposit( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; feeSettings( _setToken: string, overrides?: CallOverrides ): Promise; getAccountInfo( _setToken: string, overrides?: CallOverrides ): Promise; getIssuanceAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getPositionNotionalInfo( _setToken: string, overrides?: CallOverrides ): Promise; getPositionUnitInfo( _setToken: string, overrides?: CallOverrides ): Promise; getRedemptionAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getUpdatedSettledFunding( _setToken: string, overrides?: CallOverrides ): Promise; "initialize(address,(address,uint256,uint256))"( _setToken: string, _settings: FeeStateStruct, overrides?: Overrides & { from?: string | Promise } ): Promise; "initialize(address)"( _setToken: string, overrides?: Overrides & { from?: string | Promise } ): Promise; perpAccountBalance(overrides?: CallOverrides): Promise; perpClearingHouse(overrides?: CallOverrides): Promise; perpExchange(overrides?: CallOverrides): Promise; perpMarketRegistry(overrides?: CallOverrides): Promise; perpQuoter(overrides?: CallOverrides): Promise; perpVault(overrides?: CallOverrides): Promise; settledFunding( _settledFunding: string, overrides?: CallOverrides ): Promise; trade( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; tradeAndTrackFunding( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; updateFeeRecipient( _setToken: string, _newFeeRecipient: string, overrides?: Overrides & { from?: string | Promise } ): Promise; updatePerformanceFee( _setToken: string, _newFee: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdraw( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdrawFundingAndAccrueFees( _setToken: string, _notionalFunding: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; }; populateTransaction: { collateralDecimals( overrides?: CallOverrides ): Promise; collateralToken(overrides?: CallOverrides): Promise; deposit( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; feeSettings( _setToken: string, overrides?: CallOverrides ): Promise; getAccountInfo( _setToken: string, overrides?: CallOverrides ): Promise; getIssuanceAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getPositionNotionalInfo( _setToken: string, overrides?: CallOverrides ): Promise; getPositionUnitInfo( _setToken: string, overrides?: CallOverrides ): Promise; getRedemptionAdjustments( _setToken: string, _setTokenQuantity: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; getUpdatedSettledFunding( _setToken: string, overrides?: CallOverrides ): Promise; "initialize(address,(address,uint256,uint256))"( _setToken: string, _settings: FeeStateStruct, overrides?: Overrides & { from?: string | Promise } ): Promise; "initialize(address)"( _setToken: string, overrides?: Overrides & { from?: string | Promise } ): Promise; perpAccountBalance( overrides?: CallOverrides ): Promise; perpClearingHouse(overrides?: CallOverrides): Promise; perpExchange(overrides?: CallOverrides): Promise; perpMarketRegistry( overrides?: CallOverrides ): Promise; perpQuoter(overrides?: CallOverrides): Promise; perpVault(overrides?: CallOverrides): Promise; settledFunding( _settledFunding: string, overrides?: CallOverrides ): Promise; trade( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; tradeAndTrackFunding( _setToken: string, _baseToken: string, _baseQuantityUnits: BigNumberish, _quoteBoundQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; updateFeeRecipient( _setToken: string, _newFeeRecipient: string, overrides?: Overrides & { from?: string | Promise } ): Promise; updatePerformanceFee( _setToken: string, _newFee: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdraw( _setToken: string, _collateralQuantityUnits: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; withdrawFundingAndAccrueFees( _setToken: string, _notionalFunding: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; }; }