import { iMarketOffAbi } from '../contracts/abis/viemAbis'; import { BaseContractHelper } from './base-contract-helper'; import { ContractOrder } from '../common/types'; import { MulticallOptions } from '../multicall/multicall'; import { MarketAcc, Side } from '../types'; export declare class MarketContract extends BaseContractHelper { abi(): readonly [{ readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "FIndex"; readonly name: "newIndex"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "FTag"; readonly name: "newFTag"; readonly type: "uint32"; }]; readonly name: "FIndexUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "FIndex"; readonly name: "newIndex"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "FTag"; readonly name: "newFTag"; readonly type: "uint32"; }]; readonly name: "FTagUpdatedOnPurge"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint64"; readonly name: "newTakerFee"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newOtcFee"; readonly type: "uint64"; }]; readonly name: "FeeRatesUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "win"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "lose"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "Trade"; readonly name: "delevTrade"; readonly type: "uint256"; }]; readonly name: "ForceDeleverage"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint32"; readonly name: "newWindow"; readonly type: "uint32"; }]; readonly name: "ImpliedRateObservationWindowUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "OrderId[]"; readonly name: "orderIds"; readonly type: "uint64[]"; }]; readonly name: "LimitOrderCancelled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "int16"; readonly name: "loUpperConstBase1e4"; readonly type: "int16"; }, { readonly indexed: false; readonly internalType: "int16"; readonly name: "loUpperSlopeBase1e4"; readonly type: "int16"; }, { readonly indexed: false; readonly internalType: "int16"; readonly name: "loLowerConstBase1e4"; readonly type: "int16"; }, { readonly indexed: false; readonly internalType: "int16"; readonly name: "loLowerSlopeBase1e4"; readonly type: "int16"; }]; readonly name: "LimitOrderConfigUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "OrderId"; readonly name: "from"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "OrderId"; readonly name: "to"; readonly type: "uint64"; }]; readonly name: "LimitOrderFilled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "OrderId[]"; readonly name: "orderIds"; readonly type: "uint64[]"; }]; readonly name: "LimitOrderForcedCancelled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "OrderId"; readonly name: "orderId"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "filledSize"; readonly type: "uint256"; }]; readonly name: "LimitOrderPartiallyFilled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "maker"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "OrderId[]"; readonly name: "orderIds"; readonly type: "uint64[]"; }, { readonly indexed: false; readonly internalType: "uint256[]"; readonly name: "sizes"; readonly type: "uint256[]"; }]; readonly name: "LimitOrderPlaced"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "liq"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "vio"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "Trade"; readonly name: "liqTrade"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "liqFee"; readonly type: "uint256"; }]; readonly name: "Liquidate"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint64"; readonly name: "base"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "slope"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "feeRate"; readonly type: "uint64"; }]; readonly indexed: false; readonly internalType: "struct IMarketAllTypes.LiqSettings"; readonly name: "newLiqSettings"; readonly type: "tuple"; }]; readonly name: "LiquidationSettingsUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint64"; readonly name: "newKIM"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newKMM"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newTThresh"; readonly type: "uint64"; }]; readonly name: "MarginConfigUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "Trade"; readonly name: "totalTrade"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "totalFees"; readonly type: "uint256"; }]; readonly name: "MarketOrdersFilled"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint16"; readonly name: "newMaxOpenOrders"; readonly type: "uint16"; }]; readonly name: "MaxOpenOrdersUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint128"; readonly name: "newHardOICap"; readonly type: "uint128"; }]; readonly name: "OICapUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "OrderId"; readonly name: "from"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "OrderId"; readonly name: "to"; readonly type: "uint64"; }]; readonly name: "OobOrdersPurged"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "address"; readonly name: "newMarkRateOracle"; readonly type: "address"; }, { readonly indexed: false; readonly internalType: "address"; readonly name: "newFIndexOracle"; readonly type: "address"; }]; readonly name: "OracleAddressesUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "counterParty"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "Trade"; readonly name: "trade"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "int256"; readonly name: "cashToCounter"; readonly type: "int256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "otcFee"; readonly type: "uint256"; }]; readonly name: "OtcSwap"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "lastFTime"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "latestFTime"; readonly type: "uint256"; }, { readonly indexed: false; readonly internalType: "int256"; readonly name: "payment"; readonly type: "int256"; }, { readonly indexed: false; readonly internalType: "uint256"; readonly name: "fees"; readonly type: "uint256"; }]; readonly name: "PaymentFromSettlement"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newTakerDisc"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newOtcDisc"; readonly type: "uint64"; }]; readonly name: "PersonalDiscRatesUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "bool"; readonly name: "exemptCLOCheck"; readonly type: "bool"; }]; readonly name: "PersonalExemptCLOCheckUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: true; readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newKIM"; readonly type: "uint64"; }, { readonly indexed: false; readonly internalType: "uint64"; readonly name: "newKMM"; readonly type: "uint64"; }]; readonly name: "PersonalMarginConfigUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "uint16"; readonly name: "newMaxRateDeviationFactorBase1e4"; readonly type: "uint16"; }, { readonly indexed: false; readonly internalType: "uint16"; readonly name: "newClosingOrderBoundBase1e4"; readonly type: "uint16"; }]; readonly name: "RateBoundConfigUpdated"; readonly type: "event"; }, { readonly anonymous: false; readonly inputs: readonly [{ readonly indexed: false; readonly internalType: "enum IMarketAllTypes.MarketStatus"; readonly name: "newStatus"; readonly type: "uint8"; }]; readonly name: "StatusUpdated"; readonly type: "event"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "vioAddr"; readonly type: "bytes26"; }, { readonly internalType: "int256"; readonly name: "sizeToLiq"; readonly type: "int256"; }, { readonly internalType: "int256"; readonly name: "vioHealthRatio"; readonly type: "int256"; }]; readonly name: "calcLiqTradeNoSettle"; readonly outputs: readonly [{ readonly internalType: "Trade"; readonly name: "liqTrade"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly internalType: "enum MarginType"; readonly name: "marginType"; readonly type: "uint8"; }]; readonly name: "calcMarginNoSettle"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "calcPositionValueNoSettle"; readonly outputs: readonly [{ readonly internalType: "int256"; readonly name: ""; readonly type: "int256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "userAddr"; readonly type: "bytes26"; }, { readonly components: readonly [{ readonly internalType: "OrderId[]"; readonly name: "ids"; readonly type: "uint64[]"; }, { readonly internalType: "bool"; readonly name: "isAll"; readonly type: "bool"; }, { readonly internalType: "bool"; readonly name: "isStrict"; readonly type: "bool"; }]; readonly internalType: "struct CancelData"; readonly name: "cancelData"; readonly type: "tuple"; }, { readonly internalType: "bool"; readonly name: "isForceCancel"; readonly type: "bool"; }]; readonly name: "cancel"; readonly outputs: readonly [{ readonly internalType: "PayFee"; readonly name: "settle"; readonly type: "uint256"; }, { readonly internalType: "OrderId[]"; readonly name: "removedIds"; readonly type: "uint64[]"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "descriptor"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: "isIsolatedOnly"; readonly type: "bool"; }, { readonly internalType: "TokenId"; readonly name: "tokenId"; readonly type: "uint16"; }, { readonly internalType: "MarketId"; readonly name: "marketId"; readonly type: "uint24"; }, { readonly internalType: "uint32"; readonly name: "maturity"; readonly type: "uint32"; }, { readonly internalType: "uint8"; readonly name: "tickStep"; readonly type: "uint8"; }, { readonly internalType: "uint16"; readonly name: "iTickThresh"; readonly type: "uint16"; }, { readonly internalType: "uint32"; readonly name: "latestFTime"; readonly type: "uint32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "winAddr"; readonly type: "bytes26"; }, { readonly internalType: "MarketAcc"; readonly name: "loseAddr"; readonly type: "bytes26"; }, { readonly internalType: "int256"; readonly name: "sizeToWin"; readonly type: "int256"; }, { readonly internalType: "int256"; readonly name: "loseValue"; readonly type: "int256"; }, { readonly internalType: "uint256"; readonly name: "alpha"; readonly type: "uint256"; }]; readonly name: "forceDeleverage"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "PayFee"; readonly name: "winSettle"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "winPayment"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "loseSettle"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "losePayment"; readonly type: "uint256"; }, { readonly internalType: "Trade"; readonly name: "delevTrade"; readonly type: "uint256"; }]; readonly internalType: "struct DelevResult"; readonly name: "res"; readonly type: "tuple"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint256"; readonly name: "maxNTicksPurgeOneSide"; readonly type: "uint256"; }]; readonly name: "forcePurgeOobOrders"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "nTicksPurgedLong"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "nTicksPurgedShort"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getAllOpenOrders"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "enum OrderStatus"; readonly name: "status"; readonly type: "uint8"; }, { readonly internalType: "OrderId"; readonly name: "id"; readonly type: "uint64"; }, { readonly internalType: "MarketAcc"; readonly name: "maker"; readonly type: "bytes26"; }, { readonly internalType: "uint256"; readonly name: "size"; readonly type: "uint256"; }, { readonly internalType: "int256"; readonly name: "rate"; readonly type: "int256"; }]; readonly internalType: "struct IMarketAllTypes.Order[]"; readonly name: ""; readonly type: "tuple[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly internalType: "MarketAcc"; readonly name: "otcCounter"; readonly type: "bytes26"; }]; readonly name: "getBestFeeRates"; readonly outputs: readonly [{ readonly internalType: "uint64"; readonly name: "takerFee"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "otcFee"; readonly type: "uint64"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getDelevLiqNonce"; readonly outputs: readonly [{ readonly internalType: "uint24"; readonly name: ""; readonly type: "uint24"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getDiscRates"; readonly outputs: readonly [{ readonly internalType: "uint64"; readonly name: "takerDisc"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "otcDisc"; readonly type: "uint64"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getExemptCLOCheck"; readonly outputs: readonly [{ readonly internalType: "bool"; readonly name: "exemptCLOCheck"; readonly type: "bool"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getImpliedRate"; readonly outputs: readonly [{ readonly internalType: "int128"; readonly name: "lastTradedRate"; readonly type: "int128"; }, { readonly internalType: "int128"; readonly name: "oracleRate"; readonly type: "int128"; }, { readonly internalType: "uint32"; readonly name: "lastTradedTime"; readonly type: "uint32"; }, { readonly internalType: "uint32"; readonly name: "observationWindow"; readonly type: "uint32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getLatestFIndex"; readonly outputs: readonly [{ readonly internalType: "FIndex"; readonly name: ""; readonly type: "bytes26"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getLatestFTime"; readonly outputs: readonly [{ readonly internalType: "uint32"; readonly name: ""; readonly type: "uint32"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getMarginFactor"; readonly outputs: readonly [{ readonly internalType: "uint64"; readonly name: "kIM"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "kMM"; readonly type: "uint64"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getMarkRate"; readonly outputs: readonly [{ readonly internalType: "int256"; readonly name: ""; readonly type: "int256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getMarkRateView"; readonly outputs: readonly [{ readonly internalType: "int256"; readonly name: ""; readonly type: "int256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getMarketConfig"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint16"; readonly name: "maxOpenOrders"; readonly type: "uint16"; }, { readonly internalType: "address"; readonly name: "markRateOracle"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "fIndexOracle"; readonly type: "address"; }, { readonly internalType: "uint128"; readonly name: "hardOICap"; readonly type: "uint128"; }, { readonly internalType: "uint64"; readonly name: "takerFee"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "otcFee"; readonly type: "uint64"; }, { readonly components: readonly [{ readonly internalType: "uint64"; readonly name: "base"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "slope"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "feeRate"; readonly type: "uint64"; }]; readonly internalType: "struct IMarketAllTypes.LiqSettings"; readonly name: "liqSettings"; readonly type: "tuple"; }, { readonly internalType: "uint64"; readonly name: "kIM"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "kMM"; readonly type: "uint64"; }, { readonly internalType: "uint32"; readonly name: "tThresh"; readonly type: "uint32"; }, { readonly internalType: "uint16"; readonly name: "maxRateDeviationFactorBase1e4"; readonly type: "uint16"; }, { readonly internalType: "uint16"; readonly name: "closingOrderBoundBase1e4"; readonly type: "uint16"; }, { readonly internalType: "int16"; readonly name: "loUpperConstBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loUpperSlopeBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loLowerConstBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loLowerSlopeBase1e4"; readonly type: "int16"; }, { readonly internalType: "enum IMarketAllTypes.MarketStatus"; readonly name: "status"; readonly type: "uint8"; }, { readonly internalType: "bool"; readonly name: "useImpliedAsMarkRate"; readonly type: "bool"; }]; readonly internalType: "struct IMarketAllTypes.MarketConfigStruct"; readonly name: ""; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "enum Side"; readonly name: "side"; readonly type: "uint8"; }, { readonly internalType: "int16"; readonly name: "limitTick"; readonly type: "int16"; }, { readonly internalType: "uint256"; readonly name: "maxNTicks"; readonly type: "uint256"; }]; readonly name: "getNextNTicks"; readonly outputs: readonly [{ readonly internalType: "int16[]"; readonly name: "ticks"; readonly type: "int16[]"; }, { readonly internalType: "uint256[]"; readonly name: "tickSizes"; readonly type: "uint256[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "getOI"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: ""; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "OrderId"; readonly name: "id"; readonly type: "uint64"; }]; readonly name: "getOrder"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "enum OrderStatus"; readonly name: "status"; readonly type: "uint8"; }, { readonly internalType: "OrderId"; readonly name: "id"; readonly type: "uint64"; }, { readonly internalType: "MarketAcc"; readonly name: "maker"; readonly type: "bytes26"; }, { readonly internalType: "uint256"; readonly name: "size"; readonly type: "uint256"; }, { readonly internalType: "int256"; readonly name: "rate"; readonly type: "int256"; }]; readonly internalType: "struct IMarketAllTypes.Order"; readonly name: "order"; readonly type: "tuple"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getPendingSizes"; readonly outputs: readonly [{ readonly internalType: "uint256"; readonly name: "pendingLongSize"; readonly type: "uint256"; }, { readonly internalType: "uint256"; readonly name: "pendingShortSize"; readonly type: "uint256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }]; readonly name: "getSignedSizeNoSettle"; readonly outputs: readonly [{ readonly internalType: "int256"; readonly name: ""; readonly type: "int256"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "enum Side"; readonly name: "side"; readonly type: "uint8"; }, { readonly internalType: "int16"; readonly name: "fromTick"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "toTick"; readonly type: "int16"; }]; readonly name: "getTickSumSize"; readonly outputs: readonly [{ readonly internalType: "uint256[]"; readonly name: "sizes"; readonly type: "uint256[]"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly components: readonly [{ readonly internalType: "string"; readonly name: "name"; readonly type: "string"; }, { readonly internalType: "string"; readonly name: "symbol"; readonly type: "string"; }, { readonly internalType: "bool"; readonly name: "k_isIsolatedOnly"; readonly type: "bool"; }, { readonly internalType: "uint32"; readonly name: "k_maturity"; readonly type: "uint32"; }, { readonly internalType: "TokenId"; readonly name: "k_tokenId"; readonly type: "uint16"; }, { readonly internalType: "MarketId"; readonly name: "k_marketId"; readonly type: "uint24"; }, { readonly internalType: "uint8"; readonly name: "k_tickStep"; readonly type: "uint8"; }, { readonly internalType: "uint16"; readonly name: "k_iTickThresh"; readonly type: "uint16"; }]; readonly internalType: "struct IMarketAllTypes.MarketImmutableDataStruct"; readonly name: "initialImmData"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "uint16"; readonly name: "maxOpenOrders"; readonly type: "uint16"; }, { readonly internalType: "address"; readonly name: "markRateOracle"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "fIndexOracle"; readonly type: "address"; }, { readonly internalType: "uint128"; readonly name: "hardOICap"; readonly type: "uint128"; }, { readonly internalType: "uint64"; readonly name: "takerFee"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "otcFee"; readonly type: "uint64"; }, { readonly components: readonly [{ readonly internalType: "uint64"; readonly name: "base"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "slope"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "feeRate"; readonly type: "uint64"; }]; readonly internalType: "struct IMarketAllTypes.LiqSettings"; readonly name: "liqSettings"; readonly type: "tuple"; }, { readonly internalType: "uint64"; readonly name: "kIM"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "kMM"; readonly type: "uint64"; }, { readonly internalType: "uint32"; readonly name: "tThresh"; readonly type: "uint32"; }, { readonly internalType: "uint16"; readonly name: "maxRateDeviationFactorBase1e4"; readonly type: "uint16"; }, { readonly internalType: "uint16"; readonly name: "closingOrderBoundBase1e4"; readonly type: "uint16"; }, { readonly internalType: "int16"; readonly name: "loUpperConstBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loUpperSlopeBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loLowerConstBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loLowerSlopeBase1e4"; readonly type: "int16"; }, { readonly internalType: "enum IMarketAllTypes.MarketStatus"; readonly name: "status"; readonly type: "uint8"; }, { readonly internalType: "bool"; readonly name: "useImpliedAsMarkRate"; readonly type: "bool"; }]; readonly internalType: "struct IMarketAllTypes.MarketConfigStruct"; readonly name: "initialConfig"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "int16"; readonly name: "seedTradedTick"; readonly type: "int16"; }, { readonly internalType: "uint32"; readonly name: "window"; readonly type: "uint32"; }]; readonly internalType: "struct MarketImpliedRateLib.InitStruct"; readonly name: "impliedRateInit"; readonly type: "tuple"; }]; readonly name: "initialize"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "liqAddr"; readonly type: "bytes26"; }, { readonly internalType: "MarketAcc"; readonly name: "vioAddr"; readonly type: "bytes26"; }, { readonly internalType: "int256"; readonly name: "sizeToLiq"; readonly type: "int256"; }, { readonly internalType: "int256"; readonly name: "vioHealthRatio"; readonly type: "int256"; }, { readonly internalType: "int256"; readonly name: "critHR"; readonly type: "int256"; }]; readonly name: "liquidate"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "bool"; readonly name: "isStrictIMLiq"; readonly type: "bool"; }, { readonly internalType: "VMResult"; readonly name: "finalVMLiq"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "liqSettle"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "liqPayment"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "vioSettle"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "vioPayment"; readonly type: "uint256"; }, { readonly internalType: "Trade"; readonly name: "liqTrade"; readonly type: "uint256"; }]; readonly internalType: "struct LiqResult"; readonly name: "res"; readonly type: "tuple"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "marketHub"; readonly outputs: readonly [{ readonly internalType: "address"; readonly name: ""; readonly type: "address"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "name"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "userAddr"; readonly type: "bytes26"; }, { readonly components: readonly [{ readonly internalType: "enum TimeInForce"; readonly name: "tif"; readonly type: "uint8"; }, { readonly internalType: "enum Side"; readonly name: "side"; readonly type: "uint8"; }, { readonly internalType: "uint256[]"; readonly name: "sizes"; readonly type: "uint256[]"; }, { readonly internalType: "int16[]"; readonly name: "limitTicks"; readonly type: "int16[]"; }]; readonly internalType: "struct LongShort"; readonly name: "orders"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "OrderId[]"; readonly name: "ids"; readonly type: "uint64[]"; }, { readonly internalType: "bool"; readonly name: "isAll"; readonly type: "bool"; }, { readonly internalType: "bool"; readonly name: "isStrict"; readonly type: "bool"; }]; readonly internalType: "struct CancelData"; readonly name: "cancels"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "MarketAcc"; readonly name: "counter"; readonly type: "bytes26"; }, { readonly internalType: "Trade"; readonly name: "trade"; readonly type: "uint256"; }, { readonly internalType: "int256"; readonly name: "cashToCounter"; readonly type: "int256"; }]; readonly internalType: "struct OTCTrade[]"; readonly name: "OTCs"; readonly type: "tuple[]"; }, { readonly internalType: "int256"; readonly name: "critHR"; readonly type: "int256"; }]; readonly name: "orderAndOtc"; readonly outputs: readonly [{ readonly components: readonly [{ readonly internalType: "PayFee"; readonly name: "settle"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "payment"; readonly type: "uint256"; }, { readonly internalType: "OrderId[]"; readonly name: "removedIds"; readonly type: "uint64[]"; }, { readonly internalType: "Trade"; readonly name: "bookMatched"; readonly type: "uint256"; }, { readonly internalType: "MarketAcc"; readonly name: "partialMaker"; readonly type: "bytes26"; }, { readonly internalType: "PayFee"; readonly name: "partialPayFee"; readonly type: "uint256"; }, { readonly internalType: "bool"; readonly name: "isStrictIM"; readonly type: "bool"; }, { readonly internalType: "VMResult"; readonly name: "finalVM"; readonly type: "uint256"; }]; readonly internalType: "struct UserResult"; readonly name: "userRes"; readonly type: "tuple"; }, { readonly components: readonly [{ readonly internalType: "PayFee"; readonly name: "settle"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "payment"; readonly type: "uint256"; }, { readonly internalType: "bool"; readonly name: "isStrictIM"; readonly type: "bool"; }, { readonly internalType: "VMResult"; readonly name: "finalVM"; readonly type: "uint256"; }]; readonly internalType: "struct OTCResult[]"; readonly name: "otcRes"; readonly type: "tuple[]"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint64"; readonly name: "newTakerFee"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "newOtcFee"; readonly type: "uint64"; }]; readonly name: "setGlobalFeeRates"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint128"; readonly name: "newHardOICap"; readonly type: "uint128"; }]; readonly name: "setGlobalHardOICap"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint32"; readonly name: "newWindow"; readonly type: "uint32"; }]; readonly name: "setGlobalImpliedWindow"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "int16"; readonly name: "loUpperConstBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loUpperSlopeBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loLowerConstBase1e4"; readonly type: "int16"; }, { readonly internalType: "int16"; readonly name: "loLowerSlopeBase1e4"; readonly type: "int16"; }]; readonly name: "setGlobalLimitOrderConfig"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly components: readonly [{ readonly internalType: "uint64"; readonly name: "base"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "slope"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "feeRate"; readonly type: "uint64"; }]; readonly internalType: "struct IMarketAllTypes.LiqSettings"; readonly name: "newLiqSettings"; readonly type: "tuple"; }]; readonly name: "setGlobalLiquidationSettings"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint64"; readonly name: "newKIM"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "newKMM"; readonly type: "uint64"; }, { readonly internalType: "uint32"; readonly name: "newTThresh"; readonly type: "uint32"; }]; readonly name: "setGlobalMarginConfig"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint16"; readonly name: "newMaxOpenOrders"; readonly type: "uint16"; }]; readonly name: "setGlobalMaxOpenOrders"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "address"; readonly name: "newMarkRateOracle"; readonly type: "address"; }, { readonly internalType: "address"; readonly name: "newFIndexOracle"; readonly type: "address"; }]; readonly name: "setGlobalOracleAddresses"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "uint16"; readonly name: "newMaxRateDeviationFactorBase1e4"; readonly type: "uint16"; }, { readonly internalType: "uint16"; readonly name: "newClosingOrderBoundBase1e4"; readonly type: "uint16"; }]; readonly name: "setGlobalRateBoundConfig"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "enum IMarketAllTypes.MarketStatus"; readonly name: "newStatus"; readonly type: "uint8"; }]; readonly name: "setGlobalStatus"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly internalType: "uint64"; readonly name: "newTakerDisc"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "newOtcDisc"; readonly type: "uint64"; }]; readonly name: "setPersonalDiscRates"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly internalType: "bool"; readonly name: "exemptCLOCheck"; readonly type: "bool"; }]; readonly name: "setPersonalExemptCLOCheck"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly internalType: "uint64"; readonly name: "newKIM"; readonly type: "uint64"; }, { readonly internalType: "uint64"; readonly name: "newKMM"; readonly type: "uint64"; }]; readonly name: "setPersonalMarginConfig"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "MarketAcc"; readonly name: "user"; readonly type: "bytes26"; }, { readonly internalType: "enum GetRequest"; readonly name: "getType"; readonly type: "uint8"; }]; readonly name: "settleAndGet"; readonly outputs: readonly [{ readonly internalType: "VMResult"; readonly name: "res"; readonly type: "uint256"; }, { readonly internalType: "PayFee"; readonly name: "payFee"; readonly type: "uint256"; }, { readonly internalType: "int256"; readonly name: "signedSize"; readonly type: "int256"; }, { readonly internalType: "uint256"; readonly name: "nOrders"; readonly type: "uint256"; }]; readonly stateMutability: "nonpayable"; readonly type: "function"; }, { readonly inputs: readonly []; readonly name: "symbol"; readonly outputs: readonly [{ readonly internalType: "string"; readonly name: ""; readonly type: "string"; }]; readonly stateMutability: "view"; readonly type: "function"; }, { readonly inputs: readonly [{ readonly internalType: "FIndex"; readonly name: "newIndex"; readonly type: "bytes26"; }]; readonly name: "updateFIndex"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; readonly type: "function"; }]; getOrder(orderId: bigint, multicallOptions?: MulticallOptions): Promise; getDelevLiqNonce(user: MarketAcc, multicallOptions?: MulticallOptions): Promise; getNotionalOI(multicallOptions?: MulticallOptions): Promise; getMarketConfig(multicallOptions?: MulticallOptions): Promise<{ maxOpenOrders: number; markRateOracle: `0x${string}`; fIndexOracle: `0x${string}`; hardOICap: bigint; takerFee: bigint; otcFee: bigint; liqSettings: { base: bigint; slope: bigint; feeRate: bigint; }; kIM: bigint; kMM: bigint; tThresh: number; maxRateDeviationFactorBase1e4: number; closingOrderBoundBase1e4: number; loUpperConstBase1e4: number; loUpperSlopeBase1e4: number; loLowerConstBase1e4: number; loLowerSlopeBase1e4: number; status: number; useImpliedAsMarkRate: boolean; }>; getDescriptor(multicallOptions?: MulticallOptions): Promise<{ isIsolatedOnly: boolean; tokenId: number; marketId: number; maturity: number; tickStep: number; }>; getImpliedRateData(multicallOptions?: MulticallOptions): Promise<{ lastTradedRate: bigint; oracleRate: bigint; lastTradedTime: number; observationWindow: number; }>; getMarkRateView(multicallOptions?: MulticallOptions): Promise; getLatestFTime(multicallOptions?: MulticallOptions): Promise; getBestBidTickAndApr(tickStep: bigint, multicallOptions?: MulticallOptions): Promise<{ tick: number; apr: import("@pendle/boros-offchain-math").FixedX18; } | undefined>; getBestBidApr(tickStep: bigint, multicallOptions?: MulticallOptions): Promise; getBestAskTickAndApr(tickStep: bigint, multicallOptions?: MulticallOptions): Promise<{ tick: number; apr: import("@pendle/boros-offchain-math").FixedX18; } | undefined>; getBestAskApr(tickStep: bigint, multicallOptions?: MulticallOptions): Promise; getNextNTicks(side: Side, limitTick: number, maxNTicks: bigint, multicallOptions?: MulticallOptions): Promise<{ ticks: readonly number[]; sizes: readonly bigint[]; }>; }