@gainsnetwork/sdk 1.5.0-rc6 → 1.6.0-rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -246,6 +246,26 @@ export declare namespace IFeeTiers {
246
246
  feeMultiplierCache: number;
247
247
  points: BigNumber;
248
248
  };
249
+ type GnsStakingInfoStruct = {
250
+ stakedGns: PromiseOrValue<BigNumberish>;
251
+ stakedVaultGns: PromiseOrValue<BigNumberish>;
252
+ bonusAmount: PromiseOrValue<BigNumberish>;
253
+ stakeTimestamp: PromiseOrValue<BigNumberish>;
254
+ feeMultiplierCache: PromiseOrValue<BigNumberish>;
255
+ };
256
+ type GnsStakingInfoStructOutput = [
257
+ BigNumber,
258
+ BigNumber,
259
+ number,
260
+ number,
261
+ number
262
+ ] & {
263
+ stakedGns: BigNumber;
264
+ stakedVaultGns: BigNumber;
265
+ bonusAmount: number;
266
+ stakeTimestamp: number;
267
+ feeMultiplierCache: number;
268
+ };
249
269
  }
250
270
  export declare namespace IPriceImpact {
251
271
  type PairOiCollateralStruct = {
@@ -1368,16 +1388,33 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
1368
1388
  "addTradersUnclaimedPoints(address[],uint8[],uint224[])": FunctionFragment;
1369
1389
  "calculateFeeAmount(address,uint256)": FunctionFragment;
1370
1390
  "getFeeTier(uint256)": FunctionFragment;
1391
+ "getFeeTiers()": FunctionFragment;
1371
1392
  "getFeeTiersCount()": FunctionFragment;
1372
1393
  "getFeeTiersTraderDailyInfo(address,uint32)": FunctionFragment;
1373
1394
  "getFeeTiersTraderInfo(address)": FunctionFragment;
1395
+ "getGnsStakingInfo(address)": FunctionFragment;
1396
+ "getGnsStakingInfos(address[])": FunctionFragment;
1397
+ "getGnsStakingTier(uint256)": FunctionFragment;
1398
+ "getGnsStakingTiers()": FunctionFragment;
1399
+ "getGnsStakingTiersCount()": FunctionFragment;
1400
+ "getGnsVaultAddress()": FunctionFragment;
1374
1401
  "getGroupVolumeMultiplier(uint256)": FunctionFragment;
1402
+ "getGroupVolumeMultipliers(uint256[])": FunctionFragment;
1403
+ "getStakedVaultGnsValue(uint88)": FunctionFragment;
1375
1404
  "getTraderFeeTiersEnrollment(address)": FunctionFragment;
1376
1405
  "getTraderUnclaimedPoints(address)": FunctionFragment;
1406
+ "getUseGnsVaultBalance()": FunctionFragment;
1377
1407
  "initializeFeeTiers(uint256[],uint256[],uint256[],(uint32,uint32)[])": FunctionFragment;
1408
+ "initializeGnsStakingTiers(uint256[],(uint32,uint32)[],address,bool)": FunctionFragment;
1378
1409
  "setFeeTiers(uint256[],(uint32,uint32)[])": FunctionFragment;
1410
+ "setGnsStakingBonusAmounts(address[],uint24[])": FunctionFragment;
1411
+ "setGnsStakingTiers(uint256[],(uint32,uint32)[])": FunctionFragment;
1379
1412
  "setGroupVolumeMultipliers(uint256[],uint256[])": FunctionFragment;
1380
1413
  "setTradersFeeTiersEnrollment(address[],(uint8,uint248)[])": FunctionFragment;
1414
+ "setUseGnsVaultBalance(bool)": FunctionFragment;
1415
+ "stakeGns(uint88,uint88)": FunctionFragment;
1416
+ "syncGnsStakingTiers(address[])": FunctionFragment;
1417
+ "unstakeGns(uint88,uint88)": FunctionFragment;
1381
1418
  "updateTraderPoints(address,uint256,uint256)": FunctionFragment;
1382
1419
  "addPriceImpactOpenInterest(address,uint32,uint256,bool,bool)": FunctionFragment;
1383
1420
  "getDepthBandsMapping()": FunctionFragment;
@@ -1660,7 +1697,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
1660
1697
  "storeUiRealizedTradingFeesCollateral(address,uint32,uint256)": FunctionFragment;
1661
1698
  "storeVirtualAvailableCollateralInDiamond(address,uint32,uint256)": FunctionFragment;
1662
1699
  };
1663
- getFunction(nameOrSignatureOrTopic: "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "getAddresses" | "hasRole" | "hasRoles" | "initialize" | "initializeGovEmergencyTimelock" | "setRoles" | "addFees" | "addGroups" | "addPairs" | "fees" | "feesCount" | "getAllPairsRestrictedMaxLeverage" | "getEffectiveTotalPositionSizeFeeP" | "getGlobalTradeFeeParams" | "getGroupLiquidationParams" | "getPairCounterTradeFeeRateMultiplier" | "getPairCounterTradeFeeRateMultipliers" | "getPairCounterTradeMaxLeverage" | "getPairCounterTradeMaxLeverages" | "getPairLiquidationParams" | "groups" | "groupsCount" | "initializeGroupLiquidationParams" | "initializeNewFees" | "initializeReferralFeeChange" | "isPairIndexListed" | "isPairListed" | "pairCustomMaxLeverage" | "pairJob" | "pairMaxLeverage" | "pairMinFeeUsd" | "pairMinLeverage" | "pairMinPositionSizeUsd" | "pairOraclePositionSizeFeeP" | "pairSpreadP" | "pairSpreadPArray" | "pairTotalLiqCollateralFeeP" | "pairTotalPositionSizeFeeP" | "pairs" | "pairsCount" | "setGlobalTradeFeeParams" | "setGroupLiquidationParams" | "setPairCounterTradeFeeRateMultipliers" | "setPairCounterTradeMaxLeverages" | "setPairCustomMaxLeverages" | "updateFees" | "updateGroups" | "updatePairs" | "claimAllyRewards" | "claimReferrerRewards" | "distributeReferralReward" | "getAllyDetails" | "getReferralSettingsOverrides" | "getReferralsAllyFeeP" | "getReferralsStartReferrerFeeP" | "getReferralsTargetVolumeUsd" | "getReferrerDetails" | "getReferrerFeeProgressP" | "getReferrersReferred" | "getTraderActiveReferrer" | "getTraderLastReferrer" | "getTradersReferred" | "initializeReferrals" | "overrideAllyFeeP" | "overrideReferralFeeP" | "registerPotentialReferrer" | "unwhitelistAllies" | "unwhitelistReferrers" | "updateAllyFeeP" | "updateReferralsTargetVolumeUsd" | "updateStartReferrerFeeP" | "whitelistAllies" | "whitelistReferrers" | "addTradersUnclaimedPoints" | "calculateFeeAmount" | "getFeeTier" | "getFeeTiersCount" | "getFeeTiersTraderDailyInfo" | "getFeeTiersTraderInfo" | "getGroupVolumeMultiplier" | "getTraderFeeTiersEnrollment" | "getTraderUnclaimedPoints" | "initializeFeeTiers" | "setFeeTiers" | "setGroupVolumeMultipliers" | "setTradersFeeTiersEnrollment" | "updateTraderPoints" | "addPriceImpactOpenInterest" | "getDepthBandsMapping" | "getDepthBandsMappingDecoded" | "getNegPnlCumulVolMultiplier" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPairDepthBands" | "getPairDepthBandsArray" | "getPairDepthBandsDecoded" | "getPairDepthBandsDecodedArray" | "getPairFactors" | "getPairOiAfterV10Collateral" | "getPairOiAfterV10Token" | "getPairOisAfterV10Collateral" | "getPairOisAfterV10Token" | "getPairSkewDepth" | "getPairSkewDepths" | "getPriceImpactOi" | "getProtectionCloseFactorWhitelist" | "getTradeCumulVolPriceImpactP" | "getTradeSkewPriceImpactP" | "getUserPriceImpact" | "initializeDepthBandsMapping" | "initializeNegPnlCumulVolMultiplier" | "initializePairFactors" | "initializePriceImpact" | "setCumulativeFactors" | "setDepthBandsMapping" | "setExemptAfterProtectionCloseFactor" | "setExemptOnOpen" | "setNegPnlCumulVolMultiplier" | "setPairDepthBands" | "setPairSkewDepths" | "setPriceImpactWindowsCount" | "setPriceImpactWindowsDuration" | "setProtectionCloseFactorBlocks" | "setProtectionCloseFactorWhitelist" | "setProtectionCloseFactors" | "setUserPriceImpact" | "updatePairOiAfterV10" | "addCollateral" | "closePendingOrder" | "closeTrade" | "getAllPendingOrders" | "getAllPendingOrdersForTraders" | "getAllTradeInfos" | "getAllTradeInfosForTraders" | "getAllTrades" | "getAllTradesForTraders" | "getAllTradesLiquidationParams" | "getAllTradesLiquidationParamsForTraders" | "getCollateral" | "getCollateralIndex" | "getCollaterals" | "getCollateralsCount" | "getCounters" | "getCountersForTraders" | "getCurrentContractsVersion" | "getGToken" | "getGnsCollateralIndex" | "getLookbackFromBlock" | "getPendingOrder" | "getPendingOrders" | "getTrade" | "getTradeContractsVersion" | "getTradeInfo" | "getTradeInfos" | "getTradeLiquidationParams" | "getTradePendingOrderBlock" | "getTraderStored" | "getTraders" | "getTradersCount" | "getTrades" | "getTradesLiquidationParams" | "getTradingActivated" | "initializeTradingStorage" | "isCollateralActive" | "isCollateralGns" | "isCollateralListed" | "storePendingOrder" | "storeTrade" | "toggleCollateralActiveState" | "updateGToken" | "updateOpenOrderDetails" | "updateTradeMaxClosingSlippageP" | "updateTradePosition" | "updateTradeSl" | "updateTradeTp" | "updateTradingActivated" | "validateOpenTradeOrder" | "claimPendingTriggerRewards" | "distributeTriggerReward" | "getTriggerPendingRewardsGns" | "getTriggerTimeoutBlocks" | "hasActiveOrder" | "initializeTriggerRewards" | "updateTriggerTimeoutBlocks" | "cancelOpenOrder" | "cancelOrderAfterTimeout" | "closeTradeMarket" | "decreasePositionSize" | "delegatedTradingAction" | "getByPassTriggerLink" | "getMarketOrdersTimeoutBlocks" | "getTradingDelegate" | "getWrappedNativeToken" | "increasePositionSize" | "increasePositionSizeNative" | "initializeTrading" | "initiateManualNegativePnlRealization" | "isWrappedNativeToken" | "openTrade" | "openTradeNative" | "removeTradingDelegate" | "setTradingDelegate" | "triggerOrder" | "triggerOrderWithSignatures" | "updateByPassTriggerLink" | "updateLeverage" | "updateLeverageNative" | "updateMarketOrdersTimeoutBlocks" | "updateMaxClosingSlippageP" | "updateOpenOrder" | "updateSl" | "updateTp" | "withdrawPositivePnl" | "claimPendingGovFees" | "closeTradeMarketCallback" | "decreasePositionSizeMarketCallback" | "executeTriggerCloseOrderCallback" | "executeTriggerCloseOrderCallbackDirect" | "executeTriggerOpenOrderCallback" | "executeTriggerOpenOrderCallbackDirect" | "getPendingGovFeesCollateral" | "getVaultClosingFeeP" | "increasePositionSizeMarketCallback" | "initializeCallbacks" | "initializeTreasuryAddress" | "manualHoldingFeesRealizationCallback" | "manualNegativePnlRealizationCallback" | "openTradeMarketCallback" | "pnlWithdrawalCallback" | "updateLeverageCallback" | "updateTreasuryAddress" | "updateVaultClosingFeeP" | "validateTriggerCloseOrderCallback" | "validateTriggerOpenOrderCallback" | "borrowingParamUpdateCallback" | "getAllBorrowingPairs" | "getBorrowingFeePerBlockCap" | "getBorrowingGroup" | "getBorrowingGroupOi" | "getBorrowingGroupPendingAccFees" | "getBorrowingGroups" | "getBorrowingInitialAccFees" | "getBorrowingPair" | "getBorrowingPairFeePerBlockCap" | "getBorrowingPairFeePerBlockCaps" | "getBorrowingPairGroupIndex" | "getBorrowingPairGroups" | "getBorrowingPairOiBeforeV10" | "getBorrowingPairPendingAccFees" | "getPairMaxOi" | "getPairMaxOiCollateral" | "getPairOiBeforeV10Collateral" | "getPairOisBeforeV10Collateral" | "getTradeBorrowingFee" | "getTradeLiquidationPrice" | "handleTradeBorrowingCallback" | "initializeBorrowingFeePerBlockCap" | "setBorrowingFeePerBlockCap" | "setBorrowingGroupParams" | "setBorrowingGroupParamsArray" | "setBorrowingPairFeePerBlockCapArray" | "setBorrowingPairParams" | "setBorrowingPairParamsArray" | "updatePairOiBeforeV10" | "withinMaxBorrowingGroupOi" | "addOracle" | "claimBackLink" | "cleanUpSignedPairPrices" | "fulfill" | "getChainlinkToken" | "getCollateralFromUsdNormalizedValue" | "getCollateralGnsLiquidityPool" | "getCollateralPriceUsd" | "getCollateralUsdPriceFeed" | "getGnsPriceCollateralAddress" | "getGnsPriceCollateralIndex" | "getGnsPriceUsd" | "getLimitJobCount" | "getLimitJobId" | "getLimitJobIndex" | "getLinkFee" | "getLinkUsdPriceFeed" | "getMarketJobId" | "getMaxLookbackDeviationP" | "getMaxMarketDeviationP" | "getMinAnswers" | "getOracle" | "getOracles" | "getPairSignedMedianTemporary" | "getPairSignedOrderAnswersTemporary" | "getPendingRequest" | "getPrice" | "getPriceAggregatorOrder" | "getPriceAggregatorOrderAnswers" | "getRequestCount" | "getSignedPairIndicesTemporary" | "getTwapInterval" | "getUsdNormalizedValue" | "initializeLimitJobCount" | "initializeMaxDeviationsP" | "initializePriceAggregator" | "removeOracle" | "replaceOracle" | "setLimitJobCount" | "setLimitJobId" | "setMarketJobId" | "setMaxLookbackDeviationP" | "setMaxMarketDeviationP" | "updateCollateralGnsLiquidityPool" | "updateCollateralUsdPriceFeed" | "updateLinkUsdPriceFeed" | "updateMinAnswers" | "updateTwapInterval" | "validateSignedPairPrices" | "addOtcCollateralBalance" | "getOtcBalance" | "getOtcConfig" | "getOtcRate" | "initializeOtc" | "sellGnsForCollateral" | "updateOtcConfig" | "multicall" | "getNativeTransferEnabled" | "getNativeTransferGasLimit" | "getReentrancyLock" | "initializeChainConfig" | "updateNativeTransferEnabled" | "updateNativeTransferGasLimit" | "downscaleTradeFeesData" | "getMaxSkewCollateral" | "getPairBorrowingFeeData" | "getPairBorrowingFeeParams" | "getPairFundingFeeData" | "getPairFundingFeeParams" | "getPairGlobalParamsArray" | "getPairPendingAccBorrowingFees" | "getPairPendingAccFundingFees" | "getPendingParamUpdates" | "getTradeBorrowingFeesCollateral" | "getTradeFeesData" | "getTradeFeesDataArray" | "getTradeFundingFeesCollateral" | "getTradeManuallyRealizedNegativePnlCollateral" | "getTradePendingHoldingFeesCollateral" | "getTradeRealizedPnlCollateral" | "getTradeRealizedTradingFeesCollateral" | "getTradeUiRealizedPnlDataArray" | "paramUpdateCallbackWithSignedPrices" | "realizeHoldingFeesOnOpenTrade" | "realizePnlOnOpenTrade" | "realizeTradingFeesOnOpenTrade" | "setAbsoluteRatePerSecondCap" | "setAbsoluteVelocityPerYearCap" | "setAprMultiplierEnabled" | "setBorrowingRatePerSecondP" | "setFundingFeesEnabled" | "setMaxSkewCollateral" | "setSkewCoefficientPerYear" | "setThetaThresholdUsd" | "storeAlreadyTransferredNegativePnl" | "storeManuallyRealizedNegativePnlCollateral" | "storeTradeInitialAccFees" | "storeUiPnlWithdrawnCollateral" | "storeUiRealizedPnlPartialCloseCollateral" | "storeUiRealizedTradingFeesCollateral" | "storeVirtualAvailableCollateralInDiamond"): FunctionFragment;
1700
+ getFunction(nameOrSignatureOrTopic: "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "getAddresses" | "hasRole" | "hasRoles" | "initialize" | "initializeGovEmergencyTimelock" | "setRoles" | "addFees" | "addGroups" | "addPairs" | "fees" | "feesCount" | "getAllPairsRestrictedMaxLeverage" | "getEffectiveTotalPositionSizeFeeP" | "getGlobalTradeFeeParams" | "getGroupLiquidationParams" | "getPairCounterTradeFeeRateMultiplier" | "getPairCounterTradeFeeRateMultipliers" | "getPairCounterTradeMaxLeverage" | "getPairCounterTradeMaxLeverages" | "getPairLiquidationParams" | "groups" | "groupsCount" | "initializeGroupLiquidationParams" | "initializeNewFees" | "initializeReferralFeeChange" | "isPairIndexListed" | "isPairListed" | "pairCustomMaxLeverage" | "pairJob" | "pairMaxLeverage" | "pairMinFeeUsd" | "pairMinLeverage" | "pairMinPositionSizeUsd" | "pairOraclePositionSizeFeeP" | "pairSpreadP" | "pairSpreadPArray" | "pairTotalLiqCollateralFeeP" | "pairTotalPositionSizeFeeP" | "pairs" | "pairsCount" | "setGlobalTradeFeeParams" | "setGroupLiquidationParams" | "setPairCounterTradeFeeRateMultipliers" | "setPairCounterTradeMaxLeverages" | "setPairCustomMaxLeverages" | "updateFees" | "updateGroups" | "updatePairs" | "claimAllyRewards" | "claimReferrerRewards" | "distributeReferralReward" | "getAllyDetails" | "getReferralSettingsOverrides" | "getReferralsAllyFeeP" | "getReferralsStartReferrerFeeP" | "getReferralsTargetVolumeUsd" | "getReferrerDetails" | "getReferrerFeeProgressP" | "getReferrersReferred" | "getTraderActiveReferrer" | "getTraderLastReferrer" | "getTradersReferred" | "initializeReferrals" | "overrideAllyFeeP" | "overrideReferralFeeP" | "registerPotentialReferrer" | "unwhitelistAllies" | "unwhitelistReferrers" | "updateAllyFeeP" | "updateReferralsTargetVolumeUsd" | "updateStartReferrerFeeP" | "whitelistAllies" | "whitelistReferrers" | "addTradersUnclaimedPoints" | "calculateFeeAmount" | "getFeeTier" | "getFeeTiers" | "getFeeTiersCount" | "getFeeTiersTraderDailyInfo" | "getFeeTiersTraderInfo" | "getGnsStakingInfo" | "getGnsStakingInfos" | "getGnsStakingTier" | "getGnsStakingTiers" | "getGnsStakingTiersCount" | "getGnsVaultAddress" | "getGroupVolumeMultiplier" | "getGroupVolumeMultipliers" | "getStakedVaultGnsValue" | "getTraderFeeTiersEnrollment" | "getTraderUnclaimedPoints" | "getUseGnsVaultBalance" | "initializeFeeTiers" | "initializeGnsStakingTiers" | "setFeeTiers" | "setGnsStakingBonusAmounts" | "setGnsStakingTiers" | "setGroupVolumeMultipliers" | "setTradersFeeTiersEnrollment" | "setUseGnsVaultBalance" | "stakeGns" | "syncGnsStakingTiers" | "unstakeGns" | "updateTraderPoints" | "addPriceImpactOpenInterest" | "getDepthBandsMapping" | "getDepthBandsMappingDecoded" | "getNegPnlCumulVolMultiplier" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPairDepthBands" | "getPairDepthBandsArray" | "getPairDepthBandsDecoded" | "getPairDepthBandsDecodedArray" | "getPairFactors" | "getPairOiAfterV10Collateral" | "getPairOiAfterV10Token" | "getPairOisAfterV10Collateral" | "getPairOisAfterV10Token" | "getPairSkewDepth" | "getPairSkewDepths" | "getPriceImpactOi" | "getProtectionCloseFactorWhitelist" | "getTradeCumulVolPriceImpactP" | "getTradeSkewPriceImpactP" | "getUserPriceImpact" | "initializeDepthBandsMapping" | "initializeNegPnlCumulVolMultiplier" | "initializePairFactors" | "initializePriceImpact" | "setCumulativeFactors" | "setDepthBandsMapping" | "setExemptAfterProtectionCloseFactor" | "setExemptOnOpen" | "setNegPnlCumulVolMultiplier" | "setPairDepthBands" | "setPairSkewDepths" | "setPriceImpactWindowsCount" | "setPriceImpactWindowsDuration" | "setProtectionCloseFactorBlocks" | "setProtectionCloseFactorWhitelist" | "setProtectionCloseFactors" | "setUserPriceImpact" | "updatePairOiAfterV10" | "addCollateral" | "closePendingOrder" | "closeTrade" | "getAllPendingOrders" | "getAllPendingOrdersForTraders" | "getAllTradeInfos" | "getAllTradeInfosForTraders" | "getAllTrades" | "getAllTradesForTraders" | "getAllTradesLiquidationParams" | "getAllTradesLiquidationParamsForTraders" | "getCollateral" | "getCollateralIndex" | "getCollaterals" | "getCollateralsCount" | "getCounters" | "getCountersForTraders" | "getCurrentContractsVersion" | "getGToken" | "getGnsCollateralIndex" | "getLookbackFromBlock" | "getPendingOrder" | "getPendingOrders" | "getTrade" | "getTradeContractsVersion" | "getTradeInfo" | "getTradeInfos" | "getTradeLiquidationParams" | "getTradePendingOrderBlock" | "getTraderStored" | "getTraders" | "getTradersCount" | "getTrades" | "getTradesLiquidationParams" | "getTradingActivated" | "initializeTradingStorage" | "isCollateralActive" | "isCollateralGns" | "isCollateralListed" | "storePendingOrder" | "storeTrade" | "toggleCollateralActiveState" | "updateGToken" | "updateOpenOrderDetails" | "updateTradeMaxClosingSlippageP" | "updateTradePosition" | "updateTradeSl" | "updateTradeTp" | "updateTradingActivated" | "validateOpenTradeOrder" | "claimPendingTriggerRewards" | "distributeTriggerReward" | "getTriggerPendingRewardsGns" | "getTriggerTimeoutBlocks" | "hasActiveOrder" | "initializeTriggerRewards" | "updateTriggerTimeoutBlocks" | "cancelOpenOrder" | "cancelOrderAfterTimeout" | "closeTradeMarket" | "decreasePositionSize" | "delegatedTradingAction" | "getByPassTriggerLink" | "getMarketOrdersTimeoutBlocks" | "getTradingDelegate" | "getWrappedNativeToken" | "increasePositionSize" | "increasePositionSizeNative" | "initializeTrading" | "initiateManualNegativePnlRealization" | "isWrappedNativeToken" | "openTrade" | "openTradeNative" | "removeTradingDelegate" | "setTradingDelegate" | "triggerOrder" | "triggerOrderWithSignatures" | "updateByPassTriggerLink" | "updateLeverage" | "updateLeverageNative" | "updateMarketOrdersTimeoutBlocks" | "updateMaxClosingSlippageP" | "updateOpenOrder" | "updateSl" | "updateTp" | "withdrawPositivePnl" | "claimPendingGovFees" | "closeTradeMarketCallback" | "decreasePositionSizeMarketCallback" | "executeTriggerCloseOrderCallback" | "executeTriggerCloseOrderCallbackDirect" | "executeTriggerOpenOrderCallback" | "executeTriggerOpenOrderCallbackDirect" | "getPendingGovFeesCollateral" | "getVaultClosingFeeP" | "increasePositionSizeMarketCallback" | "initializeCallbacks" | "initializeTreasuryAddress" | "manualHoldingFeesRealizationCallback" | "manualNegativePnlRealizationCallback" | "openTradeMarketCallback" | "pnlWithdrawalCallback" | "updateLeverageCallback" | "updateTreasuryAddress" | "updateVaultClosingFeeP" | "validateTriggerCloseOrderCallback" | "validateTriggerOpenOrderCallback" | "borrowingParamUpdateCallback" | "getAllBorrowingPairs" | "getBorrowingFeePerBlockCap" | "getBorrowingGroup" | "getBorrowingGroupOi" | "getBorrowingGroupPendingAccFees" | "getBorrowingGroups" | "getBorrowingInitialAccFees" | "getBorrowingPair" | "getBorrowingPairFeePerBlockCap" | "getBorrowingPairFeePerBlockCaps" | "getBorrowingPairGroupIndex" | "getBorrowingPairGroups" | "getBorrowingPairOiBeforeV10" | "getBorrowingPairPendingAccFees" | "getPairMaxOi" | "getPairMaxOiCollateral" | "getPairOiBeforeV10Collateral" | "getPairOisBeforeV10Collateral" | "getTradeBorrowingFee" | "getTradeLiquidationPrice" | "handleTradeBorrowingCallback" | "initializeBorrowingFeePerBlockCap" | "setBorrowingFeePerBlockCap" | "setBorrowingGroupParams" | "setBorrowingGroupParamsArray" | "setBorrowingPairFeePerBlockCapArray" | "setBorrowingPairParams" | "setBorrowingPairParamsArray" | "updatePairOiBeforeV10" | "withinMaxBorrowingGroupOi" | "addOracle" | "claimBackLink" | "cleanUpSignedPairPrices" | "fulfill" | "getChainlinkToken" | "getCollateralFromUsdNormalizedValue" | "getCollateralGnsLiquidityPool" | "getCollateralPriceUsd" | "getCollateralUsdPriceFeed" | "getGnsPriceCollateralAddress" | "getGnsPriceCollateralIndex" | "getGnsPriceUsd" | "getLimitJobCount" | "getLimitJobId" | "getLimitJobIndex" | "getLinkFee" | "getLinkUsdPriceFeed" | "getMarketJobId" | "getMaxLookbackDeviationP" | "getMaxMarketDeviationP" | "getMinAnswers" | "getOracle" | "getOracles" | "getPairSignedMedianTemporary" | "getPairSignedOrderAnswersTemporary" | "getPendingRequest" | "getPrice" | "getPriceAggregatorOrder" | "getPriceAggregatorOrderAnswers" | "getRequestCount" | "getSignedPairIndicesTemporary" | "getTwapInterval" | "getUsdNormalizedValue" | "initializeLimitJobCount" | "initializeMaxDeviationsP" | "initializePriceAggregator" | "removeOracle" | "replaceOracle" | "setLimitJobCount" | "setLimitJobId" | "setMarketJobId" | "setMaxLookbackDeviationP" | "setMaxMarketDeviationP" | "updateCollateralGnsLiquidityPool" | "updateCollateralUsdPriceFeed" | "updateLinkUsdPriceFeed" | "updateMinAnswers" | "updateTwapInterval" | "validateSignedPairPrices" | "addOtcCollateralBalance" | "getOtcBalance" | "getOtcConfig" | "getOtcRate" | "initializeOtc" | "sellGnsForCollateral" | "updateOtcConfig" | "multicall" | "getNativeTransferEnabled" | "getNativeTransferGasLimit" | "getReentrancyLock" | "initializeChainConfig" | "updateNativeTransferEnabled" | "updateNativeTransferGasLimit" | "downscaleTradeFeesData" | "getMaxSkewCollateral" | "getPairBorrowingFeeData" | "getPairBorrowingFeeParams" | "getPairFundingFeeData" | "getPairFundingFeeParams" | "getPairGlobalParamsArray" | "getPairPendingAccBorrowingFees" | "getPairPendingAccFundingFees" | "getPendingParamUpdates" | "getTradeBorrowingFeesCollateral" | "getTradeFeesData" | "getTradeFeesDataArray" | "getTradeFundingFeesCollateral" | "getTradeManuallyRealizedNegativePnlCollateral" | "getTradePendingHoldingFeesCollateral" | "getTradeRealizedPnlCollateral" | "getTradeRealizedTradingFeesCollateral" | "getTradeUiRealizedPnlDataArray" | "paramUpdateCallbackWithSignedPrices" | "realizeHoldingFeesOnOpenTrade" | "realizePnlOnOpenTrade" | "realizeTradingFeesOnOpenTrade" | "setAbsoluteRatePerSecondCap" | "setAbsoluteVelocityPerYearCap" | "setAprMultiplierEnabled" | "setBorrowingRatePerSecondP" | "setFundingFeesEnabled" | "setMaxSkewCollateral" | "setSkewCoefficientPerYear" | "setThetaThresholdUsd" | "storeAlreadyTransferredNegativePnl" | "storeManuallyRealizedNegativePnlCollateral" | "storeTradeInitialAccFees" | "storeUiPnlWithdrawnCollateral" | "storeUiRealizedPnlPartialCloseCollateral" | "storeUiRealizedTradingFeesCollateral" | "storeVirtualAvailableCollateralInDiamond"): FunctionFragment;
1664
1701
  encodeFunctionData(functionFragment: "diamondCut", values: [
1665
1702
  IDiamondStorage.FacetCutStruct[],
1666
1703
  PromiseOrValue<string>,
@@ -1770,21 +1807,43 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
1770
1807
  ]): string;
1771
1808
  encodeFunctionData(functionFragment: "calculateFeeAmount", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
1772
1809
  encodeFunctionData(functionFragment: "getFeeTier", values: [PromiseOrValue<BigNumberish>]): string;
1810
+ encodeFunctionData(functionFragment: "getFeeTiers", values?: undefined): string;
1773
1811
  encodeFunctionData(functionFragment: "getFeeTiersCount", values?: undefined): string;
1774
1812
  encodeFunctionData(functionFragment: "getFeeTiersTraderDailyInfo", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
1775
1813
  encodeFunctionData(functionFragment: "getFeeTiersTraderInfo", values: [PromiseOrValue<string>]): string;
1814
+ encodeFunctionData(functionFragment: "getGnsStakingInfo", values: [PromiseOrValue<string>]): string;
1815
+ encodeFunctionData(functionFragment: "getGnsStakingInfos", values: [PromiseOrValue<string>[]]): string;
1816
+ encodeFunctionData(functionFragment: "getGnsStakingTier", values: [PromiseOrValue<BigNumberish>]): string;
1817
+ encodeFunctionData(functionFragment: "getGnsStakingTiers", values?: undefined): string;
1818
+ encodeFunctionData(functionFragment: "getGnsStakingTiersCount", values?: undefined): string;
1819
+ encodeFunctionData(functionFragment: "getGnsVaultAddress", values?: undefined): string;
1776
1820
  encodeFunctionData(functionFragment: "getGroupVolumeMultiplier", values: [PromiseOrValue<BigNumberish>]): string;
1821
+ encodeFunctionData(functionFragment: "getGroupVolumeMultipliers", values: [PromiseOrValue<BigNumberish>[]]): string;
1822
+ encodeFunctionData(functionFragment: "getStakedVaultGnsValue", values: [PromiseOrValue<BigNumberish>]): string;
1777
1823
  encodeFunctionData(functionFragment: "getTraderFeeTiersEnrollment", values: [PromiseOrValue<string>]): string;
1778
1824
  encodeFunctionData(functionFragment: "getTraderUnclaimedPoints", values: [PromiseOrValue<string>]): string;
1825
+ encodeFunctionData(functionFragment: "getUseGnsVaultBalance", values?: undefined): string;
1779
1826
  encodeFunctionData(functionFragment: "initializeFeeTiers", values: [
1780
1827
  PromiseOrValue<BigNumberish>[],
1781
1828
  PromiseOrValue<BigNumberish>[],
1782
1829
  PromiseOrValue<BigNumberish>[],
1783
1830
  IFeeTiers.FeeTierStruct[]
1784
1831
  ]): string;
1832
+ encodeFunctionData(functionFragment: "initializeGnsStakingTiers", values: [
1833
+ PromiseOrValue<BigNumberish>[],
1834
+ IFeeTiers.FeeTierStruct[],
1835
+ PromiseOrValue<string>,
1836
+ PromiseOrValue<boolean>
1837
+ ]): string;
1785
1838
  encodeFunctionData(functionFragment: "setFeeTiers", values: [PromiseOrValue<BigNumberish>[], IFeeTiers.FeeTierStruct[]]): string;
1839
+ encodeFunctionData(functionFragment: "setGnsStakingBonusAmounts", values: [PromiseOrValue<string>[], PromiseOrValue<BigNumberish>[]]): string;
1840
+ encodeFunctionData(functionFragment: "setGnsStakingTiers", values: [PromiseOrValue<BigNumberish>[], IFeeTiers.FeeTierStruct[]]): string;
1786
1841
  encodeFunctionData(functionFragment: "setGroupVolumeMultipliers", values: [PromiseOrValue<BigNumberish>[], PromiseOrValue<BigNumberish>[]]): string;
1787
1842
  encodeFunctionData(functionFragment: "setTradersFeeTiersEnrollment", values: [PromiseOrValue<string>[], IFeeTiers.TraderEnrollmentStruct[]]): string;
1843
+ encodeFunctionData(functionFragment: "setUseGnsVaultBalance", values: [PromiseOrValue<boolean>]): string;
1844
+ encodeFunctionData(functionFragment: "stakeGns", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
1845
+ encodeFunctionData(functionFragment: "syncGnsStakingTiers", values: [PromiseOrValue<string>[]]): string;
1846
+ encodeFunctionData(functionFragment: "unstakeGns", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
1788
1847
  encodeFunctionData(functionFragment: "updateTraderPoints", values: [
1789
1848
  PromiseOrValue<string>,
1790
1849
  PromiseOrValue<BigNumberish>,
@@ -2506,16 +2565,33 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
2506
2565
  decodeFunctionResult(functionFragment: "addTradersUnclaimedPoints", data: BytesLike): Result;
2507
2566
  decodeFunctionResult(functionFragment: "calculateFeeAmount", data: BytesLike): Result;
2508
2567
  decodeFunctionResult(functionFragment: "getFeeTier", data: BytesLike): Result;
2568
+ decodeFunctionResult(functionFragment: "getFeeTiers", data: BytesLike): Result;
2509
2569
  decodeFunctionResult(functionFragment: "getFeeTiersCount", data: BytesLike): Result;
2510
2570
  decodeFunctionResult(functionFragment: "getFeeTiersTraderDailyInfo", data: BytesLike): Result;
2511
2571
  decodeFunctionResult(functionFragment: "getFeeTiersTraderInfo", data: BytesLike): Result;
2572
+ decodeFunctionResult(functionFragment: "getGnsStakingInfo", data: BytesLike): Result;
2573
+ decodeFunctionResult(functionFragment: "getGnsStakingInfos", data: BytesLike): Result;
2574
+ decodeFunctionResult(functionFragment: "getGnsStakingTier", data: BytesLike): Result;
2575
+ decodeFunctionResult(functionFragment: "getGnsStakingTiers", data: BytesLike): Result;
2576
+ decodeFunctionResult(functionFragment: "getGnsStakingTiersCount", data: BytesLike): Result;
2577
+ decodeFunctionResult(functionFragment: "getGnsVaultAddress", data: BytesLike): Result;
2512
2578
  decodeFunctionResult(functionFragment: "getGroupVolumeMultiplier", data: BytesLike): Result;
2579
+ decodeFunctionResult(functionFragment: "getGroupVolumeMultipliers", data: BytesLike): Result;
2580
+ decodeFunctionResult(functionFragment: "getStakedVaultGnsValue", data: BytesLike): Result;
2513
2581
  decodeFunctionResult(functionFragment: "getTraderFeeTiersEnrollment", data: BytesLike): Result;
2514
2582
  decodeFunctionResult(functionFragment: "getTraderUnclaimedPoints", data: BytesLike): Result;
2583
+ decodeFunctionResult(functionFragment: "getUseGnsVaultBalance", data: BytesLike): Result;
2515
2584
  decodeFunctionResult(functionFragment: "initializeFeeTiers", data: BytesLike): Result;
2585
+ decodeFunctionResult(functionFragment: "initializeGnsStakingTiers", data: BytesLike): Result;
2516
2586
  decodeFunctionResult(functionFragment: "setFeeTiers", data: BytesLike): Result;
2587
+ decodeFunctionResult(functionFragment: "setGnsStakingBonusAmounts", data: BytesLike): Result;
2588
+ decodeFunctionResult(functionFragment: "setGnsStakingTiers", data: BytesLike): Result;
2517
2589
  decodeFunctionResult(functionFragment: "setGroupVolumeMultipliers", data: BytesLike): Result;
2518
2590
  decodeFunctionResult(functionFragment: "setTradersFeeTiersEnrollment", data: BytesLike): Result;
2591
+ decodeFunctionResult(functionFragment: "setUseGnsVaultBalance", data: BytesLike): Result;
2592
+ decodeFunctionResult(functionFragment: "stakeGns", data: BytesLike): Result;
2593
+ decodeFunctionResult(functionFragment: "syncGnsStakingTiers", data: BytesLike): Result;
2594
+ decodeFunctionResult(functionFragment: "unstakeGns", data: BytesLike): Result;
2519
2595
  decodeFunctionResult(functionFragment: "updateTraderPoints", data: BytesLike): Result;
2520
2596
  decodeFunctionResult(functionFragment: "addPriceImpactOpenInterest", data: BytesLike): Result;
2521
2597
  decodeFunctionResult(functionFragment: "getDepthBandsMapping", data: BytesLike): Result;
@@ -2829,6 +2905,11 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
2829
2905
  "UpdatedStartReferrerFeeP(uint256)": EventFragment;
2830
2906
  "UpdatedTargetVolumeUsd(uint256)": EventFragment;
2831
2907
  "FeeTiersUpdated(uint256[],tuple[])": EventFragment;
2908
+ "GnsStaked(address,uint88,uint88)": EventFragment;
2909
+ "GnsStakingBonusUpdated(address[],uint24[])": EventFragment;
2910
+ "GnsStakingFeeMultiplierCached(address,uint32)": EventFragment;
2911
+ "GnsStakingTiersUpdated(uint256[],tuple[])": EventFragment;
2912
+ "GnsUnstaked(address,uint88,uint88)": EventFragment;
2832
2913
  "GroupVolumeMultipliersUpdated(uint256[],uint256[])": EventFragment;
2833
2914
  "TraderDailyPointsIncreased(address,uint32,uint224)": EventFragment;
2834
2915
  "TraderEnrollmentUpdated(address,tuple)": EventFragment;
@@ -2838,6 +2919,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
2838
2919
  "TraderPointsCredited(address,uint32,uint8,uint224)": EventFragment;
2839
2920
  "TraderTrailingPointsExpired(address,uint32,uint32,uint224)": EventFragment;
2840
2921
  "TraderUnclaimedPointsClaimed(address,uint32,uint224)": EventFragment;
2922
+ "UseGnsVaultBalanceUpdated(bool)": EventFragment;
2841
2923
  "CumulativeFactorUpdated(uint256,uint40)": EventFragment;
2842
2924
  "DepthBandsMappingUpdated(uint256,uint256)": EventFragment;
2843
2925
  "ExemptAfterProtectionCloseFactorUpdated(uint256,bool)": EventFragment;
@@ -2997,6 +3079,11 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
2997
3079
  getEvent(nameOrSignatureOrTopic: "UpdatedStartReferrerFeeP"): EventFragment;
2998
3080
  getEvent(nameOrSignatureOrTopic: "UpdatedTargetVolumeUsd"): EventFragment;
2999
3081
  getEvent(nameOrSignatureOrTopic: "FeeTiersUpdated"): EventFragment;
3082
+ getEvent(nameOrSignatureOrTopic: "GnsStaked"): EventFragment;
3083
+ getEvent(nameOrSignatureOrTopic: "GnsStakingBonusUpdated"): EventFragment;
3084
+ getEvent(nameOrSignatureOrTopic: "GnsStakingFeeMultiplierCached"): EventFragment;
3085
+ getEvent(nameOrSignatureOrTopic: "GnsStakingTiersUpdated"): EventFragment;
3086
+ getEvent(nameOrSignatureOrTopic: "GnsUnstaked"): EventFragment;
3000
3087
  getEvent(nameOrSignatureOrTopic: "GroupVolumeMultipliersUpdated"): EventFragment;
3001
3088
  getEvent(nameOrSignatureOrTopic: "TraderDailyPointsIncreased"): EventFragment;
3002
3089
  getEvent(nameOrSignatureOrTopic: "TraderEnrollmentUpdated"): EventFragment;
@@ -3006,6 +3093,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
3006
3093
  getEvent(nameOrSignatureOrTopic: "TraderPointsCredited"): EventFragment;
3007
3094
  getEvent(nameOrSignatureOrTopic: "TraderTrailingPointsExpired"): EventFragment;
3008
3095
  getEvent(nameOrSignatureOrTopic: "TraderUnclaimedPointsClaimed"): EventFragment;
3096
+ getEvent(nameOrSignatureOrTopic: "UseGnsVaultBalanceUpdated"): EventFragment;
3009
3097
  getEvent(nameOrSignatureOrTopic: "CumulativeFactorUpdated"): EventFragment;
3010
3098
  getEvent(nameOrSignatureOrTopic: "DepthBandsMappingUpdated"): EventFragment;
3011
3099
  getEvent(nameOrSignatureOrTopic: "ExemptAfterProtectionCloseFactorUpdated"): EventFragment;
@@ -3403,6 +3491,55 @@ export type FeeTiersUpdatedEvent = TypedEvent<[
3403
3491
  IFeeTiers.FeeTierStructOutput[]
3404
3492
  ], FeeTiersUpdatedEventObject>;
3405
3493
  export type FeeTiersUpdatedEventFilter = TypedEventFilter<FeeTiersUpdatedEvent>;
3494
+ export interface GnsStakedEventObject {
3495
+ trader: string;
3496
+ amountGns: BigNumber;
3497
+ amountVaultGns: BigNumber;
3498
+ }
3499
+ export type GnsStakedEvent = TypedEvent<[
3500
+ string,
3501
+ BigNumber,
3502
+ BigNumber
3503
+ ], GnsStakedEventObject>;
3504
+ export type GnsStakedEventFilter = TypedEventFilter<GnsStakedEvent>;
3505
+ export interface GnsStakingBonusUpdatedEventObject {
3506
+ traders: string[];
3507
+ bonusAmounts: number[];
3508
+ }
3509
+ export type GnsStakingBonusUpdatedEvent = TypedEvent<[
3510
+ string[],
3511
+ number[]
3512
+ ], GnsStakingBonusUpdatedEventObject>;
3513
+ export type GnsStakingBonusUpdatedEventFilter = TypedEventFilter<GnsStakingBonusUpdatedEvent>;
3514
+ export interface GnsStakingFeeMultiplierCachedEventObject {
3515
+ trader: string;
3516
+ feeMultiplier: number;
3517
+ }
3518
+ export type GnsStakingFeeMultiplierCachedEvent = TypedEvent<[
3519
+ string,
3520
+ number
3521
+ ], GnsStakingFeeMultiplierCachedEventObject>;
3522
+ export type GnsStakingFeeMultiplierCachedEventFilter = TypedEventFilter<GnsStakingFeeMultiplierCachedEvent>;
3523
+ export interface GnsStakingTiersUpdatedEventObject {
3524
+ indices: BigNumber[];
3525
+ tiers: IFeeTiers.FeeTierStructOutput[];
3526
+ }
3527
+ export type GnsStakingTiersUpdatedEvent = TypedEvent<[
3528
+ BigNumber[],
3529
+ IFeeTiers.FeeTierStructOutput[]
3530
+ ], GnsStakingTiersUpdatedEventObject>;
3531
+ export type GnsStakingTiersUpdatedEventFilter = TypedEventFilter<GnsStakingTiersUpdatedEvent>;
3532
+ export interface GnsUnstakedEventObject {
3533
+ trader: string;
3534
+ amountGns: BigNumber;
3535
+ amountVaultGns: BigNumber;
3536
+ }
3537
+ export type GnsUnstakedEvent = TypedEvent<[
3538
+ string,
3539
+ BigNumber,
3540
+ BigNumber
3541
+ ], GnsUnstakedEventObject>;
3542
+ export type GnsUnstakedEventFilter = TypedEventFilter<GnsUnstakedEvent>;
3406
3543
  export interface GroupVolumeMultipliersUpdatedEventObject {
3407
3544
  groupIndices: BigNumber[];
3408
3545
  groupVolumeMultipliers: BigNumber[];
@@ -3498,6 +3635,13 @@ export type TraderUnclaimedPointsClaimedEvent = TypedEvent<[
3498
3635
  BigNumber
3499
3636
  ], TraderUnclaimedPointsClaimedEventObject>;
3500
3637
  export type TraderUnclaimedPointsClaimedEventFilter = TypedEventFilter<TraderUnclaimedPointsClaimedEvent>;
3638
+ export interface UseGnsVaultBalanceUpdatedEventObject {
3639
+ newValue: boolean;
3640
+ }
3641
+ export type UseGnsVaultBalanceUpdatedEvent = TypedEvent<[
3642
+ boolean
3643
+ ], UseGnsVaultBalanceUpdatedEventObject>;
3644
+ export type UseGnsVaultBalanceUpdatedEventFilter = TypedEventFilter<UseGnsVaultBalanceUpdatedEvent>;
3501
3645
  export interface CumulativeFactorUpdatedEventObject {
3502
3646
  pairIndex: BigNumber;
3503
3647
  cumulativeFactor: number;
@@ -5301,24 +5445,55 @@ export interface GNSMultiCollatDiamond extends BaseContract {
5301
5445
  }): Promise<ContractTransaction>;
5302
5446
  calculateFeeAmount(_trader: PromiseOrValue<string>, _normalFeeAmountCollateral: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
5303
5447
  getFeeTier(_feeTierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IFeeTiers.FeeTierStructOutput]>;
5448
+ getFeeTiers(overrides?: CallOverrides): Promise<[IFeeTiers.FeeTierStructOutput[]]>;
5304
5449
  getFeeTiersCount(overrides?: CallOverrides): Promise<[BigNumber]>;
5305
5450
  getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IFeeTiers.TraderDailyInfoStructOutput]>;
5306
5451
  getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[IFeeTiers.TraderInfoStructOutput]>;
5452
+ getGnsStakingInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[IFeeTiers.GnsStakingInfoStructOutput]>;
5453
+ getGnsStakingInfos(_traders: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<[IFeeTiers.GnsStakingInfoStructOutput[]]>;
5454
+ getGnsStakingTier(_tierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IFeeTiers.FeeTierStructOutput]>;
5455
+ getGnsStakingTiers(overrides?: CallOverrides): Promise<[IFeeTiers.FeeTierStructOutput[]]>;
5456
+ getGnsStakingTiersCount(overrides?: CallOverrides): Promise<[BigNumber]>;
5457
+ getGnsVaultAddress(overrides?: CallOverrides): Promise<[string]>;
5307
5458
  getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
5459
+ getGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[BigNumber[]]>;
5460
+ getStakedVaultGnsValue(_stakedVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
5308
5461
  getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[IFeeTiers.TraderEnrollmentStructOutput]>;
5309
5462
  getTraderUnclaimedPoints(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
5463
+ getUseGnsVaultBalance(overrides?: CallOverrides): Promise<[boolean]>;
5310
5464
  initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
5311
5465
  from?: PromiseOrValue<string>;
5312
5466
  }): Promise<ContractTransaction>;
5467
+ initializeGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], _gnsVaultAddress: PromiseOrValue<string>, _useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
5468
+ from?: PromiseOrValue<string>;
5469
+ }): Promise<ContractTransaction>;
5313
5470
  setFeeTiers(_feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
5314
5471
  from?: PromiseOrValue<string>;
5315
5472
  }): Promise<ContractTransaction>;
5473
+ setGnsStakingBonusAmounts(_traders: PromiseOrValue<string>[], _bonusAmounts: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
5474
+ from?: PromiseOrValue<string>;
5475
+ }): Promise<ContractTransaction>;
5476
+ setGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
5477
+ from?: PromiseOrValue<string>;
5478
+ }): Promise<ContractTransaction>;
5316
5479
  setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
5317
5480
  from?: PromiseOrValue<string>;
5318
5481
  }): Promise<ContractTransaction>;
5319
5482
  setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
5320
5483
  from?: PromiseOrValue<string>;
5321
5484
  }): Promise<ContractTransaction>;
5485
+ setUseGnsVaultBalance(_useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
5486
+ from?: PromiseOrValue<string>;
5487
+ }): Promise<ContractTransaction>;
5488
+ stakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
5489
+ from?: PromiseOrValue<string>;
5490
+ }): Promise<ContractTransaction>;
5491
+ syncGnsStakingTiers(_traders: PromiseOrValue<string>[], overrides?: Overrides & {
5492
+ from?: PromiseOrValue<string>;
5493
+ }): Promise<ContractTransaction>;
5494
+ unstakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
5495
+ from?: PromiseOrValue<string>;
5496
+ }): Promise<ContractTransaction>;
5322
5497
  updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
5323
5498
  from?: PromiseOrValue<string>;
5324
5499
  }): Promise<ContractTransaction>;
@@ -6126,24 +6301,55 @@ export interface GNSMultiCollatDiamond extends BaseContract {
6126
6301
  }): Promise<ContractTransaction>;
6127
6302
  calculateFeeAmount(_trader: PromiseOrValue<string>, _normalFeeAmountCollateral: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
6128
6303
  getFeeTier(_feeTierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput>;
6304
+ getFeeTiers(overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput[]>;
6129
6305
  getFeeTiersCount(overrides?: CallOverrides): Promise<BigNumber>;
6130
6306
  getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.TraderDailyInfoStructOutput>;
6131
6307
  getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderInfoStructOutput>;
6308
+ getGnsStakingInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.GnsStakingInfoStructOutput>;
6309
+ getGnsStakingInfos(_traders: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<IFeeTiers.GnsStakingInfoStructOutput[]>;
6310
+ getGnsStakingTier(_tierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput>;
6311
+ getGnsStakingTiers(overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput[]>;
6312
+ getGnsStakingTiersCount(overrides?: CallOverrides): Promise<BigNumber>;
6313
+ getGnsVaultAddress(overrides?: CallOverrides): Promise<string>;
6132
6314
  getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
6315
+ getGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber[]>;
6316
+ getStakedVaultGnsValue(_stakedVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
6133
6317
  getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderEnrollmentStructOutput>;
6134
6318
  getTraderUnclaimedPoints(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
6319
+ getUseGnsVaultBalance(overrides?: CallOverrides): Promise<boolean>;
6135
6320
  initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
6136
6321
  from?: PromiseOrValue<string>;
6137
6322
  }): Promise<ContractTransaction>;
6323
+ initializeGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], _gnsVaultAddress: PromiseOrValue<string>, _useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
6324
+ from?: PromiseOrValue<string>;
6325
+ }): Promise<ContractTransaction>;
6138
6326
  setFeeTiers(_feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
6139
6327
  from?: PromiseOrValue<string>;
6140
6328
  }): Promise<ContractTransaction>;
6329
+ setGnsStakingBonusAmounts(_traders: PromiseOrValue<string>[], _bonusAmounts: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
6330
+ from?: PromiseOrValue<string>;
6331
+ }): Promise<ContractTransaction>;
6332
+ setGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
6333
+ from?: PromiseOrValue<string>;
6334
+ }): Promise<ContractTransaction>;
6141
6335
  setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
6142
6336
  from?: PromiseOrValue<string>;
6143
6337
  }): Promise<ContractTransaction>;
6144
6338
  setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
6145
6339
  from?: PromiseOrValue<string>;
6146
6340
  }): Promise<ContractTransaction>;
6341
+ setUseGnsVaultBalance(_useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
6342
+ from?: PromiseOrValue<string>;
6343
+ }): Promise<ContractTransaction>;
6344
+ stakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
6345
+ from?: PromiseOrValue<string>;
6346
+ }): Promise<ContractTransaction>;
6347
+ syncGnsStakingTiers(_traders: PromiseOrValue<string>[], overrides?: Overrides & {
6348
+ from?: PromiseOrValue<string>;
6349
+ }): Promise<ContractTransaction>;
6350
+ unstakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
6351
+ from?: PromiseOrValue<string>;
6352
+ }): Promise<ContractTransaction>;
6147
6353
  updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
6148
6354
  from?: PromiseOrValue<string>;
6149
6355
  }): Promise<ContractTransaction>;
@@ -6867,16 +7073,33 @@ export interface GNSMultiCollatDiamond extends BaseContract {
6867
7073
  addTradersUnclaimedPoints(_traders: PromiseOrValue<string>[], _creditTypes: PromiseOrValue<BigNumberish>[], _points: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<void>;
6868
7074
  calculateFeeAmount(_trader: PromiseOrValue<string>, _normalFeeAmountCollateral: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
6869
7075
  getFeeTier(_feeTierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput>;
7076
+ getFeeTiers(overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput[]>;
6870
7077
  getFeeTiersCount(overrides?: CallOverrides): Promise<BigNumber>;
6871
7078
  getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.TraderDailyInfoStructOutput>;
6872
7079
  getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderInfoStructOutput>;
7080
+ getGnsStakingInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.GnsStakingInfoStructOutput>;
7081
+ getGnsStakingInfos(_traders: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<IFeeTiers.GnsStakingInfoStructOutput[]>;
7082
+ getGnsStakingTier(_tierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput>;
7083
+ getGnsStakingTiers(overrides?: CallOverrides): Promise<IFeeTiers.FeeTierStructOutput[]>;
7084
+ getGnsStakingTiersCount(overrides?: CallOverrides): Promise<BigNumber>;
7085
+ getGnsVaultAddress(overrides?: CallOverrides): Promise<string>;
6873
7086
  getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7087
+ getGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber[]>;
7088
+ getStakedVaultGnsValue(_stakedVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
6874
7089
  getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderEnrollmentStructOutput>;
6875
7090
  getTraderUnclaimedPoints(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
7091
+ getUseGnsVaultBalance(overrides?: CallOverrides): Promise<boolean>;
6876
7092
  initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: CallOverrides): Promise<void>;
7093
+ initializeGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], _gnsVaultAddress: PromiseOrValue<string>, _useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
6877
7094
  setFeeTiers(_feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: CallOverrides): Promise<void>;
7095
+ setGnsStakingBonusAmounts(_traders: PromiseOrValue<string>[], _bonusAmounts: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<void>;
7096
+ setGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], overrides?: CallOverrides): Promise<void>;
6878
7097
  setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<void>;
6879
7098
  setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: CallOverrides): Promise<void>;
7099
+ setUseGnsVaultBalance(_useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
7100
+ stakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
7101
+ syncGnsStakingTiers(_traders: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<void>;
7102
+ unstakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
6880
7103
  updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
6881
7104
  addPriceImpactOpenInterest(_trader: PromiseOrValue<string>, _index: PromiseOrValue<BigNumberish>, _oiDeltaCollateral: PromiseOrValue<BigNumberish>, _open: PromiseOrValue<boolean>, _isPnlPositive: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
6882
7105
  getDepthBandsMapping(overrides?: CallOverrides): Promise<[BigNumber, BigNumber] & {
@@ -7306,6 +7529,16 @@ export interface GNSMultiCollatDiamond extends BaseContract {
7306
7529
  UpdatedTargetVolumeUsd(value?: null): UpdatedTargetVolumeUsdEventFilter;
7307
7530
  "FeeTiersUpdated(uint256[],tuple[])"(feeTiersIndices?: null, feeTiers?: null): FeeTiersUpdatedEventFilter;
7308
7531
  FeeTiersUpdated(feeTiersIndices?: null, feeTiers?: null): FeeTiersUpdatedEventFilter;
7532
+ "GnsStaked(address,uint88,uint88)"(trader?: PromiseOrValue<string> | null, amountGns?: null, amountVaultGns?: null): GnsStakedEventFilter;
7533
+ GnsStaked(trader?: PromiseOrValue<string> | null, amountGns?: null, amountVaultGns?: null): GnsStakedEventFilter;
7534
+ "GnsStakingBonusUpdated(address[],uint24[])"(traders?: null, bonusAmounts?: null): GnsStakingBonusUpdatedEventFilter;
7535
+ GnsStakingBonusUpdated(traders?: null, bonusAmounts?: null): GnsStakingBonusUpdatedEventFilter;
7536
+ "GnsStakingFeeMultiplierCached(address,uint32)"(trader?: PromiseOrValue<string> | null, feeMultiplier?: null): GnsStakingFeeMultiplierCachedEventFilter;
7537
+ GnsStakingFeeMultiplierCached(trader?: PromiseOrValue<string> | null, feeMultiplier?: null): GnsStakingFeeMultiplierCachedEventFilter;
7538
+ "GnsStakingTiersUpdated(uint256[],tuple[])"(indices?: null, tiers?: null): GnsStakingTiersUpdatedEventFilter;
7539
+ GnsStakingTiersUpdated(indices?: null, tiers?: null): GnsStakingTiersUpdatedEventFilter;
7540
+ "GnsUnstaked(address,uint88,uint88)"(trader?: PromiseOrValue<string> | null, amountGns?: null, amountVaultGns?: null): GnsUnstakedEventFilter;
7541
+ GnsUnstaked(trader?: PromiseOrValue<string> | null, amountGns?: null, amountVaultGns?: null): GnsUnstakedEventFilter;
7309
7542
  "GroupVolumeMultipliersUpdated(uint256[],uint256[])"(groupIndices?: null, groupVolumeMultipliers?: null): GroupVolumeMultipliersUpdatedEventFilter;
7310
7543
  GroupVolumeMultipliersUpdated(groupIndices?: null, groupVolumeMultipliers?: null): GroupVolumeMultipliersUpdatedEventFilter;
7311
7544
  "TraderDailyPointsIncreased(address,uint32,uint224)"(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, points?: null): TraderDailyPointsIncreasedEventFilter;
@@ -7324,6 +7557,8 @@ export interface GNSMultiCollatDiamond extends BaseContract {
7324
7557
  TraderTrailingPointsExpired(trader?: PromiseOrValue<string> | null, fromDay?: null, toDay?: null, expiredPoints?: null): TraderTrailingPointsExpiredEventFilter;
7325
7558
  "TraderUnclaimedPointsClaimed(address,uint32,uint224)"(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, points?: null): TraderUnclaimedPointsClaimedEventFilter;
7326
7559
  TraderUnclaimedPointsClaimed(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, points?: null): TraderUnclaimedPointsClaimedEventFilter;
7560
+ "UseGnsVaultBalanceUpdated(bool)"(newValue?: null): UseGnsVaultBalanceUpdatedEventFilter;
7561
+ UseGnsVaultBalanceUpdated(newValue?: null): UseGnsVaultBalanceUpdatedEventFilter;
7327
7562
  "CumulativeFactorUpdated(uint256,uint40)"(pairIndex?: PromiseOrValue<BigNumberish> | null, cumulativeFactor?: null): CumulativeFactorUpdatedEventFilter;
7328
7563
  CumulativeFactorUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, cumulativeFactor?: null): CumulativeFactorUpdatedEventFilter;
7329
7564
  "DepthBandsMappingUpdated(uint256,uint256)"(slot1?: null, slot2?: null): DepthBandsMappingUpdatedEventFilter;
@@ -7727,24 +7962,55 @@ export interface GNSMultiCollatDiamond extends BaseContract {
7727
7962
  }): Promise<BigNumber>;
7728
7963
  calculateFeeAmount(_trader: PromiseOrValue<string>, _normalFeeAmountCollateral: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7729
7964
  getFeeTier(_feeTierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7965
+ getFeeTiers(overrides?: CallOverrides): Promise<BigNumber>;
7730
7966
  getFeeTiersCount(overrides?: CallOverrides): Promise<BigNumber>;
7731
7967
  getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7732
7968
  getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
7969
+ getGnsStakingInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
7970
+ getGnsStakingInfos(_traders: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<BigNumber>;
7971
+ getGnsStakingTier(_tierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7972
+ getGnsStakingTiers(overrides?: CallOverrides): Promise<BigNumber>;
7973
+ getGnsStakingTiersCount(overrides?: CallOverrides): Promise<BigNumber>;
7974
+ getGnsVaultAddress(overrides?: CallOverrides): Promise<BigNumber>;
7733
7975
  getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7976
+ getGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
7977
+ getStakedVaultGnsValue(_stakedVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
7734
7978
  getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
7735
7979
  getTraderUnclaimedPoints(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
7980
+ getUseGnsVaultBalance(overrides?: CallOverrides): Promise<BigNumber>;
7736
7981
  initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
7737
7982
  from?: PromiseOrValue<string>;
7738
7983
  }): Promise<BigNumber>;
7984
+ initializeGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], _gnsVaultAddress: PromiseOrValue<string>, _useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
7985
+ from?: PromiseOrValue<string>;
7986
+ }): Promise<BigNumber>;
7739
7987
  setFeeTiers(_feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
7740
7988
  from?: PromiseOrValue<string>;
7741
7989
  }): Promise<BigNumber>;
7990
+ setGnsStakingBonusAmounts(_traders: PromiseOrValue<string>[], _bonusAmounts: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
7991
+ from?: PromiseOrValue<string>;
7992
+ }): Promise<BigNumber>;
7993
+ setGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
7994
+ from?: PromiseOrValue<string>;
7995
+ }): Promise<BigNumber>;
7742
7996
  setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
7743
7997
  from?: PromiseOrValue<string>;
7744
7998
  }): Promise<BigNumber>;
7745
7999
  setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
7746
8000
  from?: PromiseOrValue<string>;
7747
8001
  }): Promise<BigNumber>;
8002
+ setUseGnsVaultBalance(_useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
8003
+ from?: PromiseOrValue<string>;
8004
+ }): Promise<BigNumber>;
8005
+ stakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
8006
+ from?: PromiseOrValue<string>;
8007
+ }): Promise<BigNumber>;
8008
+ syncGnsStakingTiers(_traders: PromiseOrValue<string>[], overrides?: Overrides & {
8009
+ from?: PromiseOrValue<string>;
8010
+ }): Promise<BigNumber>;
8011
+ unstakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
8012
+ from?: PromiseOrValue<string>;
8013
+ }): Promise<BigNumber>;
7748
8014
  updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
7749
8015
  from?: PromiseOrValue<string>;
7750
8016
  }): Promise<BigNumber>;
@@ -8451,24 +8717,55 @@ export interface GNSMultiCollatDiamond extends BaseContract {
8451
8717
  }): Promise<PopulatedTransaction>;
8452
8718
  calculateFeeAmount(_trader: PromiseOrValue<string>, _normalFeeAmountCollateral: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8453
8719
  getFeeTier(_feeTierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8720
+ getFeeTiers(overrides?: CallOverrides): Promise<PopulatedTransaction>;
8454
8721
  getFeeTiersCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
8455
8722
  getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8456
8723
  getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8724
+ getGnsStakingInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8725
+ getGnsStakingInfos(_traders: PromiseOrValue<string>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
8726
+ getGnsStakingTier(_tierIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8727
+ getGnsStakingTiers(overrides?: CallOverrides): Promise<PopulatedTransaction>;
8728
+ getGnsStakingTiersCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
8729
+ getGnsVaultAddress(overrides?: CallOverrides): Promise<PopulatedTransaction>;
8457
8730
  getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8731
+ getGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
8732
+ getStakedVaultGnsValue(_stakedVaultGns: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8458
8733
  getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8459
8734
  getTraderUnclaimedPoints(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
8735
+ getUseGnsVaultBalance(overrides?: CallOverrides): Promise<PopulatedTransaction>;
8460
8736
  initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
8461
8737
  from?: PromiseOrValue<string>;
8462
8738
  }): Promise<PopulatedTransaction>;
8739
+ initializeGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], _gnsVaultAddress: PromiseOrValue<string>, _useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
8740
+ from?: PromiseOrValue<string>;
8741
+ }): Promise<PopulatedTransaction>;
8463
8742
  setFeeTiers(_feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
8464
8743
  from?: PromiseOrValue<string>;
8465
8744
  }): Promise<PopulatedTransaction>;
8745
+ setGnsStakingBonusAmounts(_traders: PromiseOrValue<string>[], _bonusAmounts: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
8746
+ from?: PromiseOrValue<string>;
8747
+ }): Promise<PopulatedTransaction>;
8748
+ setGnsStakingTiers(_tierIndices: PromiseOrValue<BigNumberish>[], _tiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
8749
+ from?: PromiseOrValue<string>;
8750
+ }): Promise<PopulatedTransaction>;
8466
8751
  setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
8467
8752
  from?: PromiseOrValue<string>;
8468
8753
  }): Promise<PopulatedTransaction>;
8469
8754
  setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
8470
8755
  from?: PromiseOrValue<string>;
8471
8756
  }): Promise<PopulatedTransaction>;
8757
+ setUseGnsVaultBalance(_useGnsVaultBalance: PromiseOrValue<boolean>, overrides?: Overrides & {
8758
+ from?: PromiseOrValue<string>;
8759
+ }): Promise<PopulatedTransaction>;
8760
+ stakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
8761
+ from?: PromiseOrValue<string>;
8762
+ }): Promise<PopulatedTransaction>;
8763
+ syncGnsStakingTiers(_traders: PromiseOrValue<string>[], overrides?: Overrides & {
8764
+ from?: PromiseOrValue<string>;
8765
+ }): Promise<PopulatedTransaction>;
8766
+ unstakeGns(_amountGns: PromiseOrValue<BigNumberish>, _amountVaultGns: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
8767
+ from?: PromiseOrValue<string>;
8768
+ }): Promise<PopulatedTransaction>;
8472
8769
  updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
8473
8770
  from?: PromiseOrValue<string>;
8474
8771
  }): Promise<PopulatedTransaction>;