@rholabs/rho-sdk
Version:
Rho Protocol SDK
2,179 lines (2,178 loc) • 86.2 kB
JSON
[
{
"inputs": [],
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"inputs": [],
"name": "AddressCannotBeZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIAccessControlManagerInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportICollateralManagerInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIContractProviderInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIFloatIndexOracleInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIFloatRateIndexStorageInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIFutureInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIFutureStorageInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIIdentifiableInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIIssuerInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIMarketConfiguratorInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIMarketInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIMarketStorageInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIRateMathInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIRouterInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportITradeLimiterStorageInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIVAMMInterface",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "contractAddress",
"type": "address"
}
],
"name": "AddressNotSupportIVAMMStorageInterface",
"type": "error"
},
{
"inputs": [],
"name": "CannotCalculateRateForEmptyAggregatedVolume",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "currentRate",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "tradeRateLimit",
"type": "int256"
}
],
"name": "CurrentRateIsExceededLimit",
"type": "error"
},
{
"inputs": [],
"name": "CurrentRateMustBeGreatOrEqualLowerBound",
"type": "error"
},
{
"inputs": [],
"name": "CurrentRateMustBeLessOrEqualUpperBound",
"type": "error"
},
{
"inputs": [],
"name": "DepositIsPaused",
"type": "error"
},
{
"inputs": [],
"name": "DestinationAddressCannotBeEqualCollateralManager",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "resultRate",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "referenceRate",
"type": "int256"
},
{
"internalType": "uint64",
"name": "referenceTime",
"type": "uint64"
}
],
"name": "ExceededMarketRateImpactLimit",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "tradeNotional",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "limit",
"type": "uint256"
}
],
"name": "ExceededTradeNotionalLimit",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint32",
"name": "value",
"type": "uint32"
}
],
"name": "ExpirationSecondsParamTooBig",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint32",
"name": "value",
"type": "uint32"
}
],
"name": "ExpirationSecondsParamTooSmall",
"type": "error"
},
{
"inputs": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "uint256",
"name": "indexTimestamp",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "currentTime",
"type": "uint256"
}
],
"name": "ExpiredIndexValue",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "indexValue",
"type": "int256"
}
],
"name": "FloatIndexCannotBeNegative",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "amount",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "minValue",
"type": "uint256"
}
],
"name": "FloatTokenAmountIsTooSmall",
"type": "error"
},
{
"inputs": [
{
"internalType": "FutureId",
"name": "futureId",
"type": "bytes32"
}
],
"name": "FutureIsNotPaused",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "historyLength",
"type": "uint256"
},
{
"internalType": "uint32",
"name": "marketRateLimitWindowSeconds",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "marketRateLimitAggregationInterval",
"type": "uint32"
}
],
"name": "HistoryLengthIsNotEnough",
"type": "error"
},
{
"inputs": [],
"name": "IndexByMaturityDoesNotExist",
"type": "error"
},
{
"inputs": [],
"name": "InsufficientLiquidity",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "balance",
"type": "uint256"
}
],
"name": "InsufficientProtocolFeeBalance",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "totalCollateral",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "withdrawAmount",
"type": "uint256"
}
],
"name": "InsufficientTotalCollateral",
"type": "error"
},
{
"inputs": [],
"name": "IntervalLengthCannotBeZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD1x18",
"name": "value",
"type": "int64"
}
],
"name": "InvalidHedgeMarginFactor",
"type": "error"
},
{
"inputs": [
{
"components": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "SD59x18",
"name": "indexValue",
"type": "int256"
}
],
"internalType": "struct OraclePackage",
"name": "oraclePackage",
"type": "tuple"
},
{
"internalType": "MarketId",
"name": "targetMarketId",
"type": "bytes32"
}
],
"name": "InvalidMarketId",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "value",
"type": "uint64"
}
],
"name": "InvalidMarketRateChangeLimit",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "value",
"type": "uint64"
}
],
"name": "InvalidPositionLiquidationRewardPercentage",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "value",
"type": "uint256"
}
],
"name": "InvalidPositionPercentage",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "value",
"type": "uint64"
}
],
"name": "InvalidProvisionCancellationRewardPercentage",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "lowerBound",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "upperBound",
"type": "int256"
}
],
"name": "InvalidRateBounds",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "",
"type": "int256"
}
],
"name": "InvalidRatePoint",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "value",
"type": "uint64"
}
],
"name": "InvalidTransferOwnershipRewardPercentage",
"type": "error"
},
{
"inputs": [],
"name": "InvalidUnwindDirection",
"type": "error"
},
{
"inputs": [],
"name": "LiquidationIsPaused",
"type": "error"
},
{
"inputs": [],
"name": "LiquidationThresholdDeltaCannotBeZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "liquidationThresholdDelta",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "marginThresholdDelta",
"type": "uint64"
}
],
"name": "LiquidationThresholdDeltaMustBeLessMarginThresholdDelta",
"type": "error"
},
{
"inputs": [],
"name": "LiquidityProvisionIsPaused",
"type": "error"
},
{
"inputs": [],
"name": "LiquidityRemovalIsPaused",
"type": "error"
},
{
"inputs": [],
"name": "MarginThresholdDeltaCannotBeZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "value",
"type": "uint64"
}
],
"name": "MarginThresholdToleranceTooBig",
"type": "error"
},
{
"inputs": [],
"name": "MarketIsNotPaused",
"type": "error"
},
{
"inputs": [],
"name": "MarketRateLimitAggregationIntervalCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "MarketRateLimitWindowSecondsCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "MaturityLockoutSecondsCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "MaxNotionalCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "MaxRateImpactPerTradeCannotBeZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD2x18",
"name": "minLpFee",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "minProtocolFee",
"type": "uint64"
}
],
"name": "MinFeeSumCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "MinNotionalCannotBeZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "FutureId",
"name": "futureId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaFuture",
"type": "error"
},
{
"inputs": [
{
"internalType": "FutureId",
"name": "futureId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaFutureVAMM",
"type": "error"
},
{
"inputs": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaMarket",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaMarketConfigurator",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaMarketConfiguratorOrIssuer",
"type": "error"
},
{
"inputs": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaMarketOracle",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaRouter",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeCalledViaTradeLimiter",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeEmergencyManager",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeIssuerContractOrOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeIssuerRole",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeLiquidator",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeMaturityCourier",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeProtocolUser",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeRewardManager",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
}
],
"name": "MustBeRiskManager",
"type": "error"
},
{
"inputs": [],
"name": "NotEnoughIntervalsCount",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "margin",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "threshold",
"type": "int256"
}
],
"name": "NotEnoughMargin",
"type": "error"
},
{
"inputs": [],
"name": "NotEnoughProvision",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "amount",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "minValue",
"type": "uint256"
}
],
"name": "NotionalAmountIsTooSmall",
"type": "error"
},
{
"inputs": [
{
"internalType": "MarketId",
"name": "targetMarketId",
"type": "bytes32"
}
],
"name": "OraclePackagesNotFound",
"type": "error"
},
{
"inputs": [],
"name": "OwnershipTransferIsPaused",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "y",
"type": "uint256"
}
],
"name": "PRBMath_MulDiv18_Overflow",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "x",
"type": "int256"
}
],
"name": "PRBMath_SD59x18_IntoUD60x18_Underflow",
"type": "error"
},
{
"inputs": [],
"name": "PRBMath_SD59x18_Mul_InputTooSmall",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "x",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "y",
"type": "int256"
}
],
"name": "PRBMath_SD59x18_Mul_Overflow",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "x",
"type": "uint256"
}
],
"name": "PRBMath_UD60x18_IntoSD59x18_Overflow",
"type": "error"
},
{
"inputs": [],
"name": "ParticipantIsNotLiquidatable",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "balance",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "requested",
"type": "uint256"
}
],
"name": "ProtocolFeeBalanceIsZero",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "currentNumber",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "limit",
"type": "uint256"
}
],
"name": "ProvisionsNumberLimitExceeded",
"type": "error"
},
{
"inputs": [],
"name": "ReferencePointNotFound",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"internalType": "address",
"name": "owner",
"type": "address"
}
],
"name": "SenderCannotBeOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "signer",
"type": "address"
}
],
"name": "SignerNotAuthorized",
"type": "error"
},
{
"inputs": [],
"name": "TermLengthCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "TermStartTimestampCannotBeZero",
"type": "error"
},
{
"inputs": [],
"name": "TimeIsOutOfTerm",
"type": "error"
},
{
"inputs": [],
"name": "TradeIsPaused",
"type": "error"
},
{
"inputs": [
{
"internalType": "UD60x18",
"name": "tradeRateImpact",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "tradeRateImpactLimit",
"type": "uint256"
},
{
"internalType": "SD59x18",
"name": "tradeRate",
"type": "int256"
}
],
"name": "TradeRateImpactLimitExceeded",
"type": "error"
},
{
"inputs": [
{
"internalType": "SD59x18",
"name": "tradeRate",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "tradeRateLimit",
"type": "int256"
}
],
"name": "TradeRateLimitIsExceeded",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint32",
"name": "marketRateLimitWindowSeconds",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "marketRateLimitAggregationInterval",
"type": "uint32"
}
],
"name": "WindowSizeCannotBeLowerThanAggregationInterval",
"type": "error"
},
{
"inputs": [],
"name": "WithdrawIsPaused",
"type": "error"
},
{
"inputs": [],
"name": "ZeroFixedTokenAmount",
"type": "error"
},
{
"inputs": [],
"name": "ZeroNotional",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "previousAdmin",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "newAdmin",
"type": "address"
}
],
"name": "AdminChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "beacon",
"type": "address"
}
],
"name": "BeaconUpgraded",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint8",
"name": "version",
"type": "uint8"
}
],
"name": "Initialized",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferStarted",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "contractProvider",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "initialOwner",
"type": "address"
}
],
"name": "QuoterInitialization",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "implementation",
"type": "address"
}
],
"name": "Upgraded",
"type": "event"
},
{
"inputs": [],
"name": "acceptOwnership",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "oldOwnerMarginAfter",
"type": "tuple"
},
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "oldOwnerMarginBefore",
"type": "tuple"
},
{
"components": [
{
"internalType": "UD2x18",
"name": "transferOwnershipReward",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "positionLiquidationReward",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "provisionCancellationReward",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "lpPriceImpactFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "lpNotionalFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "minLpFee",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "protocolPriceImpactFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "protocolNotionalFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "minProtocolFee",
"type": "uint64"
}
],
"internalType": "struct IMarketStorage.RewardParameters",
"name": "rewardParameters",
"type": "tuple"
}
],
"name": "calculateTransferAmount",
"outputs": [
{
"internalType": "UD60x18",
"name": "transferAmount",
"type": "uint256"
}
],
"stateMutability": "pure",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"components": [
{
"internalType": "contract IFuture[]",
"name": "ownerUnsettledFutures",
"type": "address[]"
},
{
"internalType": "SD59x18",
"name": "floatIndex",
"type": "int256"
},
{
"components": [
{
"internalType": "UD2x18",
"name": "minNotional",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "liquidationThresholdDelta",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "marginThresholdDelta",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "marginThresholdTolerance",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "maxRateImpactPerTrade",
"type": "uint64"
},
{
"internalType": "SD1x18",
"name": "hedgeMarginFactor",
"type": "int64"
},
{
"internalType": "uint32",
"name": "marginRequirementSecondsFloor",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "liquidationMarginRequirementSecondsFloor",
"type": "uint32"
},
{
"internalType": "uint32",
"name": "maturityLockoutSeconds",
"type": "uint32"
}
],
"internalType": "struct IMarketStorage.RiskParameters",
"name": "riskParameters",
"type": "tuple"
},
{
"components": [
{
"internalType": "UD2x18",
"name": "transferOwnershipReward",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "positionLiquidationReward",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "provisionCancellationReward",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "lpPriceImpactFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "lpNotionalFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "minLpFee",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "protocolPriceImpactFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "protocolNotionalFeeFactor",
"type": "uint64"
},
{
"internalType": "UD2x18",
"name": "minProtocolFee",
"type": "uint64"
}
],
"internalType": "struct IMarketStorage.RewardParameters",
"name": "rewardParameters",
"type": "tuple"
},
{
"internalType": "contract IRateMath",
"name": "rateMath",
"type": "address"
},
{
"internalType": "contract IFuture[]",
"name": "liquidatorUnsettledFutures",
"type": "address[]"
}
],
"internalType": "struct Quoter.LiquidationCache",
"name": "liquidationCache",
"type": "tuple"
},
{
"internalType": "address",
"name": "oldOwner",
"type": "address"
},
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "oldOwnerMargin",
"type": "tuple"
},
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "liquidatorMargin",
"type": "tuple"
}
],
"internalType": "struct Quoter.EstimateMarginTransferParams",
"name": "params",
"type": "tuple"
}
],
"name": "estimateMarginChangeAfterPositionTransfer",
"outputs": [
{
"components": [
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "updatedOldOwnerMargin",
"type": "tuple"
},
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "updatedLiquidatorMargin",
"type": "tuple"
},
{
"components": [
{
"internalType": "FutureId",
"name": "futureId",
"type": "bytes32"
},
{
"components": [
{
"internalType": "SD59x18",
"name": "fixedTokenAmount",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "floatTokenAmount",
"type": "int256"
}
],
"internalType": "struct FixedAndFloatTokensPair.Value",
"name": "tokensPair",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "futureRate",
"type": "int256"
}
],
"internalType": "struct FuturePosition[]",
"name": "transferringPositions",
"type": "tuple[]"
}
],
"internalType": "struct Quoter.MarginChangeAfterTransfer",
"name": "result",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getContractProvider",
"outputs": [
{
"internalType": "contract IContractProvider",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "contract IContractProviderExtensionV1",
"name": "contractProvider",
"type": "address"
},
{
"internalType": "address",
"name": "initialOwner",
"type": "address"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "participant",
"type": "address"
},
{
"components": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "SD59x18",
"name": "indexValue",
"type": "int256"
}
],
"internalType": "struct OraclePackage[]",
"name": "oraclePackages",
"type": "tuple[]"
}
],
"name": "isLiquidatable",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "address",
"name": "maker",
"type": "address"
},
{
"components": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "SD59x18",
"name": "indexValue",
"type": "int256"
}
],
"internalType": "struct OraclePackage[]",
"name": "oraclePackages",
"type": "tuple[]"
}
],
"name": "isProvisionCancellable",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "owner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "pendingOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "proxiableUUID",
"outputs": [
{
"internalType": "bytes32",
"name": "",
"type": "bytes32"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "FutureId",
"name": "futureId",
"type": "bytes32"
},
{
"internalType": "UD60x18",
"name": "notional",
"type": "uint256"
},
{
"internalType": "address",
"name": "participant",
"type": "address"
},
{
"internalType": "enum LiquidityOperation",
"name": "operation",
"type": "uint8"
},
{
"internalType": "SD59x18",
"name": "lowerBound",
"type": "int256"
},
{
"internalType": "SD59x18",
"name": "upperBound",
"type": "int256"
},
{
"components": [
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "timestamp",
"type": "uint64"
},
{
"internalType": "bytes",
"name": "signature",
"type": "bytes"
},
{
"internalType": "SD59x18",
"name": "indexValue",
"type": "int256"
}
],
"internalType": "struct OraclePackage[]",
"name": "oraclePackages",
"type": "tuple[]"
}
],
"name": "quoteLiquidityProvision",
"outputs": [
{
"components": [
{
"components": [
{
"internalType": "UD60x18",
"name": "total",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "payer",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "receiver",
"type": "uint256"
}
],
"internalType": "struct ProvisionDistribution",
"name": "totalFutureProvisionNotional",
"type": "tuple"
},
{
"internalType": "UD60x18",
"name": "totalFutureProvisionPayerDv01",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "totalFutureProvisionReceiverDv01",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "newMarginThreshold",
"type": "uint256"
},
{
"components": [
{
"internalType": "UD60x18",
"name": "total",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "payer",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "receiver",
"type": "uint256"
}
],
"internalType": "struct ProvisionDistribution",
"name": "newProvisionDistribution",
"type": "tuple"
},
{
"internalType": "UD60x18",
"name": "newProvisionNotionalDv01",
"type": "uint256"
},
{
"components": [
{
"components": [
{
"internalType": "MarketId",
"name": "id",
"type": "bytes32"
},
{
"internalType": "string",
"name": "sourceName",
"type": "string"
},
{
"internalType": "string",
"name": "instrumentName",
"type": "string"
},
{
"internalType": "string",
"name": "tag",
"type": "string"
},
{
"internalType": "uint16",
"name": "version",
"type": "uint16"
},
{
"internalType": "address",
"name": "underlying",
"type": "address"
},
{
"internalType": "string",
"name": "underlyingName",
"type": "string"
},
{
"internalType": "uint8",
"name": "underlyingDecimals",
"type": "uint8"
},
{
"internalType": "bool",
"name": "underlyingIsWrappedNativeToken",
"type": "bool"
},
{
"internalType": "enum IRateMath.MathType",
"name": "rateMathType",
"type": "uint8"
}
],
"internalType": "struct IViewDataProvider.MarketDescriptor",
"name": "descriptor",
"type": "tuple"
},
{
"components": [
{
"components": [
{
"components": [
{
"internalType": "SD59x18",
"name": "netFutureValue",
"type": "int256"
},
{
"internalType": "UD60x18",
"name": "accruedLPFee",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "incurredFee",
"type": "uint256"
}
],
"internalType": "struct ProfitAndLoss.Value",
"name": "profitAndLoss",
"type": "tuple"
},
{
"internalType": "SD59x18",
"name": "collateral",
"type": "int256"
}
],
"internalType": "struct Margin.Value",
"name": "margin",
"type": "tuple"
},
{
"internalType": "UD60x18",
"name": "initialMarginThreshold",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "liquidationMarginThreshold",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "lpMarginThreshold",
"type": "uint256"
},
{
"internalType": "UD60x18",
"name": "dv01",
"type": "uint256"
},
{
"internalType": "enum RiskDirection.Value",
"name": "riskDirection",
"type": "uint8"
}
],
"internalType": "struct ViewDataProviderLogic.MarginState",
"name": "marginState",
"type": "tuple"
},
{
"components": [
{
"internalType": "FutureId",
"name": "id",
"type": "bytes32"
},
{
"internalType": "MarketId",
"name": "marketId",
"type": "bytes32"
},
{
"internalType": "uint64",
"name": "termStart",
"type": "uint64"
},
{
"internalType": "uint64",
"name": "termLength",
"type": "uint64"
},