@gainsnetwork/sdk 0.2.25-rc1 → 0.2.25
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.
- package/lib/constants.js +1 -1
- package/lib/contracts/types/generated/GNSMultiCollatDiamond.d.ts +62 -1
- package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.js +115 -0
- package/lib/trade/fees/tiers/index.js +5 -2
- package/lib/trade/fees/tiers/types.d.ts +7 -0
- package/lib/trade/fees/tiers/types.js +6 -0
- package/lib/trade/types.d.ts +2 -1
- package/package.json +1 -1
package/lib/constants.js
CHANGED
|
@@ -315,7 +315,7 @@ exports.delistedPairIxs = new Set([
|
|
|
315
315
|
6, 31, 36, 45, 48, 51, 54, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
|
|
316
316
|
71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
|
|
317
317
|
97, 99, 101, 106, 108, 52, 131, 147, 160, 179, 182, 183, 190, 229, 163, 155,
|
|
318
|
-
15, 170, 239, 254, 230,
|
|
318
|
+
15, 170, 239, 254, 230,
|
|
319
319
|
]);
|
|
320
320
|
exports.delistedGroupsIxs = new Set([6, 7]);
|
|
321
321
|
exports.DEFAULT_PROTECTION_CLOSE_FACTOR = 1;
|
|
@@ -186,6 +186,14 @@ export declare namespace IFeeTiers {
|
|
|
186
186
|
feeMultiplier: number;
|
|
187
187
|
pointsThreshold: number;
|
|
188
188
|
};
|
|
189
|
+
type TraderEnrollmentStruct = {
|
|
190
|
+
status: PromiseOrValue<BigNumberish>;
|
|
191
|
+
__placeholder: PromiseOrValue<BigNumberish>;
|
|
192
|
+
};
|
|
193
|
+
type TraderEnrollmentStructOutput = [number, BigNumber] & {
|
|
194
|
+
status: number;
|
|
195
|
+
__placeholder: BigNumber;
|
|
196
|
+
};
|
|
189
197
|
type TraderInfoStruct = {
|
|
190
198
|
lastDayUpdated: PromiseOrValue<BigNumberish>;
|
|
191
199
|
trailingPoints: PromiseOrValue<BigNumberish>;
|
|
@@ -962,9 +970,11 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
962
970
|
"getFeeTiersTraderDailyInfo(address,uint32)": FunctionFragment;
|
|
963
971
|
"getFeeTiersTraderInfo(address)": FunctionFragment;
|
|
964
972
|
"getGroupVolumeMultiplier(uint256)": FunctionFragment;
|
|
973
|
+
"getTraderFeeTiersEnrollment(address)": FunctionFragment;
|
|
965
974
|
"initializeFeeTiers(uint256[],uint256[],uint256[],(uint32,uint32)[])": FunctionFragment;
|
|
966
975
|
"setFeeTiers(uint256[],(uint32,uint32)[])": FunctionFragment;
|
|
967
976
|
"setGroupVolumeMultipliers(uint256[],uint256[])": FunctionFragment;
|
|
977
|
+
"setTradersFeeTiersEnrollment(address[],(uint8,uint248)[])": FunctionFragment;
|
|
968
978
|
"updateTraderPoints(address,uint256,uint256)": FunctionFragment;
|
|
969
979
|
"addPriceImpactOpenInterest(address,uint32,uint256,bool)": FunctionFragment;
|
|
970
980
|
"getOiWindow(uint48,uint256,uint256)": FunctionFragment;
|
|
@@ -1134,8 +1144,9 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1134
1144
|
"initializeOtc((address,uint64,uint64,uint64,uint64))": FunctionFragment;
|
|
1135
1145
|
"sellGnsForCollateral(uint8,uint256)": FunctionFragment;
|
|
1136
1146
|
"updateOtcConfig((address,uint64,uint64,uint64,uint64))": FunctionFragment;
|
|
1147
|
+
"multicall(bytes[])": FunctionFragment;
|
|
1137
1148
|
};
|
|
1138
|
-
getFunction(nameOrSignatureOrTopic: "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "getAddresses" | "hasRole" | "initialize" | "setRoles" | "addFees" | "addGroups" | "addPairs" | "fees" | "feesCount" | "getAllPairsRestrictedMaxLeverage" | "getGroupLiquidationParams" | "getPairLiquidationParams" | "groups" | "groupsCount" | "initializeGroupLiquidationParams" | "isPairIndexListed" | "isPairListed" | "pairCloseFeeP" | "pairCustomMaxLeverage" | "pairJob" | "pairMaxLeverage" | "pairMinFeeUsd" | "pairMinLeverage" | "pairMinPositionSizeUsd" | "pairOpenFeeP" | "pairOracleFeeP" | "pairSpreadP" | "pairTriggerOrderFeeP" | "pairs" | "pairsBackend" | "pairsCount" | "setGroupLiquidationParams" | "setPairCustomMaxLeverages" | "updateFees" | "updateGroups" | "updatePairs" | "claimAllyRewards" | "claimReferrerRewards" | "distributeReferralReward" | "getAllyDetails" | "getReferralsAllyFeeP" | "getReferralsOpenFeeP" | "getReferralsStartReferrerFeeP" | "getReferralsTargetVolumeUsd" | "getReferrerDetails" | "getReferrerFeeP" | "getReferrersReferred" | "getTraderActiveReferrer" | "getTraderLastReferrer" | "getTradersReferred" | "initializeReferrals" | "registerPotentialReferrer" | "unwhitelistAllies" | "unwhitelistReferrers" | "updateAllyFeeP" | "updateReferralsOpenFeeP" | "updateReferralsTargetVolumeUsd" | "updateStartReferrerFeeP" | "whitelistAllies" | "whitelistReferrers" | "calculateFeeAmount" | "getFeeTier" | "getFeeTiersCount" | "getFeeTiersTraderDailyInfo" | "getFeeTiersTraderInfo" | "getGroupVolumeMultiplier" | "initializeFeeTiers" | "setFeeTiers" | "setGroupVolumeMultipliers" | "updateTraderPoints" | "addPriceImpactOpenInterest" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPairDepth" | "getPairDepths" | "getPairFactors" | "getPriceImpactOi" | "getTradePriceImpact" | "initializePairFactors" | "initializePriceImpact" | "setCumulativeFactors" | "setPairDepths" | "setPriceImpactWindowsCount" | "setPriceImpactWindowsDuration" | "setProtectionCloseFactorBlocks" | "setProtectionCloseFactors" | "addCollateral" | "closePendingOrder" | "closeTrade" | "getAllPendingOrders" | "getAllTradeInfos" | "getAllTrades" | "getAllTradesLiquidationParams" | "getCollateral" | "getCollateralIndex" | "getCollaterals" | "getCollateralsCount" | "getCounters" | "getCurrentContractsVersion" | "getGToken" | "getPendingOrder" | "getPendingOrders" | "getTrade" | "getTradeInfo" | "getTradeInfos" | "getTradeLiquidationParams" | "getTradePendingOrderBlock" | "getTraderStored" | "getTraders" | "getTrades" | "getTradesLiquidationParams" | "getTradingActivated" | "initializeTradingStorage" | "isCollateralActive" | "isCollateralListed" | "storePendingOrder" | "storeTrade" | "toggleCollateralActiveState" | "updateGToken" | "updateOpenOrderDetails" | "updateTradeCollateralAmount" | "updateTradeMaxClosingSlippageP" | "updateTradePosition" | "updateTradeSl" | "updateTradeTp" | "updateTradingActivated" | "claimPendingTriggerRewards" | "distributeTriggerReward" | "getTriggerPendingRewardsGns" | "getTriggerTimeoutBlocks" | "hasActiveOrder" | "initializeTriggerRewards" | "updateTriggerTimeoutBlocks" | "cancelOpenOrder" | "cancelOrderAfterTimeout" | "closeTradeMarket" | "decreasePositionSize" | "delegatedTradingAction" | "getByPassTriggerLink" | "getMarketOrdersTimeoutBlocks" | "getTradingDelegate" | "getWrappedNativeToken" | "increasePositionSize" | "initializeTrading" | "isWrappedNativeToken" | "openTrade" | "openTradeNative" | "removeTradingDelegate" | "setTradingDelegate" | "triggerOrder" | "updateByPassTriggerLink" | "updateLeverage" | "updateMarketOrdersTimeoutBlocks" | "updateMaxClosingSlippageP" | "updateOpenOrder" | "updateSl" | "updateTp" | "claimPendingGovFees" | "closeTradeMarketCallback" | "decreasePositionSizeMarketCallback" | "executeTriggerCloseOrderCallback" | "executeTriggerOpenOrderCallback" | "getPendingGovFeesCollateral" | "getVaultClosingFeeP" | "increasePositionSizeMarketCallback" | "initializeCallbacks" | "openTradeMarketCallback" | "updateLeverageCallback" | "updateVaultClosingFeeP" | "validateTriggerCloseOrderCallback" | "validateTriggerOpenOrderCallback" | "getAllBorrowingPairs" | "getBorrowingGroup" | "getBorrowingGroupOi" | "getBorrowingGroupPendingAccFees" | "getBorrowingGroups" | "getBorrowingInitialAccFees" | "getBorrowingPair" | "getBorrowingPairGroupIndex" | "getBorrowingPairGroups" | "getBorrowingPairOi" | "getBorrowingPairPendingAccFees" | "getPairMaxOi" | "getPairMaxOiCollateral" | "getPairOiCollateral" | "getPairOisCollateral" | "getTradeBorrowingFee" | "getTradeLiquidationPrice" | "handleTradeBorrowingCallback" | "resetTradeBorrowingFees" | "setBorrowingGroupParams" | "setBorrowingGroupParamsArray" | "setBorrowingPairParams" | "setBorrowingPairParamsArray" | "withinMaxBorrowingGroupOi" | "addOracle" | "claimBackLink" | "fulfill" | "getChainlinkToken" | "getCollateralFromUsdNormalizedValue" | "getCollateralGnsLiquidityPool" | "getCollateralPriceUsd" | "getCollateralUsdPriceFeed" | "getGnsPriceCollateralAddress" | "getGnsPriceCollateralIndex" | "getGnsPriceUsd" | "getLimitJobId" | "getLinkFee" | "getLinkUsdPriceFeed" | "getMarketJobId" | "getMinAnswers" | "getOracle" | "getOracles" | "getPendingRequest" | "getPrice" | "getPriceAggregatorOrder" | "getPriceAggregatorOrderAnswers" | "getRequestCount" | "getTwapInterval" | "getUsdNormalizedValue" | "initializePriceAggregator" | "removeOracle" | "replaceOracle" | "setLimitJobId" | "setMarketJobId" | "updateCollateralGnsLiquidityPool" | "updateCollateralUsdPriceFeed" | "updateLinkUsdPriceFeed" | "updateMinAnswers" | "updateTwapInterval" | "addOtcCollateralBalance" | "getOtcBalance" | "getOtcConfig" | "getOtcRate" | "initializeOtc" | "sellGnsForCollateral" | "updateOtcConfig"): FunctionFragment;
|
|
1149
|
+
getFunction(nameOrSignatureOrTopic: "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "getAddresses" | "hasRole" | "initialize" | "setRoles" | "addFees" | "addGroups" | "addPairs" | "fees" | "feesCount" | "getAllPairsRestrictedMaxLeverage" | "getGroupLiquidationParams" | "getPairLiquidationParams" | "groups" | "groupsCount" | "initializeGroupLiquidationParams" | "isPairIndexListed" | "isPairListed" | "pairCloseFeeP" | "pairCustomMaxLeverage" | "pairJob" | "pairMaxLeverage" | "pairMinFeeUsd" | "pairMinLeverage" | "pairMinPositionSizeUsd" | "pairOpenFeeP" | "pairOracleFeeP" | "pairSpreadP" | "pairTriggerOrderFeeP" | "pairs" | "pairsBackend" | "pairsCount" | "setGroupLiquidationParams" | "setPairCustomMaxLeverages" | "updateFees" | "updateGroups" | "updatePairs" | "claimAllyRewards" | "claimReferrerRewards" | "distributeReferralReward" | "getAllyDetails" | "getReferralsAllyFeeP" | "getReferralsOpenFeeP" | "getReferralsStartReferrerFeeP" | "getReferralsTargetVolumeUsd" | "getReferrerDetails" | "getReferrerFeeP" | "getReferrersReferred" | "getTraderActiveReferrer" | "getTraderLastReferrer" | "getTradersReferred" | "initializeReferrals" | "registerPotentialReferrer" | "unwhitelistAllies" | "unwhitelistReferrers" | "updateAllyFeeP" | "updateReferralsOpenFeeP" | "updateReferralsTargetVolumeUsd" | "updateStartReferrerFeeP" | "whitelistAllies" | "whitelistReferrers" | "calculateFeeAmount" | "getFeeTier" | "getFeeTiersCount" | "getFeeTiersTraderDailyInfo" | "getFeeTiersTraderInfo" | "getGroupVolumeMultiplier" | "getTraderFeeTiersEnrollment" | "initializeFeeTiers" | "setFeeTiers" | "setGroupVolumeMultipliers" | "setTradersFeeTiersEnrollment" | "updateTraderPoints" | "addPriceImpactOpenInterest" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPairDepth" | "getPairDepths" | "getPairFactors" | "getPriceImpactOi" | "getTradePriceImpact" | "initializePairFactors" | "initializePriceImpact" | "setCumulativeFactors" | "setPairDepths" | "setPriceImpactWindowsCount" | "setPriceImpactWindowsDuration" | "setProtectionCloseFactorBlocks" | "setProtectionCloseFactors" | "addCollateral" | "closePendingOrder" | "closeTrade" | "getAllPendingOrders" | "getAllTradeInfos" | "getAllTrades" | "getAllTradesLiquidationParams" | "getCollateral" | "getCollateralIndex" | "getCollaterals" | "getCollateralsCount" | "getCounters" | "getCurrentContractsVersion" | "getGToken" | "getPendingOrder" | "getPendingOrders" | "getTrade" | "getTradeInfo" | "getTradeInfos" | "getTradeLiquidationParams" | "getTradePendingOrderBlock" | "getTraderStored" | "getTraders" | "getTrades" | "getTradesLiquidationParams" | "getTradingActivated" | "initializeTradingStorage" | "isCollateralActive" | "isCollateralListed" | "storePendingOrder" | "storeTrade" | "toggleCollateralActiveState" | "updateGToken" | "updateOpenOrderDetails" | "updateTradeCollateralAmount" | "updateTradeMaxClosingSlippageP" | "updateTradePosition" | "updateTradeSl" | "updateTradeTp" | "updateTradingActivated" | "claimPendingTriggerRewards" | "distributeTriggerReward" | "getTriggerPendingRewardsGns" | "getTriggerTimeoutBlocks" | "hasActiveOrder" | "initializeTriggerRewards" | "updateTriggerTimeoutBlocks" | "cancelOpenOrder" | "cancelOrderAfterTimeout" | "closeTradeMarket" | "decreasePositionSize" | "delegatedTradingAction" | "getByPassTriggerLink" | "getMarketOrdersTimeoutBlocks" | "getTradingDelegate" | "getWrappedNativeToken" | "increasePositionSize" | "initializeTrading" | "isWrappedNativeToken" | "openTrade" | "openTradeNative" | "removeTradingDelegate" | "setTradingDelegate" | "triggerOrder" | "updateByPassTriggerLink" | "updateLeverage" | "updateMarketOrdersTimeoutBlocks" | "updateMaxClosingSlippageP" | "updateOpenOrder" | "updateSl" | "updateTp" | "claimPendingGovFees" | "closeTradeMarketCallback" | "decreasePositionSizeMarketCallback" | "executeTriggerCloseOrderCallback" | "executeTriggerOpenOrderCallback" | "getPendingGovFeesCollateral" | "getVaultClosingFeeP" | "increasePositionSizeMarketCallback" | "initializeCallbacks" | "openTradeMarketCallback" | "updateLeverageCallback" | "updateVaultClosingFeeP" | "validateTriggerCloseOrderCallback" | "validateTriggerOpenOrderCallback" | "getAllBorrowingPairs" | "getBorrowingGroup" | "getBorrowingGroupOi" | "getBorrowingGroupPendingAccFees" | "getBorrowingGroups" | "getBorrowingInitialAccFees" | "getBorrowingPair" | "getBorrowingPairGroupIndex" | "getBorrowingPairGroups" | "getBorrowingPairOi" | "getBorrowingPairPendingAccFees" | "getPairMaxOi" | "getPairMaxOiCollateral" | "getPairOiCollateral" | "getPairOisCollateral" | "getTradeBorrowingFee" | "getTradeLiquidationPrice" | "handleTradeBorrowingCallback" | "resetTradeBorrowingFees" | "setBorrowingGroupParams" | "setBorrowingGroupParamsArray" | "setBorrowingPairParams" | "setBorrowingPairParamsArray" | "withinMaxBorrowingGroupOi" | "addOracle" | "claimBackLink" | "fulfill" | "getChainlinkToken" | "getCollateralFromUsdNormalizedValue" | "getCollateralGnsLiquidityPool" | "getCollateralPriceUsd" | "getCollateralUsdPriceFeed" | "getGnsPriceCollateralAddress" | "getGnsPriceCollateralIndex" | "getGnsPriceUsd" | "getLimitJobId" | "getLinkFee" | "getLinkUsdPriceFeed" | "getMarketJobId" | "getMinAnswers" | "getOracle" | "getOracles" | "getPendingRequest" | "getPrice" | "getPriceAggregatorOrder" | "getPriceAggregatorOrderAnswers" | "getRequestCount" | "getTwapInterval" | "getUsdNormalizedValue" | "initializePriceAggregator" | "removeOracle" | "replaceOracle" | "setLimitJobId" | "setMarketJobId" | "updateCollateralGnsLiquidityPool" | "updateCollateralUsdPriceFeed" | "updateLinkUsdPriceFeed" | "updateMinAnswers" | "updateTwapInterval" | "addOtcCollateralBalance" | "getOtcBalance" | "getOtcConfig" | "getOtcRate" | "initializeOtc" | "sellGnsForCollateral" | "updateOtcConfig" | "multicall"): FunctionFragment;
|
|
1139
1150
|
encodeFunctionData(functionFragment: "diamondCut", values: [
|
|
1140
1151
|
IDiamondStorage.FacetCutStruct[],
|
|
1141
1152
|
PromiseOrValue<string>,
|
|
@@ -1228,6 +1239,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1228
1239
|
encodeFunctionData(functionFragment: "getFeeTiersTraderDailyInfo", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
|
|
1229
1240
|
encodeFunctionData(functionFragment: "getFeeTiersTraderInfo", values: [PromiseOrValue<string>]): string;
|
|
1230
1241
|
encodeFunctionData(functionFragment: "getGroupVolumeMultiplier", values: [PromiseOrValue<BigNumberish>]): string;
|
|
1242
|
+
encodeFunctionData(functionFragment: "getTraderFeeTiersEnrollment", values: [PromiseOrValue<string>]): string;
|
|
1231
1243
|
encodeFunctionData(functionFragment: "initializeFeeTiers", values: [
|
|
1232
1244
|
PromiseOrValue<BigNumberish>[],
|
|
1233
1245
|
PromiseOrValue<BigNumberish>[],
|
|
@@ -1236,6 +1248,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1236
1248
|
]): string;
|
|
1237
1249
|
encodeFunctionData(functionFragment: "setFeeTiers", values: [PromiseOrValue<BigNumberish>[], IFeeTiers.FeeTierStruct[]]): string;
|
|
1238
1250
|
encodeFunctionData(functionFragment: "setGroupVolumeMultipliers", values: [PromiseOrValue<BigNumberish>[], PromiseOrValue<BigNumberish>[]]): string;
|
|
1251
|
+
encodeFunctionData(functionFragment: "setTradersFeeTiersEnrollment", values: [PromiseOrValue<string>[], IFeeTiers.TraderEnrollmentStruct[]]): string;
|
|
1239
1252
|
encodeFunctionData(functionFragment: "updateTraderPoints", values: [
|
|
1240
1253
|
PromiseOrValue<string>,
|
|
1241
1254
|
PromiseOrValue<BigNumberish>,
|
|
@@ -1574,6 +1587,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1574
1587
|
encodeFunctionData(functionFragment: "initializeOtc", values: [IOtc.OtcConfigStruct]): string;
|
|
1575
1588
|
encodeFunctionData(functionFragment: "sellGnsForCollateral", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
|
|
1576
1589
|
encodeFunctionData(functionFragment: "updateOtcConfig", values: [IOtc.OtcConfigStruct]): string;
|
|
1590
|
+
encodeFunctionData(functionFragment: "multicall", values: [PromiseOrValue<BytesLike>[]]): string;
|
|
1577
1591
|
decodeFunctionResult(functionFragment: "diamondCut", data: BytesLike): Result;
|
|
1578
1592
|
decodeFunctionResult(functionFragment: "facetAddress", data: BytesLike): Result;
|
|
1579
1593
|
decodeFunctionResult(functionFragment: "facetAddresses", data: BytesLike): Result;
|
|
@@ -1645,9 +1659,11 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1645
1659
|
decodeFunctionResult(functionFragment: "getFeeTiersTraderDailyInfo", data: BytesLike): Result;
|
|
1646
1660
|
decodeFunctionResult(functionFragment: "getFeeTiersTraderInfo", data: BytesLike): Result;
|
|
1647
1661
|
decodeFunctionResult(functionFragment: "getGroupVolumeMultiplier", data: BytesLike): Result;
|
|
1662
|
+
decodeFunctionResult(functionFragment: "getTraderFeeTiersEnrollment", data: BytesLike): Result;
|
|
1648
1663
|
decodeFunctionResult(functionFragment: "initializeFeeTiers", data: BytesLike): Result;
|
|
1649
1664
|
decodeFunctionResult(functionFragment: "setFeeTiers", data: BytesLike): Result;
|
|
1650
1665
|
decodeFunctionResult(functionFragment: "setGroupVolumeMultipliers", data: BytesLike): Result;
|
|
1666
|
+
decodeFunctionResult(functionFragment: "setTradersFeeTiersEnrollment", data: BytesLike): Result;
|
|
1651
1667
|
decodeFunctionResult(functionFragment: "updateTraderPoints", data: BytesLike): Result;
|
|
1652
1668
|
decodeFunctionResult(functionFragment: "addPriceImpactOpenInterest", data: BytesLike): Result;
|
|
1653
1669
|
decodeFunctionResult(functionFragment: "getOiWindow", data: BytesLike): Result;
|
|
@@ -1817,6 +1833,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1817
1833
|
decodeFunctionResult(functionFragment: "initializeOtc", data: BytesLike): Result;
|
|
1818
1834
|
decodeFunctionResult(functionFragment: "sellGnsForCollateral", data: BytesLike): Result;
|
|
1819
1835
|
decodeFunctionResult(functionFragment: "updateOtcConfig", data: BytesLike): Result;
|
|
1836
|
+
decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result;
|
|
1820
1837
|
events: {
|
|
1821
1838
|
"AccessControlUpdated(address,uint8,bool)": EventFragment;
|
|
1822
1839
|
"AddressesUpdated(tuple)": EventFragment;
|
|
@@ -1846,6 +1863,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1846
1863
|
"FeeTiersUpdated(uint256[],tuple[])": EventFragment;
|
|
1847
1864
|
"GroupVolumeMultipliersUpdated(uint256[],uint256[])": EventFragment;
|
|
1848
1865
|
"TraderDailyPointsIncreased(address,uint32,uint224)": EventFragment;
|
|
1866
|
+
"TraderEnrollmentUpdated(address,tuple)": EventFragment;
|
|
1849
1867
|
"TraderFeeMultiplierCached(address,uint32,uint32)": EventFragment;
|
|
1850
1868
|
"TraderInfoFirstUpdate(address,uint32)": EventFragment;
|
|
1851
1869
|
"TraderInfoUpdated(address,tuple)": EventFragment;
|
|
@@ -1961,6 +1979,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1961
1979
|
getEvent(nameOrSignatureOrTopic: "FeeTiersUpdated"): EventFragment;
|
|
1962
1980
|
getEvent(nameOrSignatureOrTopic: "GroupVolumeMultipliersUpdated"): EventFragment;
|
|
1963
1981
|
getEvent(nameOrSignatureOrTopic: "TraderDailyPointsIncreased"): EventFragment;
|
|
1982
|
+
getEvent(nameOrSignatureOrTopic: "TraderEnrollmentUpdated"): EventFragment;
|
|
1964
1983
|
getEvent(nameOrSignatureOrTopic: "TraderFeeMultiplierCached"): EventFragment;
|
|
1965
1984
|
getEvent(nameOrSignatureOrTopic: "TraderInfoFirstUpdate"): EventFragment;
|
|
1966
1985
|
getEvent(nameOrSignatureOrTopic: "TraderInfoUpdated"): EventFragment;
|
|
@@ -2290,6 +2309,15 @@ export type TraderDailyPointsIncreasedEvent = TypedEvent<[
|
|
|
2290
2309
|
BigNumber
|
|
2291
2310
|
], TraderDailyPointsIncreasedEventObject>;
|
|
2292
2311
|
export type TraderDailyPointsIncreasedEventFilter = TypedEventFilter<TraderDailyPointsIncreasedEvent>;
|
|
2312
|
+
export interface TraderEnrollmentUpdatedEventObject {
|
|
2313
|
+
trader: string;
|
|
2314
|
+
enrollment: IFeeTiers.TraderEnrollmentStructOutput;
|
|
2315
|
+
}
|
|
2316
|
+
export type TraderEnrollmentUpdatedEvent = TypedEvent<[
|
|
2317
|
+
string,
|
|
2318
|
+
IFeeTiers.TraderEnrollmentStructOutput
|
|
2319
|
+
], TraderEnrollmentUpdatedEventObject>;
|
|
2320
|
+
export type TraderEnrollmentUpdatedEventFilter = TypedEventFilter<TraderEnrollmentUpdatedEvent>;
|
|
2293
2321
|
export interface TraderFeeMultiplierCachedEventObject {
|
|
2294
2322
|
trader: string;
|
|
2295
2323
|
day: number;
|
|
@@ -3470,6 +3498,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
3470
3498
|
getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IFeeTiers.TraderDailyInfoStructOutput]>;
|
|
3471
3499
|
getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[IFeeTiers.TraderInfoStructOutput]>;
|
|
3472
3500
|
getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
3501
|
+
getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[IFeeTiers.TraderEnrollmentStructOutput]>;
|
|
3473
3502
|
initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
|
|
3474
3503
|
from?: PromiseOrValue<string>;
|
|
3475
3504
|
}): Promise<ContractTransaction>;
|
|
@@ -3479,6 +3508,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
3479
3508
|
setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
|
|
3480
3509
|
from?: PromiseOrValue<string>;
|
|
3481
3510
|
}): Promise<ContractTransaction>;
|
|
3511
|
+
setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
|
|
3512
|
+
from?: PromiseOrValue<string>;
|
|
3513
|
+
}): Promise<ContractTransaction>;
|
|
3482
3514
|
updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
|
|
3483
3515
|
from?: PromiseOrValue<string>;
|
|
3484
3516
|
}): Promise<ContractTransaction>;
|
|
@@ -3875,6 +3907,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
3875
3907
|
updateOtcConfig(_config: IOtc.OtcConfigStruct, overrides?: Overrides & {
|
|
3876
3908
|
from?: PromiseOrValue<string>;
|
|
3877
3909
|
}): Promise<ContractTransaction>;
|
|
3910
|
+
multicall(data: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
|
|
3911
|
+
from?: PromiseOrValue<string>;
|
|
3912
|
+
}): Promise<ContractTransaction>;
|
|
3878
3913
|
};
|
|
3879
3914
|
diamondCut(_faceCut: IDiamondStorage.FacetCutStruct[], _init: PromiseOrValue<string>, _calldata: PromiseOrValue<BytesLike>, overrides?: Overrides & {
|
|
3880
3915
|
from?: PromiseOrValue<string>;
|
|
@@ -4001,6 +4036,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
4001
4036
|
getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.TraderDailyInfoStructOutput>;
|
|
4002
4037
|
getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderInfoStructOutput>;
|
|
4003
4038
|
getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
4039
|
+
getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderEnrollmentStructOutput>;
|
|
4004
4040
|
initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
|
|
4005
4041
|
from?: PromiseOrValue<string>;
|
|
4006
4042
|
}): Promise<ContractTransaction>;
|
|
@@ -4010,6 +4046,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
4010
4046
|
setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
|
|
4011
4047
|
from?: PromiseOrValue<string>;
|
|
4012
4048
|
}): Promise<ContractTransaction>;
|
|
4049
|
+
setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
|
|
4050
|
+
from?: PromiseOrValue<string>;
|
|
4051
|
+
}): Promise<ContractTransaction>;
|
|
4013
4052
|
updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
|
|
4014
4053
|
from?: PromiseOrValue<string>;
|
|
4015
4054
|
}): Promise<ContractTransaction>;
|
|
@@ -4400,6 +4439,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
4400
4439
|
updateOtcConfig(_config: IOtc.OtcConfigStruct, overrides?: Overrides & {
|
|
4401
4440
|
from?: PromiseOrValue<string>;
|
|
4402
4441
|
}): Promise<ContractTransaction>;
|
|
4442
|
+
multicall(data: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
|
|
4443
|
+
from?: PromiseOrValue<string>;
|
|
4444
|
+
}): Promise<ContractTransaction>;
|
|
4403
4445
|
callStatic: {
|
|
4404
4446
|
diamondCut(_faceCut: IDiamondStorage.FacetCutStruct[], _init: PromiseOrValue<string>, _calldata: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
|
|
4405
4447
|
facetAddress(_functionSelector: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
|
|
@@ -4476,9 +4518,11 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
4476
4518
|
getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IFeeTiers.TraderDailyInfoStructOutput>;
|
|
4477
4519
|
getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderInfoStructOutput>;
|
|
4478
4520
|
getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
4521
|
+
getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IFeeTiers.TraderEnrollmentStructOutput>;
|
|
4479
4522
|
initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: CallOverrides): Promise<void>;
|
|
4480
4523
|
setFeeTiers(_feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: CallOverrides): Promise<void>;
|
|
4481
4524
|
setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<void>;
|
|
4525
|
+
setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: CallOverrides): Promise<void>;
|
|
4482
4526
|
updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
|
|
4483
4527
|
addPriceImpactOpenInterest(_trader: PromiseOrValue<string>, _index: PromiseOrValue<BigNumberish>, _oiDeltaCollateral: PromiseOrValue<BigNumberish>, _open: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
|
|
4484
4528
|
getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IPriceImpact.PairOiStructOutput>;
|
|
@@ -4705,6 +4749,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
4705
4749
|
initializeOtc(_config: IOtc.OtcConfigStruct, overrides?: CallOverrides): Promise<void>;
|
|
4706
4750
|
sellGnsForCollateral(_collateralIndex: PromiseOrValue<BigNumberish>, _collateralAmount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
|
|
4707
4751
|
updateOtcConfig(_config: IOtc.OtcConfigStruct, overrides?: CallOverrides): Promise<void>;
|
|
4752
|
+
multicall(data: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<string[]>;
|
|
4708
4753
|
};
|
|
4709
4754
|
filters: {
|
|
4710
4755
|
"AccessControlUpdated(address,uint8,bool)"(target?: null, role?: null, access?: null): AccessControlUpdatedEventFilter;
|
|
@@ -4763,6 +4808,8 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
4763
4808
|
GroupVolumeMultipliersUpdated(groupIndices?: null, groupVolumeMultipliers?: null): GroupVolumeMultipliersUpdatedEventFilter;
|
|
4764
4809
|
"TraderDailyPointsIncreased(address,uint32,uint224)"(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, points?: null): TraderDailyPointsIncreasedEventFilter;
|
|
4765
4810
|
TraderDailyPointsIncreased(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, points?: null): TraderDailyPointsIncreasedEventFilter;
|
|
4811
|
+
"TraderEnrollmentUpdated(address,tuple)"(trader?: PromiseOrValue<string> | null, enrollment?: null): TraderEnrollmentUpdatedEventFilter;
|
|
4812
|
+
TraderEnrollmentUpdated(trader?: PromiseOrValue<string> | null, enrollment?: null): TraderEnrollmentUpdatedEventFilter;
|
|
4766
4813
|
"TraderFeeMultiplierCached(address,uint32,uint32)"(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, feeMultiplier?: null): TraderFeeMultiplierCachedEventFilter;
|
|
4767
4814
|
TraderFeeMultiplierCached(trader?: PromiseOrValue<string> | null, day?: PromiseOrValue<BigNumberish> | null, feeMultiplier?: null): TraderFeeMultiplierCachedEventFilter;
|
|
4768
4815
|
"TraderInfoFirstUpdate(address,uint32)"(trader?: PromiseOrValue<string> | null, day?: null): TraderInfoFirstUpdateEventFilter;
|
|
@@ -5058,6 +5105,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5058
5105
|
getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
5059
5106
|
getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
5060
5107
|
getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
5108
|
+
getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
5061
5109
|
initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
|
|
5062
5110
|
from?: PromiseOrValue<string>;
|
|
5063
5111
|
}): Promise<BigNumber>;
|
|
@@ -5067,6 +5115,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5067
5115
|
setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
|
|
5068
5116
|
from?: PromiseOrValue<string>;
|
|
5069
5117
|
}): Promise<BigNumber>;
|
|
5118
|
+
setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
|
|
5119
|
+
from?: PromiseOrValue<string>;
|
|
5120
|
+
}): Promise<BigNumber>;
|
|
5070
5121
|
updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
|
|
5071
5122
|
from?: PromiseOrValue<string>;
|
|
5072
5123
|
}): Promise<BigNumber>;
|
|
@@ -5400,6 +5451,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5400
5451
|
updateOtcConfig(_config: IOtc.OtcConfigStruct, overrides?: Overrides & {
|
|
5401
5452
|
from?: PromiseOrValue<string>;
|
|
5402
5453
|
}): Promise<BigNumber>;
|
|
5454
|
+
multicall(data: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
|
|
5455
|
+
from?: PromiseOrValue<string>;
|
|
5456
|
+
}): Promise<BigNumber>;
|
|
5403
5457
|
};
|
|
5404
5458
|
populateTransaction: {
|
|
5405
5459
|
diamondCut(_faceCut: IDiamondStorage.FacetCutStruct[], _init: PromiseOrValue<string>, _calldata: PromiseOrValue<BytesLike>, overrides?: Overrides & {
|
|
@@ -5523,6 +5577,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5523
5577
|
getFeeTiersTraderDailyInfo(_trader: PromiseOrValue<string>, _day: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
5524
5578
|
getFeeTiersTraderInfo(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
5525
5579
|
getGroupVolumeMultiplier(_groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
5580
|
+
getTraderFeeTiersEnrollment(_trader: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
5526
5581
|
initializeFeeTiers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], _feeTiersIndices: PromiseOrValue<BigNumberish>[], _feeTiers: IFeeTiers.FeeTierStruct[], overrides?: Overrides & {
|
|
5527
5582
|
from?: PromiseOrValue<string>;
|
|
5528
5583
|
}): Promise<PopulatedTransaction>;
|
|
@@ -5532,6 +5587,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5532
5587
|
setGroupVolumeMultipliers(_groupIndices: PromiseOrValue<BigNumberish>[], _groupVolumeMultipliers: PromiseOrValue<BigNumberish>[], overrides?: Overrides & {
|
|
5533
5588
|
from?: PromiseOrValue<string>;
|
|
5534
5589
|
}): Promise<PopulatedTransaction>;
|
|
5590
|
+
setTradersFeeTiersEnrollment(_traders: PromiseOrValue<string>[], _values: IFeeTiers.TraderEnrollmentStruct[], overrides?: Overrides & {
|
|
5591
|
+
from?: PromiseOrValue<string>;
|
|
5592
|
+
}): Promise<PopulatedTransaction>;
|
|
5535
5593
|
updateTraderPoints(_trader: PromiseOrValue<string>, _volumeUsd: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
|
|
5536
5594
|
from?: PromiseOrValue<string>;
|
|
5537
5595
|
}): Promise<PopulatedTransaction>;
|
|
@@ -5865,5 +5923,8 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5865
5923
|
updateOtcConfig(_config: IOtc.OtcConfigStruct, overrides?: Overrides & {
|
|
5866
5924
|
from?: PromiseOrValue<string>;
|
|
5867
5925
|
}): Promise<PopulatedTransaction>;
|
|
5926
|
+
multicall(data: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
|
|
5927
|
+
from?: PromiseOrValue<string>;
|
|
5928
|
+
}): Promise<PopulatedTransaction>;
|
|
5868
5929
|
};
|
|
5869
5930
|
}
|
|
@@ -2706,6 +2706,38 @@ const _abi = [
|
|
|
2706
2706
|
type: "event",
|
|
2707
2707
|
signature: "0x4f6f49815b9e6682a4f6bc21ba0b5261e803cc5d56c97477a5dc75925fd74e68",
|
|
2708
2708
|
},
|
|
2709
|
+
{
|
|
2710
|
+
anonymous: false,
|
|
2711
|
+
inputs: [
|
|
2712
|
+
{
|
|
2713
|
+
indexed: true,
|
|
2714
|
+
internalType: "address",
|
|
2715
|
+
name: "trader",
|
|
2716
|
+
type: "address",
|
|
2717
|
+
},
|
|
2718
|
+
{
|
|
2719
|
+
components: [
|
|
2720
|
+
{
|
|
2721
|
+
internalType: "enum IFeeTiers.TraderEnrollmentStatus",
|
|
2722
|
+
name: "status",
|
|
2723
|
+
type: "uint8",
|
|
2724
|
+
},
|
|
2725
|
+
{
|
|
2726
|
+
internalType: "uint248",
|
|
2727
|
+
name: "__placeholder",
|
|
2728
|
+
type: "uint248",
|
|
2729
|
+
},
|
|
2730
|
+
],
|
|
2731
|
+
indexed: false,
|
|
2732
|
+
internalType: "struct IFeeTiers.TraderEnrollment",
|
|
2733
|
+
name: "enrollment",
|
|
2734
|
+
type: "tuple",
|
|
2735
|
+
},
|
|
2736
|
+
],
|
|
2737
|
+
name: "TraderEnrollmentUpdated",
|
|
2738
|
+
type: "event",
|
|
2739
|
+
signature: "0x2d222f8a9169a5d38b64fa1a56389af27712a1d7f1743022cdd8b466c27141eb",
|
|
2740
|
+
},
|
|
2709
2741
|
{
|
|
2710
2742
|
anonymous: false,
|
|
2711
2743
|
inputs: [
|
|
@@ -2976,6 +3008,38 @@ const _abi = [
|
|
|
2976
3008
|
type: "function",
|
|
2977
3009
|
signature: "0x31ca4887",
|
|
2978
3010
|
},
|
|
3011
|
+
{
|
|
3012
|
+
inputs: [
|
|
3013
|
+
{
|
|
3014
|
+
internalType: "address",
|
|
3015
|
+
name: "_trader",
|
|
3016
|
+
type: "address",
|
|
3017
|
+
},
|
|
3018
|
+
],
|
|
3019
|
+
name: "getTraderFeeTiersEnrollment",
|
|
3020
|
+
outputs: [
|
|
3021
|
+
{
|
|
3022
|
+
components: [
|
|
3023
|
+
{
|
|
3024
|
+
internalType: "enum IFeeTiers.TraderEnrollmentStatus",
|
|
3025
|
+
name: "status",
|
|
3026
|
+
type: "uint8",
|
|
3027
|
+
},
|
|
3028
|
+
{
|
|
3029
|
+
internalType: "uint248",
|
|
3030
|
+
name: "__placeholder",
|
|
3031
|
+
type: "uint248",
|
|
3032
|
+
},
|
|
3033
|
+
],
|
|
3034
|
+
internalType: "struct IFeeTiers.TraderEnrollment",
|
|
3035
|
+
name: "",
|
|
3036
|
+
type: "tuple",
|
|
3037
|
+
},
|
|
3038
|
+
],
|
|
3039
|
+
stateMutability: "view",
|
|
3040
|
+
type: "function",
|
|
3041
|
+
signature: "0x508cbfbe",
|
|
3042
|
+
},
|
|
2979
3043
|
{
|
|
2980
3044
|
inputs: [
|
|
2981
3045
|
{
|
|
@@ -3067,6 +3131,37 @@ const _abi = [
|
|
|
3067
3131
|
type: "function",
|
|
3068
3132
|
signature: "0x944f577a",
|
|
3069
3133
|
},
|
|
3134
|
+
{
|
|
3135
|
+
inputs: [
|
|
3136
|
+
{
|
|
3137
|
+
internalType: "address[]",
|
|
3138
|
+
name: "_traders",
|
|
3139
|
+
type: "address[]",
|
|
3140
|
+
},
|
|
3141
|
+
{
|
|
3142
|
+
components: [
|
|
3143
|
+
{
|
|
3144
|
+
internalType: "enum IFeeTiers.TraderEnrollmentStatus",
|
|
3145
|
+
name: "status",
|
|
3146
|
+
type: "uint8",
|
|
3147
|
+
},
|
|
3148
|
+
{
|
|
3149
|
+
internalType: "uint248",
|
|
3150
|
+
name: "__placeholder",
|
|
3151
|
+
type: "uint248",
|
|
3152
|
+
},
|
|
3153
|
+
],
|
|
3154
|
+
internalType: "struct IFeeTiers.TraderEnrollment[]",
|
|
3155
|
+
name: "_values",
|
|
3156
|
+
type: "tuple[]",
|
|
3157
|
+
},
|
|
3158
|
+
],
|
|
3159
|
+
name: "setTradersFeeTiersEnrollment",
|
|
3160
|
+
outputs: [],
|
|
3161
|
+
stateMutability: "nonpayable",
|
|
3162
|
+
type: "function",
|
|
3163
|
+
signature: "0x88f16bd1",
|
|
3164
|
+
},
|
|
3070
3165
|
{
|
|
3071
3166
|
inputs: [
|
|
3072
3167
|
{
|
|
@@ -13104,6 +13199,26 @@ const _abi = [
|
|
|
13104
13199
|
type: "function",
|
|
13105
13200
|
signature: "0xc4999547",
|
|
13106
13201
|
},
|
|
13202
|
+
{
|
|
13203
|
+
inputs: [
|
|
13204
|
+
{
|
|
13205
|
+
internalType: "bytes[]",
|
|
13206
|
+
name: "data",
|
|
13207
|
+
type: "bytes[]",
|
|
13208
|
+
},
|
|
13209
|
+
],
|
|
13210
|
+
name: "multicall",
|
|
13211
|
+
outputs: [
|
|
13212
|
+
{
|
|
13213
|
+
internalType: "bytes[]",
|
|
13214
|
+
name: "results",
|
|
13215
|
+
type: "bytes[]",
|
|
13216
|
+
},
|
|
13217
|
+
],
|
|
13218
|
+
stateMutability: "nonpayable",
|
|
13219
|
+
type: "function",
|
|
13220
|
+
signature: "0xac9650d8",
|
|
13221
|
+
},
|
|
13107
13222
|
];
|
|
13108
13223
|
class GNSMultiCollatDiamond__factory {
|
|
13109
13224
|
static createInterface() {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.computeFeeMultiplier = exports.getFeeMultiplier = exports.getFeeTiersCount = exports.getCurrentDay = exports.MAX_FEE_TIERS = exports.FEE_MULTIPLIER_SCALE = exports.TRAILING_PERIOD_DAYS = void 0;
|
|
4
|
+
const types_1 = require("./types");
|
|
4
5
|
exports.TRAILING_PERIOD_DAYS = 30;
|
|
5
6
|
exports.FEE_MULTIPLIER_SCALE = 1;
|
|
6
7
|
exports.MAX_FEE_TIERS = 8;
|
|
@@ -30,7 +31,7 @@ const getFeeMultiplier = (trailingPoints, tiers) => {
|
|
|
30
31
|
exports.getFeeMultiplier = getFeeMultiplier;
|
|
31
32
|
const computeFeeMultiplier = (feeTiers, traderFeeTiers) => {
|
|
32
33
|
const { currentDay, tiers } = feeTiers;
|
|
33
|
-
const { traderInfo, expiredPoints, lastDayUpdatedPoints } = traderFeeTiers;
|
|
34
|
+
const { traderInfo, expiredPoints, lastDayUpdatedPoints, traderEnrollment } = traderFeeTiers;
|
|
34
35
|
const { lastDayUpdated, trailingPoints } = traderInfo;
|
|
35
36
|
let curTrailingPoints = trailingPoints;
|
|
36
37
|
if (currentDay > lastDayUpdated) {
|
|
@@ -42,7 +43,9 @@ const computeFeeMultiplier = (feeTiers, traderFeeTiers) => {
|
|
|
42
43
|
curTrailingPoints -= expiredTrailingPoints;
|
|
43
44
|
}
|
|
44
45
|
}
|
|
45
|
-
const feeMultiplier =
|
|
46
|
+
const feeMultiplier = traderEnrollment.status === types_1.TraderEnrollmentStatus.EXCLUDED
|
|
47
|
+
? exports.FEE_MULTIPLIER_SCALE
|
|
48
|
+
: (0, exports.getFeeMultiplier)(curTrailingPoints, tiers);
|
|
46
49
|
return {
|
|
47
50
|
feeMultiplier,
|
|
48
51
|
trailingPoints: curTrailingPoints,
|
|
@@ -1,2 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TraderEnrollmentStatus = void 0;
|
|
4
|
+
var TraderEnrollmentStatus;
|
|
5
|
+
(function (TraderEnrollmentStatus) {
|
|
6
|
+
TraderEnrollmentStatus[TraderEnrollmentStatus["ENROLLED"] = 0] = "ENROLLED";
|
|
7
|
+
TraderEnrollmentStatus[TraderEnrollmentStatus["EXCLUDED"] = 1] = "EXCLUDED";
|
|
8
|
+
})(TraderEnrollmentStatus = exports.TraderEnrollmentStatus || (exports.TraderEnrollmentStatus = {}));
|
package/lib/trade/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ITradingStorage, IBorrowingFees, IPairsStorage } from "../contracts/types/generated/GNSMultiCollatDiamond";
|
|
2
2
|
import { BorrowingFee } from "./fees/borrowing";
|
|
3
|
-
import { FeeTier, TraderInfo } from "./fees/tiers/types";
|
|
3
|
+
import { FeeTier, TraderEnrollment, TraderInfo } from "./fees/tiers/types";
|
|
4
4
|
export type PairIndexes = {
|
|
5
5
|
[key: string]: PairIndex;
|
|
6
6
|
};
|
|
@@ -161,6 +161,7 @@ export type FeeTiers = {
|
|
|
161
161
|
currentDay: number;
|
|
162
162
|
};
|
|
163
163
|
export type TraderFeeTiers = {
|
|
164
|
+
traderEnrollment: TraderEnrollment;
|
|
164
165
|
traderInfo: TraderInfo;
|
|
165
166
|
inboundPoints: number;
|
|
166
167
|
outboundPoints: number;
|