@gainsnetwork/sdk 0.0.51-multi-collat-rc4 → 0.0.52

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.
Files changed (122) hide show
  1. package/README.md +11 -11
  2. package/lib/constants.d.ts +221 -220
  3. package/lib/constants.js +238 -237
  4. package/lib/contracts/addresses.d.ts +2 -2
  5. package/lib/contracts/addresses.js +15 -19
  6. package/lib/contracts/addresses.json +35 -70
  7. package/lib/contracts/index.d.ts +6 -6
  8. package/lib/contracts/index.js +35 -34
  9. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +1911 -1911
  10. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +2 -2
  11. package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +1341 -1067
  12. package/lib/contracts/types/generated/GNSBorrowingFees.js +2 -2
  13. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.d.ts +1058 -0
  14. package/lib/contracts/types/generated/{GNSTradingCallbacks.js → GNSBorrowingFeesV6_4.js} +2 -2
  15. package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +533 -533
  16. package/lib/contracts/types/generated/GNSNftRewardsV6.js +2 -2
  17. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +613 -613
  18. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +2 -2
  19. package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +911 -0
  20. package/lib/contracts/types/generated/{GNSMultiCollatDiamond.js → GNSPairInfosV6_1.js} +2 -2
  21. package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +660 -0
  22. package/lib/contracts/types/generated/{GNSTradingStorage.js → GNSPairsStorageV6.js} +2 -2
  23. package/lib/contracts/types/generated/{GNSTradingCallbacks.d.ts → GNSTradingCallbacksV6_4.d.ts} +821 -875
  24. package/lib/contracts/types/generated/{GNSTrading.js → GNSTradingCallbacksV6_4.js} +2 -2
  25. package/lib/contracts/types/generated/GTokenOpenPnlFeed.d.ts +557 -557
  26. package/lib/contracts/types/generated/GTokenOpenPnlFeed.js +2 -2
  27. package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +1838 -1838
  28. package/lib/contracts/types/generated/GTokenV6_3_2.js +2 -2
  29. package/lib/contracts/types/generated/common.d.ts +22 -22
  30. package/lib/contracts/types/generated/common.js +2 -2
  31. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +83 -83
  32. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +2691 -2691
  33. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.d.ts +113 -0
  34. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.js +1742 -0
  35. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +128 -124
  36. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +2206 -1789
  37. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +100 -100
  38. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +1116 -1116
  39. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +100 -100
  40. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +1003 -1003
  41. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +98 -0
  42. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +1485 -0
  43. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +117 -0
  44. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +1265 -0
  45. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.d.ts +82 -0
  46. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.js +1326 -0
  47. package/lib/contracts/types/generated/factories/GTokenOpenPnlFeed__factory.d.ts +59 -59
  48. package/lib/contracts/types/generated/factories/GTokenOpenPnlFeed__factory.js +765 -765
  49. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +110 -110
  50. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +2682 -2682
  51. package/lib/contracts/types/generated/factories/index.d.ts +9 -10
  52. package/lib/contracts/types/generated/factories/index.js +24 -26
  53. package/lib/contracts/types/generated/index.d.ts +19 -21
  54. package/lib/contracts/types/generated/index.js +45 -47
  55. package/lib/contracts/types/index.d.ts +23 -27
  56. package/lib/contracts/types/index.js +2 -10
  57. package/lib/contracts/utils/borrowingFees.d.ts +8 -8
  58. package/lib/contracts/utils/borrowingFees.js +28 -28
  59. package/lib/contracts/utils/index.d.ts +4 -4
  60. package/lib/contracts/utils/index.js +20 -20
  61. package/lib/contracts/utils/openLimitOrders.d.ts +8 -8
  62. package/lib/contracts/utils/openLimitOrders.js +88 -88
  63. package/lib/contracts/utils/openTrades.d.ts +9 -9
  64. package/lib/contracts/utils/openTrades.js +172 -186
  65. package/lib/contracts/utils/pairs.d.ts +7 -6
  66. package/lib/contracts/utils/pairs.js +115 -94
  67. package/lib/index.d.ts +7 -7
  68. package/lib/index.js +24 -24
  69. package/lib/markets/commodities.d.ts +1 -1
  70. package/lib/markets/commodities.js +31 -31
  71. package/lib/markets/crypto.d.ts +1 -1
  72. package/lib/markets/crypto.js +6 -6
  73. package/lib/markets/forex.d.ts +2 -2
  74. package/lib/markets/forex.js +38 -38
  75. package/lib/markets/index.d.ts +5 -5
  76. package/lib/markets/index.js +21 -21
  77. package/lib/markets/indices.d.ts +1 -1
  78. package/lib/markets/indices.js +6 -6
  79. package/lib/markets/stocks.d.ts +3 -3
  80. package/lib/markets/stocks.js +54 -54
  81. package/lib/trade/fees/borrowing/converter.d.ts +13 -13
  82. package/lib/trade/fees/borrowing/converter.js +41 -41
  83. package/lib/trade/fees/borrowing/index.d.ts +55 -55
  84. package/lib/trade/fees/borrowing/index.js +171 -171
  85. package/lib/trade/fees/borrowing/types.d.ts +36 -36
  86. package/lib/trade/fees/borrowing/types.js +2 -2
  87. package/lib/trade/fees/index.d.ts +16 -3
  88. package/lib/trade/fees/index.js +60 -29
  89. package/lib/trade/fees.d.ts +15 -0
  90. package/lib/trade/fees.js +45 -0
  91. package/lib/trade/index.d.ts +8 -8
  92. package/lib/trade/index.js +24 -24
  93. package/lib/trade/liquidation.d.ts +7 -3
  94. package/lib/trade/liquidation.js +18 -16
  95. package/lib/trade/oiWindows.d.ts +3 -3
  96. package/lib/trade/oiWindows.js +19 -20
  97. package/lib/trade/openLimitOrder.d.ts +2 -2
  98. package/lib/trade/openLimitOrder.js +24 -23
  99. package/lib/trade/pnl.d.ts +9 -7
  100. package/lib/trade/pnl.js +44 -33
  101. package/lib/trade/spread.d.ts +3 -2
  102. package/lib/trade/spread.js +32 -22
  103. package/lib/trade/types.d.ts +185 -181
  104. package/lib/trade/types.js +14 -14
  105. package/lib/utils/index.d.ts +1 -1
  106. package/lib/utils/index.js +17 -17
  107. package/lib/utils/packing.d.ts +2 -2
  108. package/lib/utils/packing.js +39 -39
  109. package/lib/vault/index.d.ts +7 -8
  110. package/lib/vault/index.js +11 -10
  111. package/package.json +104 -104
  112. package/lib/contracts/types/generated/GNSMultiCollatDiamond.d.ts +0 -1740
  113. package/lib/contracts/types/generated/GNSTrading.d.ts +0 -758
  114. package/lib/contracts/types/generated/GNSTradingStorage.d.ts +0 -1387
  115. package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.d.ts +0 -144
  116. package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.js +0 -3094
  117. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +0 -113
  118. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +0 -1428
  119. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +0 -96
  120. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +0 -2241
  121. package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +0 -95
  122. package/lib/contracts/types/generated/factories/GNSTrading__factory.js +0 -1071
@@ -1,1067 +1,1341 @@
1
- import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
2
- import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
3
- import type { Listener, Provider } from "@ethersproject/providers";
4
- import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
5
- export declare namespace IGNSBorrowingFees {
6
- type PairGroupStruct = {
7
- groupIndex: PromiseOrValue<BigNumberish>;
8
- block: PromiseOrValue<BigNumberish>;
9
- initialAccFeeLong: PromiseOrValue<BigNumberish>;
10
- initialAccFeeShort: PromiseOrValue<BigNumberish>;
11
- prevGroupAccFeeLong: PromiseOrValue<BigNumberish>;
12
- prevGroupAccFeeShort: PromiseOrValue<BigNumberish>;
13
- pairAccFeeLong: PromiseOrValue<BigNumberish>;
14
- pairAccFeeShort: PromiseOrValue<BigNumberish>;
15
- _placeholder: PromiseOrValue<BigNumberish>;
16
- };
17
- type PairGroupStructOutput = [
18
- number,
19
- number,
20
- BigNumber,
21
- BigNumber,
22
- BigNumber,
23
- BigNumber,
24
- BigNumber,
25
- BigNumber,
26
- BigNumber
27
- ] & {
28
- groupIndex: number;
29
- block: number;
30
- initialAccFeeLong: BigNumber;
31
- initialAccFeeShort: BigNumber;
32
- prevGroupAccFeeLong: BigNumber;
33
- prevGroupAccFeeShort: BigNumber;
34
- pairAccFeeLong: BigNumber;
35
- pairAccFeeShort: BigNumber;
36
- _placeholder: BigNumber;
37
- };
38
- type PairStruct = {
39
- groups: IGNSBorrowingFees.PairGroupStruct[];
40
- feePerBlock: PromiseOrValue<BigNumberish>;
41
- accFeeLong: PromiseOrValue<BigNumberish>;
42
- accFeeShort: PromiseOrValue<BigNumberish>;
43
- accLastUpdatedBlock: PromiseOrValue<BigNumberish>;
44
- feeExponent: PromiseOrValue<BigNumberish>;
45
- lastAccBlockWeightedMarketCap: PromiseOrValue<BigNumberish>;
46
- };
47
- type PairStructOutput = [
48
- IGNSBorrowingFees.PairGroupStructOutput[],
49
- number,
50
- BigNumber,
51
- BigNumber,
52
- number,
53
- number,
54
- BigNumber
55
- ] & {
56
- groups: IGNSBorrowingFees.PairGroupStructOutput[];
57
- feePerBlock: number;
58
- accFeeLong: BigNumber;
59
- accFeeShort: BigNumber;
60
- accLastUpdatedBlock: number;
61
- feeExponent: number;
62
- lastAccBlockWeightedMarketCap: BigNumber;
63
- };
64
- type PairOiStruct = {
65
- long: PromiseOrValue<BigNumberish>;
66
- short: PromiseOrValue<BigNumberish>;
67
- max: PromiseOrValue<BigNumberish>;
68
- _placeholder: PromiseOrValue<BigNumberish>;
69
- };
70
- type PairOiStructOutput = [BigNumber, BigNumber, BigNumber, number] & {
71
- long: BigNumber;
72
- short: BigNumber;
73
- max: BigNumber;
74
- _placeholder: number;
75
- };
76
- type GroupStruct = {
77
- oiLong: PromiseOrValue<BigNumberish>;
78
- oiShort: PromiseOrValue<BigNumberish>;
79
- feePerBlock: PromiseOrValue<BigNumberish>;
80
- accFeeLong: PromiseOrValue<BigNumberish>;
81
- accFeeShort: PromiseOrValue<BigNumberish>;
82
- accLastUpdatedBlock: PromiseOrValue<BigNumberish>;
83
- maxOi: PromiseOrValue<BigNumberish>;
84
- lastAccBlockWeightedMarketCap: PromiseOrValue<BigNumberish>;
85
- };
86
- type GroupStructOutput = [
87
- BigNumber,
88
- BigNumber,
89
- number,
90
- BigNumber,
91
- BigNumber,
92
- number,
93
- BigNumber,
94
- BigNumber
95
- ] & {
96
- oiLong: BigNumber;
97
- oiShort: BigNumber;
98
- feePerBlock: number;
99
- accFeeLong: BigNumber;
100
- accFeeShort: BigNumber;
101
- accLastUpdatedBlock: number;
102
- maxOi: BigNumber;
103
- lastAccBlockWeightedMarketCap: BigNumber;
104
- };
105
- type InitialAccFeesStruct = {
106
- accPairFee: PromiseOrValue<BigNumberish>;
107
- accGroupFee: PromiseOrValue<BigNumberish>;
108
- block: PromiseOrValue<BigNumberish>;
109
- _placeholder: PromiseOrValue<BigNumberish>;
110
- };
111
- type InitialAccFeesStructOutput = [
112
- BigNumber,
113
- BigNumber,
114
- number,
115
- BigNumber
116
- ] & {
117
- accPairFee: BigNumber;
118
- accGroupFee: BigNumber;
119
- block: number;
120
- _placeholder: BigNumber;
121
- };
122
- type PendingAccFeesInputStruct = {
123
- accFeeLong: PromiseOrValue<BigNumberish>;
124
- accFeeShort: PromiseOrValue<BigNumberish>;
125
- oiLong: PromiseOrValue<BigNumberish>;
126
- oiShort: PromiseOrValue<BigNumberish>;
127
- feePerBlock: PromiseOrValue<BigNumberish>;
128
- currentBlock: PromiseOrValue<BigNumberish>;
129
- accLastUpdatedBlock: PromiseOrValue<BigNumberish>;
130
- maxOi: PromiseOrValue<BigNumberish>;
131
- feeExponent: PromiseOrValue<BigNumberish>;
132
- collateralPrecision: PromiseOrValue<BigNumberish>;
133
- };
134
- type PendingAccFeesInputStructOutput = [
135
- BigNumber,
136
- BigNumber,
137
- BigNumber,
138
- BigNumber,
139
- number,
140
- BigNumber,
141
- BigNumber,
142
- BigNumber,
143
- number,
144
- BigNumber
145
- ] & {
146
- accFeeLong: BigNumber;
147
- accFeeShort: BigNumber;
148
- oiLong: BigNumber;
149
- oiShort: BigNumber;
150
- feePerBlock: number;
151
- currentBlock: BigNumber;
152
- accLastUpdatedBlock: BigNumber;
153
- maxOi: BigNumber;
154
- feeExponent: number;
155
- collateralPrecision: BigNumber;
156
- };
157
- type BorrowingFeeInputStruct = {
158
- trader: PromiseOrValue<string>;
159
- pairIndex: PromiseOrValue<BigNumberish>;
160
- index: PromiseOrValue<BigNumberish>;
161
- long: PromiseOrValue<boolean>;
162
- collateral: PromiseOrValue<BigNumberish>;
163
- leverage: PromiseOrValue<BigNumberish>;
164
- };
165
- type BorrowingFeeInputStructOutput = [
166
- string,
167
- BigNumber,
168
- BigNumber,
169
- boolean,
170
- BigNumber,
171
- BigNumber
172
- ] & {
173
- trader: string;
174
- pairIndex: BigNumber;
175
- index: BigNumber;
176
- long: boolean;
177
- collateral: BigNumber;
178
- leverage: BigNumber;
179
- };
180
- type LiqPriceInputStruct = {
181
- trader: PromiseOrValue<string>;
182
- pairIndex: PromiseOrValue<BigNumberish>;
183
- index: PromiseOrValue<BigNumberish>;
184
- openPrice: PromiseOrValue<BigNumberish>;
185
- long: PromiseOrValue<boolean>;
186
- collateral: PromiseOrValue<BigNumberish>;
187
- leverage: PromiseOrValue<BigNumberish>;
188
- };
189
- type LiqPriceInputStructOutput = [
190
- string,
191
- BigNumber,
192
- BigNumber,
193
- BigNumber,
194
- boolean,
195
- BigNumber,
196
- BigNumber
197
- ] & {
198
- trader: string;
199
- pairIndex: BigNumber;
200
- index: BigNumber;
201
- openPrice: BigNumber;
202
- long: boolean;
203
- collateral: BigNumber;
204
- leverage: BigNumber;
205
- };
206
- type GroupParamsStruct = {
207
- feePerBlock: PromiseOrValue<BigNumberish>;
208
- maxOi: PromiseOrValue<BigNumberish>;
209
- feeExponent: PromiseOrValue<BigNumberish>;
210
- };
211
- type GroupParamsStructOutput = [number, BigNumber, number] & {
212
- feePerBlock: number;
213
- maxOi: BigNumber;
214
- feeExponent: number;
215
- };
216
- type PairParamsStruct = {
217
- groupIndex: PromiseOrValue<BigNumberish>;
218
- feePerBlock: PromiseOrValue<BigNumberish>;
219
- feeExponent: PromiseOrValue<BigNumberish>;
220
- maxOi: PromiseOrValue<BigNumberish>;
221
- };
222
- type PairParamsStructOutput = [number, number, number, BigNumber] & {
223
- groupIndex: number;
224
- feePerBlock: number;
225
- feeExponent: number;
226
- maxOi: BigNumber;
227
- };
228
- }
229
- export interface GNSBorrowingFeesInterface extends utils.Interface {
230
- functions: {
231
- "collateralConfig()": FunctionFragment;
232
- "getAllPairs()": FunctionFragment;
233
- "getCollateralPairMaxOi(uint256)": FunctionFragment;
234
- "getGroup(uint16)": FunctionFragment;
235
- "getGroupPendingAccFee(uint16,uint256,bool)": FunctionFragment;
236
- "getGroupPendingAccFees(uint16,uint256)": FunctionFragment;
237
- "getGroups(uint16[])": FunctionFragment;
238
- "getPair(uint256)": FunctionFragment;
239
- "getPairGroupAccFeesDeltas(uint256,(uint16,uint48,uint64,uint64,uint64,uint64,uint64,uint64,uint64)[],(uint64,uint64,uint48,uint80),uint256,bool,uint256)": FunctionFragment;
240
- "getPairGroupIndex(uint256)": FunctionFragment;
241
- "getPairMaxOi(uint256)": FunctionFragment;
242
- "getPairOpenInterestDai(uint256)": FunctionFragment;
243
- "getPairPendingAccFee(uint256,uint256,bool)": FunctionFragment;
244
- "getPairPendingAccFees(uint256,uint256)": FunctionFragment;
245
- "getPendingAccFees((uint64,uint64,uint256,uint256,uint32,uint256,uint256,uint72,uint48,uint128))": FunctionFragment;
246
- "getTradeBorrowingFee((address,uint256,uint256,bool,uint256,uint256))": FunctionFragment;
247
- "getTradeLiquidationPrice((address,uint256,uint256,uint256,bool,uint256,uint256))": FunctionFragment;
248
- "groupFeeExponents(uint256)": FunctionFragment;
249
- "groups(uint16)": FunctionFragment;
250
- "handleTradeAction(address,uint256,uint256,uint256,bool,bool)": FunctionFragment;
251
- "initialAccFees(address,uint256,uint256)": FunctionFragment;
252
- "initialize(address)": FunctionFragment;
253
- "initializeV3(address)": FunctionFragment;
254
- "multiCollatDiamond()": FunctionFragment;
255
- "pairInfos()": FunctionFragment;
256
- "pairOis(uint256)": FunctionFragment;
257
- "pairs(uint256)": FunctionFragment;
258
- "setGroupParams(uint16,(uint32,uint72,uint48))": FunctionFragment;
259
- "setGroupParamsArray(uint16[],(uint32,uint72,uint48)[])": FunctionFragment;
260
- "setPairParams(uint256,(uint16,uint32,uint48,uint72))": FunctionFragment;
261
- "setPairParamsArray(uint256[],(uint16,uint32,uint48,uint72)[])": FunctionFragment;
262
- "storageT()": FunctionFragment;
263
- "withinMaxGroupOi(uint256,bool,uint256)": FunctionFragment;
264
- };
265
- getFunction(nameOrSignatureOrTopic: "collateralConfig" | "getAllPairs" | "getCollateralPairMaxOi" | "getGroup" | "getGroupPendingAccFee" | "getGroupPendingAccFees" | "getGroups" | "getPair" | "getPairGroupAccFeesDeltas" | "getPairGroupIndex" | "getPairMaxOi" | "getPairOpenInterestDai" | "getPairPendingAccFee" | "getPairPendingAccFees" | "getPendingAccFees" | "getTradeBorrowingFee" | "getTradeLiquidationPrice" | "groupFeeExponents" | "groups" | "handleTradeAction" | "initialAccFees" | "initialize" | "initializeV3" | "multiCollatDiamond" | "pairInfos" | "pairOis" | "pairs" | "setGroupParams" | "setGroupParamsArray" | "setPairParams" | "setPairParamsArray" | "storageT" | "withinMaxGroupOi"): FunctionFragment;
266
- encodeFunctionData(functionFragment: "collateralConfig", values?: undefined): string;
267
- encodeFunctionData(functionFragment: "getAllPairs", values?: undefined): string;
268
- encodeFunctionData(functionFragment: "getCollateralPairMaxOi", values: [PromiseOrValue<BigNumberish>]): string;
269
- encodeFunctionData(functionFragment: "getGroup", values: [PromiseOrValue<BigNumberish>]): string;
270
- encodeFunctionData(functionFragment: "getGroupPendingAccFee", values: [
271
- PromiseOrValue<BigNumberish>,
272
- PromiseOrValue<BigNumberish>,
273
- PromiseOrValue<boolean>
274
- ]): string;
275
- encodeFunctionData(functionFragment: "getGroupPendingAccFees", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
276
- encodeFunctionData(functionFragment: "getGroups", values: [PromiseOrValue<BigNumberish>[]]): string;
277
- encodeFunctionData(functionFragment: "getPair", values: [PromiseOrValue<BigNumberish>]): string;
278
- encodeFunctionData(functionFragment: "getPairGroupAccFeesDeltas", values: [
279
- PromiseOrValue<BigNumberish>,
280
- IGNSBorrowingFees.PairGroupStruct[],
281
- IGNSBorrowingFees.InitialAccFeesStruct,
282
- PromiseOrValue<BigNumberish>,
283
- PromiseOrValue<boolean>,
284
- PromiseOrValue<BigNumberish>
285
- ]): string;
286
- encodeFunctionData(functionFragment: "getPairGroupIndex", values: [PromiseOrValue<BigNumberish>]): string;
287
- encodeFunctionData(functionFragment: "getPairMaxOi", values: [PromiseOrValue<BigNumberish>]): string;
288
- encodeFunctionData(functionFragment: "getPairOpenInterestDai", values: [PromiseOrValue<BigNumberish>]): string;
289
- encodeFunctionData(functionFragment: "getPairPendingAccFee", values: [
290
- PromiseOrValue<BigNumberish>,
291
- PromiseOrValue<BigNumberish>,
292
- PromiseOrValue<boolean>
293
- ]): string;
294
- encodeFunctionData(functionFragment: "getPairPendingAccFees", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
295
- encodeFunctionData(functionFragment: "getPendingAccFees", values: [IGNSBorrowingFees.PendingAccFeesInputStruct]): string;
296
- encodeFunctionData(functionFragment: "getTradeBorrowingFee", values: [IGNSBorrowingFees.BorrowingFeeInputStruct]): string;
297
- encodeFunctionData(functionFragment: "getTradeLiquidationPrice", values: [IGNSBorrowingFees.LiqPriceInputStruct]): string;
298
- encodeFunctionData(functionFragment: "groupFeeExponents", values: [PromiseOrValue<BigNumberish>]): string;
299
- encodeFunctionData(functionFragment: "groups", values: [PromiseOrValue<BigNumberish>]): string;
300
- encodeFunctionData(functionFragment: "handleTradeAction", values: [
301
- PromiseOrValue<string>,
302
- PromiseOrValue<BigNumberish>,
303
- PromiseOrValue<BigNumberish>,
304
- PromiseOrValue<BigNumberish>,
305
- PromiseOrValue<boolean>,
306
- PromiseOrValue<boolean>
307
- ]): string;
308
- encodeFunctionData(functionFragment: "initialAccFees", values: [
309
- PromiseOrValue<string>,
310
- PromiseOrValue<BigNumberish>,
311
- PromiseOrValue<BigNumberish>
312
- ]): string;
313
- encodeFunctionData(functionFragment: "initialize", values: [PromiseOrValue<string>]): string;
314
- encodeFunctionData(functionFragment: "initializeV3", values: [PromiseOrValue<string>]): string;
315
- encodeFunctionData(functionFragment: "multiCollatDiamond", values?: undefined): string;
316
- encodeFunctionData(functionFragment: "pairInfos", values?: undefined): string;
317
- encodeFunctionData(functionFragment: "pairOis", values: [PromiseOrValue<BigNumberish>]): string;
318
- encodeFunctionData(functionFragment: "pairs", values: [PromiseOrValue<BigNumberish>]): string;
319
- encodeFunctionData(functionFragment: "setGroupParams", values: [PromiseOrValue<BigNumberish>, IGNSBorrowingFees.GroupParamsStruct]): string;
320
- encodeFunctionData(functionFragment: "setGroupParamsArray", values: [
321
- PromiseOrValue<BigNumberish>[],
322
- IGNSBorrowingFees.GroupParamsStruct[]
323
- ]): string;
324
- encodeFunctionData(functionFragment: "setPairParams", values: [PromiseOrValue<BigNumberish>, IGNSBorrowingFees.PairParamsStruct]): string;
325
- encodeFunctionData(functionFragment: "setPairParamsArray", values: [
326
- PromiseOrValue<BigNumberish>[],
327
- IGNSBorrowingFees.PairParamsStruct[]
328
- ]): string;
329
- encodeFunctionData(functionFragment: "storageT", values?: undefined): string;
330
- encodeFunctionData(functionFragment: "withinMaxGroupOi", values: [
331
- PromiseOrValue<BigNumberish>,
332
- PromiseOrValue<boolean>,
333
- PromiseOrValue<BigNumberish>
334
- ]): string;
335
- decodeFunctionResult(functionFragment: "collateralConfig", data: BytesLike): Result;
336
- decodeFunctionResult(functionFragment: "getAllPairs", data: BytesLike): Result;
337
- decodeFunctionResult(functionFragment: "getCollateralPairMaxOi", data: BytesLike): Result;
338
- decodeFunctionResult(functionFragment: "getGroup", data: BytesLike): Result;
339
- decodeFunctionResult(functionFragment: "getGroupPendingAccFee", data: BytesLike): Result;
340
- decodeFunctionResult(functionFragment: "getGroupPendingAccFees", data: BytesLike): Result;
341
- decodeFunctionResult(functionFragment: "getGroups", data: BytesLike): Result;
342
- decodeFunctionResult(functionFragment: "getPair", data: BytesLike): Result;
343
- decodeFunctionResult(functionFragment: "getPairGroupAccFeesDeltas", data: BytesLike): Result;
344
- decodeFunctionResult(functionFragment: "getPairGroupIndex", data: BytesLike): Result;
345
- decodeFunctionResult(functionFragment: "getPairMaxOi", data: BytesLike): Result;
346
- decodeFunctionResult(functionFragment: "getPairOpenInterestDai", data: BytesLike): Result;
347
- decodeFunctionResult(functionFragment: "getPairPendingAccFee", data: BytesLike): Result;
348
- decodeFunctionResult(functionFragment: "getPairPendingAccFees", data: BytesLike): Result;
349
- decodeFunctionResult(functionFragment: "getPendingAccFees", data: BytesLike): Result;
350
- decodeFunctionResult(functionFragment: "getTradeBorrowingFee", data: BytesLike): Result;
351
- decodeFunctionResult(functionFragment: "getTradeLiquidationPrice", data: BytesLike): Result;
352
- decodeFunctionResult(functionFragment: "groupFeeExponents", data: BytesLike): Result;
353
- decodeFunctionResult(functionFragment: "groups", data: BytesLike): Result;
354
- decodeFunctionResult(functionFragment: "handleTradeAction", data: BytesLike): Result;
355
- decodeFunctionResult(functionFragment: "initialAccFees", data: BytesLike): Result;
356
- decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
357
- decodeFunctionResult(functionFragment: "initializeV3", data: BytesLike): Result;
358
- decodeFunctionResult(functionFragment: "multiCollatDiamond", data: BytesLike): Result;
359
- decodeFunctionResult(functionFragment: "pairInfos", data: BytesLike): Result;
360
- decodeFunctionResult(functionFragment: "pairOis", data: BytesLike): Result;
361
- decodeFunctionResult(functionFragment: "pairs", data: BytesLike): Result;
362
- decodeFunctionResult(functionFragment: "setGroupParams", data: BytesLike): Result;
363
- decodeFunctionResult(functionFragment: "setGroupParamsArray", data: BytesLike): Result;
364
- decodeFunctionResult(functionFragment: "setPairParams", data: BytesLike): Result;
365
- decodeFunctionResult(functionFragment: "setPairParamsArray", data: BytesLike): Result;
366
- decodeFunctionResult(functionFragment: "storageT", data: BytesLike): Result;
367
- decodeFunctionResult(functionFragment: "withinMaxGroupOi", data: BytesLike): Result;
368
- events: {
369
- "GroupAccFeesUpdated(uint16,uint256,uint64,uint64)": EventFragment;
370
- "GroupOiUpdated(uint16,bool,bool,uint112,uint112,uint112)": EventFragment;
371
- "GroupUpdated(uint16,uint32,uint72,uint48)": EventFragment;
372
- "Initialized(uint8)": EventFragment;
373
- "PairAccFeesUpdated(uint256,uint256,uint64,uint64)": EventFragment;
374
- "PairGroupUpdated(uint256,uint16,uint16)": EventFragment;
375
- "PairParamsUpdated(uint256,uint16,uint32,uint48,uint72)": EventFragment;
376
- "TradeActionHandled(address,uint256,uint256,bool,bool,uint256)": EventFragment;
377
- "TradeInitialAccFeesStored(address,uint256,uint256,uint64,uint64)": EventFragment;
378
- };
379
- getEvent(nameOrSignatureOrTopic: "GroupAccFeesUpdated"): EventFragment;
380
- getEvent(nameOrSignatureOrTopic: "GroupOiUpdated"): EventFragment;
381
- getEvent(nameOrSignatureOrTopic: "GroupUpdated"): EventFragment;
382
- getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment;
383
- getEvent(nameOrSignatureOrTopic: "PairAccFeesUpdated"): EventFragment;
384
- getEvent(nameOrSignatureOrTopic: "PairGroupUpdated"): EventFragment;
385
- getEvent(nameOrSignatureOrTopic: "PairParamsUpdated"): EventFragment;
386
- getEvent(nameOrSignatureOrTopic: "TradeActionHandled"): EventFragment;
387
- getEvent(nameOrSignatureOrTopic: "TradeInitialAccFeesStored"): EventFragment;
388
- }
389
- export interface GroupAccFeesUpdatedEventObject {
390
- groupIndex: number;
391
- currentBlock: BigNumber;
392
- accFeeLong: BigNumber;
393
- accFeeShort: BigNumber;
394
- }
395
- export type GroupAccFeesUpdatedEvent = TypedEvent<[
396
- number,
397
- BigNumber,
398
- BigNumber,
399
- BigNumber
400
- ], GroupAccFeesUpdatedEventObject>;
401
- export type GroupAccFeesUpdatedEventFilter = TypedEventFilter<GroupAccFeesUpdatedEvent>;
402
- export interface GroupOiUpdatedEventObject {
403
- groupIndex: number;
404
- long: boolean;
405
- increase: boolean;
406
- amount: BigNumber;
407
- oiLong: BigNumber;
408
- oiShort: BigNumber;
409
- }
410
- export type GroupOiUpdatedEvent = TypedEvent<[
411
- number,
412
- boolean,
413
- boolean,
414
- BigNumber,
415
- BigNumber,
416
- BigNumber
417
- ], GroupOiUpdatedEventObject>;
418
- export type GroupOiUpdatedEventFilter = TypedEventFilter<GroupOiUpdatedEvent>;
419
- export interface GroupUpdatedEventObject {
420
- groupIndex: number;
421
- feePerBlock: number;
422
- maxOi: BigNumber;
423
- feeExponent: number;
424
- }
425
- export type GroupUpdatedEvent = TypedEvent<[
426
- number,
427
- number,
428
- BigNumber,
429
- number
430
- ], GroupUpdatedEventObject>;
431
- export type GroupUpdatedEventFilter = TypedEventFilter<GroupUpdatedEvent>;
432
- export interface InitializedEventObject {
433
- version: number;
434
- }
435
- export type InitializedEvent = TypedEvent<[number], InitializedEventObject>;
436
- export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
437
- export interface PairAccFeesUpdatedEventObject {
438
- pairIndex: BigNumber;
439
- currentBlock: BigNumber;
440
- accFeeLong: BigNumber;
441
- accFeeShort: BigNumber;
442
- }
443
- export type PairAccFeesUpdatedEvent = TypedEvent<[
444
- BigNumber,
445
- BigNumber,
446
- BigNumber,
447
- BigNumber
448
- ], PairAccFeesUpdatedEventObject>;
449
- export type PairAccFeesUpdatedEventFilter = TypedEventFilter<PairAccFeesUpdatedEvent>;
450
- export interface PairGroupUpdatedEventObject {
451
- pairIndex: BigNumber;
452
- prevGroupIndex: number;
453
- newGroupIndex: number;
454
- }
455
- export type PairGroupUpdatedEvent = TypedEvent<[
456
- BigNumber,
457
- number,
458
- number
459
- ], PairGroupUpdatedEventObject>;
460
- export type PairGroupUpdatedEventFilter = TypedEventFilter<PairGroupUpdatedEvent>;
461
- export interface PairParamsUpdatedEventObject {
462
- pairIndex: BigNumber;
463
- groupIndex: number;
464
- feePerBlock: number;
465
- feeExponent: number;
466
- maxOi: BigNumber;
467
- }
468
- export type PairParamsUpdatedEvent = TypedEvent<[
469
- BigNumber,
470
- number,
471
- number,
472
- number,
473
- BigNumber
474
- ], PairParamsUpdatedEventObject>;
475
- export type PairParamsUpdatedEventFilter = TypedEventFilter<PairParamsUpdatedEvent>;
476
- export interface TradeActionHandledEventObject {
477
- trader: string;
478
- pairIndex: BigNumber;
479
- index: BigNumber;
480
- open: boolean;
481
- long: boolean;
482
- positionSizeDai: BigNumber;
483
- }
484
- export type TradeActionHandledEvent = TypedEvent<[
485
- string,
486
- BigNumber,
487
- BigNumber,
488
- boolean,
489
- boolean,
490
- BigNumber
491
- ], TradeActionHandledEventObject>;
492
- export type TradeActionHandledEventFilter = TypedEventFilter<TradeActionHandledEvent>;
493
- export interface TradeInitialAccFeesStoredEventObject {
494
- trader: string;
495
- pairIndex: BigNumber;
496
- index: BigNumber;
497
- initialPairAccFee: BigNumber;
498
- initialGroupAccFee: BigNumber;
499
- }
500
- export type TradeInitialAccFeesStoredEvent = TypedEvent<[
501
- string,
502
- BigNumber,
503
- BigNumber,
504
- BigNumber,
505
- BigNumber
506
- ], TradeInitialAccFeesStoredEventObject>;
507
- export type TradeInitialAccFeesStoredEventFilter = TypedEventFilter<TradeInitialAccFeesStoredEvent>;
508
- export interface GNSBorrowingFees extends BaseContract {
509
- connect(signerOrProvider: Signer | Provider | string): this;
510
- attach(addressOrName: string): this;
511
- deployed(): Promise<this>;
512
- interface: GNSBorrowingFeesInterface;
513
- queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
514
- listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
515
- listeners(eventName?: string): Array<Listener>;
516
- removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
517
- removeAllListeners(eventName?: string): this;
518
- off: OnEvent<this>;
519
- on: OnEvent<this>;
520
- once: OnEvent<this>;
521
- removeListener: OnEvent<this>;
522
- functions: {
523
- collateralConfig(overrides?: CallOverrides): Promise<[
524
- BigNumber,
525
- BigNumber
526
- ] & {
527
- precision: BigNumber;
528
- precisionDelta: BigNumber;
529
- }>;
530
- getAllPairs(overrides?: CallOverrides): Promise<[
531
- IGNSBorrowingFees.PairStructOutput[],
532
- IGNSBorrowingFees.PairOiStructOutput[]
533
- ]>;
534
- getCollateralPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
535
- getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput, number]>;
536
- getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber] & {
537
- accFee: BigNumber;
538
- }>;
539
- getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
540
- BigNumber,
541
- BigNumber,
542
- BigNumber
543
- ] & {
544
- accFeeLong: BigNumber;
545
- accFeeShort: BigNumber;
546
- groupAccFeeDelta: BigNumber;
547
- }>;
548
- getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput[], number[]]>;
549
- getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
550
- IGNSBorrowingFees.PairStructOutput,
551
- IGNSBorrowingFees.PairOiStructOutput
552
- ]>;
553
- getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
554
- BigNumber,
555
- BigNumber,
556
- boolean
557
- ] & {
558
- deltaGroup: BigNumber;
559
- deltaPair: BigNumber;
560
- beforeTradeOpen: boolean;
561
- }>;
562
- getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number] & {
563
- groupIndex: number;
564
- }>;
565
- getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
566
- getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>;
567
- getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber] & {
568
- accFee: BigNumber;
569
- }>;
570
- getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
571
- BigNumber,
572
- BigNumber,
573
- BigNumber
574
- ] & {
575
- accFeeLong: BigNumber;
576
- accFeeShort: BigNumber;
577
- pairAccFeeDelta: BigNumber;
578
- }>;
579
- getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<[
580
- BigNumber,
581
- BigNumber,
582
- BigNumber
583
- ] & {
584
- newAccFeeLong: BigNumber;
585
- newAccFeeShort: BigNumber;
586
- delta: BigNumber;
587
- }>;
588
- getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<[BigNumber] & {
589
- fee: BigNumber;
590
- }>;
591
- getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<[BigNumber]>;
592
- groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number]>;
593
- groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
594
- BigNumber,
595
- BigNumber,
596
- number,
597
- BigNumber,
598
- BigNumber,
599
- number,
600
- BigNumber,
601
- BigNumber
602
- ] & {
603
- oiLong: BigNumber;
604
- oiShort: BigNumber;
605
- feePerBlock: number;
606
- accFeeLong: BigNumber;
607
- accFeeShort: BigNumber;
608
- accLastUpdatedBlock: number;
609
- maxOi: BigNumber;
610
- lastAccBlockWeightedMarketCap: BigNumber;
611
- }>;
612
- handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
613
- from?: PromiseOrValue<string>;
614
- }): Promise<ContractTransaction>;
615
- initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
616
- BigNumber,
617
- BigNumber,
618
- number,
619
- BigNumber
620
- ] & {
621
- accPairFee: BigNumber;
622
- accGroupFee: BigNumber;
623
- block: number;
624
- _placeholder: BigNumber;
625
- }>;
626
- initialize(_storageT: PromiseOrValue<string>, overrides?: Overrides & {
627
- from?: PromiseOrValue<string>;
628
- }): Promise<ContractTransaction>;
629
- initializeV3(_multiCollatDiamond: PromiseOrValue<string>, overrides?: Overrides & {
630
- from?: PromiseOrValue<string>;
631
- }): Promise<ContractTransaction>;
632
- multiCollatDiamond(overrides?: CallOverrides): Promise<[string]>;
633
- pairInfos(overrides?: CallOverrides): Promise<[string]>;
634
- pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
635
- BigNumber,
636
- BigNumber,
637
- BigNumber,
638
- number
639
- ] & {
640
- long: BigNumber;
641
- short: BigNumber;
642
- max: BigNumber;
643
- _placeholder: number;
644
- }>;
645
- pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
646
- number,
647
- BigNumber,
648
- BigNumber,
649
- number,
650
- number,
651
- BigNumber
652
- ] & {
653
- feePerBlock: number;
654
- accFeeLong: BigNumber;
655
- accFeeShort: BigNumber;
656
- accLastUpdatedBlock: number;
657
- feeExponent: number;
658
- lastAccBlockWeightedMarketCap: BigNumber;
659
- }>;
660
- setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
661
- from?: PromiseOrValue<string>;
662
- }): Promise<ContractTransaction>;
663
- setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
664
- from?: PromiseOrValue<string>;
665
- }): Promise<ContractTransaction>;
666
- setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
667
- from?: PromiseOrValue<string>;
668
- }): Promise<ContractTransaction>;
669
- setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
670
- from?: PromiseOrValue<string>;
671
- }): Promise<ContractTransaction>;
672
- storageT(overrides?: CallOverrides): Promise<[string]>;
673
- withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[boolean]>;
674
- };
675
- collateralConfig(overrides?: CallOverrides): Promise<[
676
- BigNumber,
677
- BigNumber
678
- ] & {
679
- precision: BigNumber;
680
- precisionDelta: BigNumber;
681
- }>;
682
- getAllPairs(overrides?: CallOverrides): Promise<[
683
- IGNSBorrowingFees.PairStructOutput[],
684
- IGNSBorrowingFees.PairOiStructOutput[]
685
- ]>;
686
- getCollateralPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
687
- getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput, number]>;
688
- getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
689
- getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
690
- BigNumber,
691
- BigNumber,
692
- BigNumber
693
- ] & {
694
- accFeeLong: BigNumber;
695
- accFeeShort: BigNumber;
696
- groupAccFeeDelta: BigNumber;
697
- }>;
698
- getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput[], number[]]>;
699
- getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
700
- IGNSBorrowingFees.PairStructOutput,
701
- IGNSBorrowingFees.PairOiStructOutput
702
- ]>;
703
- getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
704
- BigNumber,
705
- BigNumber,
706
- boolean
707
- ] & {
708
- deltaGroup: BigNumber;
709
- deltaPair: BigNumber;
710
- beforeTradeOpen: boolean;
711
- }>;
712
- getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
713
- getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
714
- getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>;
715
- getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
716
- getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
717
- BigNumber,
718
- BigNumber,
719
- BigNumber
720
- ] & {
721
- accFeeLong: BigNumber;
722
- accFeeShort: BigNumber;
723
- pairAccFeeDelta: BigNumber;
724
- }>;
725
- getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<[
726
- BigNumber,
727
- BigNumber,
728
- BigNumber
729
- ] & {
730
- newAccFeeLong: BigNumber;
731
- newAccFeeShort: BigNumber;
732
- delta: BigNumber;
733
- }>;
734
- getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
735
- getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
736
- groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
737
- groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
738
- BigNumber,
739
- BigNumber,
740
- number,
741
- BigNumber,
742
- BigNumber,
743
- number,
744
- BigNumber,
745
- BigNumber
746
- ] & {
747
- oiLong: BigNumber;
748
- oiShort: BigNumber;
749
- feePerBlock: number;
750
- accFeeLong: BigNumber;
751
- accFeeShort: BigNumber;
752
- accLastUpdatedBlock: number;
753
- maxOi: BigNumber;
754
- lastAccBlockWeightedMarketCap: BigNumber;
755
- }>;
756
- handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
757
- from?: PromiseOrValue<string>;
758
- }): Promise<ContractTransaction>;
759
- initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
760
- BigNumber,
761
- BigNumber,
762
- number,
763
- BigNumber
764
- ] & {
765
- accPairFee: BigNumber;
766
- accGroupFee: BigNumber;
767
- block: number;
768
- _placeholder: BigNumber;
769
- }>;
770
- initialize(_storageT: PromiseOrValue<string>, overrides?: Overrides & {
771
- from?: PromiseOrValue<string>;
772
- }): Promise<ContractTransaction>;
773
- initializeV3(_multiCollatDiamond: PromiseOrValue<string>, overrides?: Overrides & {
774
- from?: PromiseOrValue<string>;
775
- }): Promise<ContractTransaction>;
776
- multiCollatDiamond(overrides?: CallOverrides): Promise<string>;
777
- pairInfos(overrides?: CallOverrides): Promise<string>;
778
- pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
779
- BigNumber,
780
- BigNumber,
781
- BigNumber,
782
- number
783
- ] & {
784
- long: BigNumber;
785
- short: BigNumber;
786
- max: BigNumber;
787
- _placeholder: number;
788
- }>;
789
- pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
790
- number,
791
- BigNumber,
792
- BigNumber,
793
- number,
794
- number,
795
- BigNumber
796
- ] & {
797
- feePerBlock: number;
798
- accFeeLong: BigNumber;
799
- accFeeShort: BigNumber;
800
- accLastUpdatedBlock: number;
801
- feeExponent: number;
802
- lastAccBlockWeightedMarketCap: BigNumber;
803
- }>;
804
- setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
805
- from?: PromiseOrValue<string>;
806
- }): Promise<ContractTransaction>;
807
- setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
808
- from?: PromiseOrValue<string>;
809
- }): Promise<ContractTransaction>;
810
- setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
811
- from?: PromiseOrValue<string>;
812
- }): Promise<ContractTransaction>;
813
- setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
814
- from?: PromiseOrValue<string>;
815
- }): Promise<ContractTransaction>;
816
- storageT(overrides?: CallOverrides): Promise<string>;
817
- withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
818
- callStatic: {
819
- collateralConfig(overrides?: CallOverrides): Promise<[
820
- BigNumber,
821
- BigNumber
822
- ] & {
823
- precision: BigNumber;
824
- precisionDelta: BigNumber;
825
- }>;
826
- getAllPairs(overrides?: CallOverrides): Promise<[
827
- IGNSBorrowingFees.PairStructOutput[],
828
- IGNSBorrowingFees.PairOiStructOutput[]
829
- ]>;
830
- getCollateralPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
831
- getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput, number]>;
832
- getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
833
- getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
834
- BigNumber,
835
- BigNumber,
836
- BigNumber
837
- ] & {
838
- accFeeLong: BigNumber;
839
- accFeeShort: BigNumber;
840
- groupAccFeeDelta: BigNumber;
841
- }>;
842
- getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput[], number[]]>;
843
- getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
844
- IGNSBorrowingFees.PairStructOutput,
845
- IGNSBorrowingFees.PairOiStructOutput
846
- ]>;
847
- getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
848
- BigNumber,
849
- BigNumber,
850
- boolean
851
- ] & {
852
- deltaGroup: BigNumber;
853
- deltaPair: BigNumber;
854
- beforeTradeOpen: boolean;
855
- }>;
856
- getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
857
- getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
858
- getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>;
859
- getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
860
- getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
861
- BigNumber,
862
- BigNumber,
863
- BigNumber
864
- ] & {
865
- accFeeLong: BigNumber;
866
- accFeeShort: BigNumber;
867
- pairAccFeeDelta: BigNumber;
868
- }>;
869
- getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<[
870
- BigNumber,
871
- BigNumber,
872
- BigNumber
873
- ] & {
874
- newAccFeeLong: BigNumber;
875
- newAccFeeShort: BigNumber;
876
- delta: BigNumber;
877
- }>;
878
- getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
879
- getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
880
- groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
881
- groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
882
- BigNumber,
883
- BigNumber,
884
- number,
885
- BigNumber,
886
- BigNumber,
887
- number,
888
- BigNumber,
889
- BigNumber
890
- ] & {
891
- oiLong: BigNumber;
892
- oiShort: BigNumber;
893
- feePerBlock: number;
894
- accFeeLong: BigNumber;
895
- accFeeShort: BigNumber;
896
- accLastUpdatedBlock: number;
897
- maxOi: BigNumber;
898
- lastAccBlockWeightedMarketCap: BigNumber;
899
- }>;
900
- handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
901
- initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
902
- BigNumber,
903
- BigNumber,
904
- number,
905
- BigNumber
906
- ] & {
907
- accPairFee: BigNumber;
908
- accGroupFee: BigNumber;
909
- block: number;
910
- _placeholder: BigNumber;
911
- }>;
912
- initialize(_storageT: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
913
- initializeV3(_multiCollatDiamond: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
914
- multiCollatDiamond(overrides?: CallOverrides): Promise<string>;
915
- pairInfos(overrides?: CallOverrides): Promise<string>;
916
- pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
917
- BigNumber,
918
- BigNumber,
919
- BigNumber,
920
- number
921
- ] & {
922
- long: BigNumber;
923
- short: BigNumber;
924
- max: BigNumber;
925
- _placeholder: number;
926
- }>;
927
- pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
928
- number,
929
- BigNumber,
930
- BigNumber,
931
- number,
932
- number,
933
- BigNumber
934
- ] & {
935
- feePerBlock: number;
936
- accFeeLong: BigNumber;
937
- accFeeShort: BigNumber;
938
- accLastUpdatedBlock: number;
939
- feeExponent: number;
940
- lastAccBlockWeightedMarketCap: BigNumber;
941
- }>;
942
- setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: CallOverrides): Promise<void>;
943
- setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: CallOverrides): Promise<void>;
944
- setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: CallOverrides): Promise<void>;
945
- setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: CallOverrides): Promise<void>;
946
- storageT(overrides?: CallOverrides): Promise<string>;
947
- withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
948
- };
949
- filters: {
950
- "GroupAccFeesUpdated(uint16,uint256,uint64,uint64)"(groupIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): GroupAccFeesUpdatedEventFilter;
951
- GroupAccFeesUpdated(groupIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): GroupAccFeesUpdatedEventFilter;
952
- "GroupOiUpdated(uint16,bool,bool,uint112,uint112,uint112)"(groupIndex?: PromiseOrValue<BigNumberish> | null, long?: PromiseOrValue<boolean> | null, increase?: PromiseOrValue<boolean> | null, amount?: null, oiLong?: null, oiShort?: null): GroupOiUpdatedEventFilter;
953
- GroupOiUpdated(groupIndex?: PromiseOrValue<BigNumberish> | null, long?: PromiseOrValue<boolean> | null, increase?: PromiseOrValue<boolean> | null, amount?: null, oiLong?: null, oiShort?: null): GroupOiUpdatedEventFilter;
954
- "GroupUpdated(uint16,uint32,uint72,uint48)"(groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, maxOi?: null, feeExponent?: null): GroupUpdatedEventFilter;
955
- GroupUpdated(groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, maxOi?: null, feeExponent?: null): GroupUpdatedEventFilter;
956
- "Initialized(uint8)"(version?: null): InitializedEventFilter;
957
- Initialized(version?: null): InitializedEventFilter;
958
- "PairAccFeesUpdated(uint256,uint256,uint64,uint64)"(pairIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): PairAccFeesUpdatedEventFilter;
959
- PairAccFeesUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): PairAccFeesUpdatedEventFilter;
960
- "PairGroupUpdated(uint256,uint16,uint16)"(pairIndex?: PromiseOrValue<BigNumberish> | null, prevGroupIndex?: PromiseOrValue<BigNumberish> | null, newGroupIndex?: PromiseOrValue<BigNumberish> | null): PairGroupUpdatedEventFilter;
961
- PairGroupUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, prevGroupIndex?: PromiseOrValue<BigNumberish> | null, newGroupIndex?: PromiseOrValue<BigNumberish> | null): PairGroupUpdatedEventFilter;
962
- "PairParamsUpdated(uint256,uint16,uint32,uint48,uint72)"(pairIndex?: PromiseOrValue<BigNumberish> | null, groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, feeExponent?: null, maxOi?: null): PairParamsUpdatedEventFilter;
963
- PairParamsUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, feeExponent?: null, maxOi?: null): PairParamsUpdatedEventFilter;
964
- "TradeActionHandled(address,uint256,uint256,bool,bool,uint256)"(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, open?: null, long?: null, positionSizeDai?: null): TradeActionHandledEventFilter;
965
- TradeActionHandled(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, open?: null, long?: null, positionSizeDai?: null): TradeActionHandledEventFilter;
966
- "TradeInitialAccFeesStored(address,uint256,uint256,uint64,uint64)"(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, initialPairAccFee?: null, initialGroupAccFee?: null): TradeInitialAccFeesStoredEventFilter;
967
- TradeInitialAccFeesStored(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, initialPairAccFee?: null, initialGroupAccFee?: null): TradeInitialAccFeesStoredEventFilter;
968
- };
969
- estimateGas: {
970
- collateralConfig(overrides?: CallOverrides): Promise<BigNumber>;
971
- getAllPairs(overrides?: CallOverrides): Promise<BigNumber>;
972
- getCollateralPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
973
- getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
974
- getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
975
- getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
976
- getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
977
- getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
978
- getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
979
- getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
980
- getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
981
- getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
982
- getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
983
- getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
984
- getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
985
- getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
986
- getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
987
- groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
988
- groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
989
- handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
990
- from?: PromiseOrValue<string>;
991
- }): Promise<BigNumber>;
992
- initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
993
- initialize(_storageT: PromiseOrValue<string>, overrides?: Overrides & {
994
- from?: PromiseOrValue<string>;
995
- }): Promise<BigNumber>;
996
- initializeV3(_multiCollatDiamond: PromiseOrValue<string>, overrides?: Overrides & {
997
- from?: PromiseOrValue<string>;
998
- }): Promise<BigNumber>;
999
- multiCollatDiamond(overrides?: CallOverrides): Promise<BigNumber>;
1000
- pairInfos(overrides?: CallOverrides): Promise<BigNumber>;
1001
- pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1002
- pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1003
- setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
1004
- from?: PromiseOrValue<string>;
1005
- }): Promise<BigNumber>;
1006
- setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
1007
- from?: PromiseOrValue<string>;
1008
- }): Promise<BigNumber>;
1009
- setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
1010
- from?: PromiseOrValue<string>;
1011
- }): Promise<BigNumber>;
1012
- setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
1013
- from?: PromiseOrValue<string>;
1014
- }): Promise<BigNumber>;
1015
- storageT(overrides?: CallOverrides): Promise<BigNumber>;
1016
- withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1017
- };
1018
- populateTransaction: {
1019
- collateralConfig(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1020
- getAllPairs(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1021
- getCollateralPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1022
- getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1023
- getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1024
- getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1025
- getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
1026
- getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1027
- getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1028
- getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1029
- getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1030
- getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1031
- getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1032
- getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1033
- getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1034
- getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1035
- getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1036
- groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1037
- groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1038
- handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
1039
- from?: PromiseOrValue<string>;
1040
- }): Promise<PopulatedTransaction>;
1041
- initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1042
- initialize(_storageT: PromiseOrValue<string>, overrides?: Overrides & {
1043
- from?: PromiseOrValue<string>;
1044
- }): Promise<PopulatedTransaction>;
1045
- initializeV3(_multiCollatDiamond: PromiseOrValue<string>, overrides?: Overrides & {
1046
- from?: PromiseOrValue<string>;
1047
- }): Promise<PopulatedTransaction>;
1048
- multiCollatDiamond(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1049
- pairInfos(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1050
- pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1051
- pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1052
- setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
1053
- from?: PromiseOrValue<string>;
1054
- }): Promise<PopulatedTransaction>;
1055
- setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
1056
- from?: PromiseOrValue<string>;
1057
- }): Promise<PopulatedTransaction>;
1058
- setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
1059
- from?: PromiseOrValue<string>;
1060
- }): Promise<PopulatedTransaction>;
1061
- setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
1062
- from?: PromiseOrValue<string>;
1063
- }): Promise<PopulatedTransaction>;
1064
- storageT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1065
- withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1066
- };
1067
- }
1
+ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
2
+ import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
3
+ import type { Listener, Provider } from "@ethersproject/providers";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
5
+ export declare namespace PriceImpactUtils {
6
+ type PairOiStruct = {
7
+ long: PromiseOrValue<BigNumberish>;
8
+ short: PromiseOrValue<BigNumberish>;
9
+ };
10
+ type PairOiStructOutput = [BigNumber, BigNumber] & {
11
+ long: BigNumber;
12
+ short: BigNumber;
13
+ };
14
+ type OiWindowUpdateStruct = {
15
+ windowsDuration: PromiseOrValue<BigNumberish>;
16
+ pairIndex: PromiseOrValue<BigNumberish>;
17
+ windowId: PromiseOrValue<BigNumberish>;
18
+ long: PromiseOrValue<boolean>;
19
+ openInterest: PromiseOrValue<BigNumberish>;
20
+ };
21
+ type OiWindowUpdateStructOutput = [
22
+ number,
23
+ BigNumber,
24
+ BigNumber,
25
+ boolean,
26
+ BigNumber
27
+ ] & {
28
+ windowsDuration: number;
29
+ pairIndex: BigNumber;
30
+ windowId: BigNumber;
31
+ long: boolean;
32
+ openInterest: BigNumber;
33
+ };
34
+ type OiWindowsSettingsStruct = {
35
+ startTs: PromiseOrValue<BigNumberish>;
36
+ windowsDuration: PromiseOrValue<BigNumberish>;
37
+ windowsCount: PromiseOrValue<BigNumberish>;
38
+ };
39
+ type OiWindowsSettingsStructOutput = [number, number, number] & {
40
+ startTs: number;
41
+ windowsDuration: number;
42
+ windowsCount: number;
43
+ };
44
+ }
45
+ export declare namespace IGNSBorrowingFees {
46
+ type PairGroupStruct = {
47
+ groupIndex: PromiseOrValue<BigNumberish>;
48
+ block: PromiseOrValue<BigNumberish>;
49
+ initialAccFeeLong: PromiseOrValue<BigNumberish>;
50
+ initialAccFeeShort: PromiseOrValue<BigNumberish>;
51
+ prevGroupAccFeeLong: PromiseOrValue<BigNumberish>;
52
+ prevGroupAccFeeShort: PromiseOrValue<BigNumberish>;
53
+ pairAccFeeLong: PromiseOrValue<BigNumberish>;
54
+ pairAccFeeShort: PromiseOrValue<BigNumberish>;
55
+ _placeholder: PromiseOrValue<BigNumberish>;
56
+ };
57
+ type PairGroupStructOutput = [
58
+ number,
59
+ number,
60
+ BigNumber,
61
+ BigNumber,
62
+ BigNumber,
63
+ BigNumber,
64
+ BigNumber,
65
+ BigNumber,
66
+ BigNumber
67
+ ] & {
68
+ groupIndex: number;
69
+ block: number;
70
+ initialAccFeeLong: BigNumber;
71
+ initialAccFeeShort: BigNumber;
72
+ prevGroupAccFeeLong: BigNumber;
73
+ prevGroupAccFeeShort: BigNumber;
74
+ pairAccFeeLong: BigNumber;
75
+ pairAccFeeShort: BigNumber;
76
+ _placeholder: BigNumber;
77
+ };
78
+ type PairStruct = {
79
+ groups: IGNSBorrowingFees.PairGroupStruct[];
80
+ feePerBlock: PromiseOrValue<BigNumberish>;
81
+ accFeeLong: PromiseOrValue<BigNumberish>;
82
+ accFeeShort: PromiseOrValue<BigNumberish>;
83
+ accLastUpdatedBlock: PromiseOrValue<BigNumberish>;
84
+ feeExponent: PromiseOrValue<BigNumberish>;
85
+ lastAccBlockWeightedMarketCap: PromiseOrValue<BigNumberish>;
86
+ };
87
+ type PairStructOutput = [
88
+ IGNSBorrowingFees.PairGroupStructOutput[],
89
+ number,
90
+ BigNumber,
91
+ BigNumber,
92
+ number,
93
+ number,
94
+ BigNumber
95
+ ] & {
96
+ groups: IGNSBorrowingFees.PairGroupStructOutput[];
97
+ feePerBlock: number;
98
+ accFeeLong: BigNumber;
99
+ accFeeShort: BigNumber;
100
+ accLastUpdatedBlock: number;
101
+ feeExponent: number;
102
+ lastAccBlockWeightedMarketCap: BigNumber;
103
+ };
104
+ type PairOiStruct = {
105
+ long: PromiseOrValue<BigNumberish>;
106
+ short: PromiseOrValue<BigNumberish>;
107
+ max: PromiseOrValue<BigNumberish>;
108
+ _placeholder: PromiseOrValue<BigNumberish>;
109
+ };
110
+ type PairOiStructOutput = [BigNumber, BigNumber, BigNumber, number] & {
111
+ long: BigNumber;
112
+ short: BigNumber;
113
+ max: BigNumber;
114
+ _placeholder: number;
115
+ };
116
+ type GroupStruct = {
117
+ oiLong: PromiseOrValue<BigNumberish>;
118
+ oiShort: PromiseOrValue<BigNumberish>;
119
+ feePerBlock: PromiseOrValue<BigNumberish>;
120
+ accFeeLong: PromiseOrValue<BigNumberish>;
121
+ accFeeShort: PromiseOrValue<BigNumberish>;
122
+ accLastUpdatedBlock: PromiseOrValue<BigNumberish>;
123
+ maxOi: PromiseOrValue<BigNumberish>;
124
+ lastAccBlockWeightedMarketCap: PromiseOrValue<BigNumberish>;
125
+ };
126
+ type GroupStructOutput = [
127
+ BigNumber,
128
+ BigNumber,
129
+ number,
130
+ BigNumber,
131
+ BigNumber,
132
+ number,
133
+ BigNumber,
134
+ BigNumber
135
+ ] & {
136
+ oiLong: BigNumber;
137
+ oiShort: BigNumber;
138
+ feePerBlock: number;
139
+ accFeeLong: BigNumber;
140
+ accFeeShort: BigNumber;
141
+ accLastUpdatedBlock: number;
142
+ maxOi: BigNumber;
143
+ lastAccBlockWeightedMarketCap: BigNumber;
144
+ };
145
+ type InitialAccFeesStruct = {
146
+ accPairFee: PromiseOrValue<BigNumberish>;
147
+ accGroupFee: PromiseOrValue<BigNumberish>;
148
+ block: PromiseOrValue<BigNumberish>;
149
+ _placeholder: PromiseOrValue<BigNumberish>;
150
+ };
151
+ type InitialAccFeesStructOutput = [
152
+ BigNumber,
153
+ BigNumber,
154
+ number,
155
+ BigNumber
156
+ ] & {
157
+ accPairFee: BigNumber;
158
+ accGroupFee: BigNumber;
159
+ block: number;
160
+ _placeholder: BigNumber;
161
+ };
162
+ type PendingAccFeesInputStruct = {
163
+ accFeeLong: PromiseOrValue<BigNumberish>;
164
+ accFeeShort: PromiseOrValue<BigNumberish>;
165
+ oiLong: PromiseOrValue<BigNumberish>;
166
+ oiShort: PromiseOrValue<BigNumberish>;
167
+ feePerBlock: PromiseOrValue<BigNumberish>;
168
+ currentBlock: PromiseOrValue<BigNumberish>;
169
+ accLastUpdatedBlock: PromiseOrValue<BigNumberish>;
170
+ maxOi: PromiseOrValue<BigNumberish>;
171
+ feeExponent: PromiseOrValue<BigNumberish>;
172
+ };
173
+ type PendingAccFeesInputStructOutput = [
174
+ BigNumber,
175
+ BigNumber,
176
+ BigNumber,
177
+ BigNumber,
178
+ number,
179
+ BigNumber,
180
+ BigNumber,
181
+ BigNumber,
182
+ number
183
+ ] & {
184
+ accFeeLong: BigNumber;
185
+ accFeeShort: BigNumber;
186
+ oiLong: BigNumber;
187
+ oiShort: BigNumber;
188
+ feePerBlock: number;
189
+ currentBlock: BigNumber;
190
+ accLastUpdatedBlock: BigNumber;
191
+ maxOi: BigNumber;
192
+ feeExponent: number;
193
+ };
194
+ type BorrowingFeeInputStruct = {
195
+ trader: PromiseOrValue<string>;
196
+ pairIndex: PromiseOrValue<BigNumberish>;
197
+ index: PromiseOrValue<BigNumberish>;
198
+ long: PromiseOrValue<boolean>;
199
+ collateral: PromiseOrValue<BigNumberish>;
200
+ leverage: PromiseOrValue<BigNumberish>;
201
+ };
202
+ type BorrowingFeeInputStructOutput = [
203
+ string,
204
+ BigNumber,
205
+ BigNumber,
206
+ boolean,
207
+ BigNumber,
208
+ BigNumber
209
+ ] & {
210
+ trader: string;
211
+ pairIndex: BigNumber;
212
+ index: BigNumber;
213
+ long: boolean;
214
+ collateral: BigNumber;
215
+ leverage: BigNumber;
216
+ };
217
+ type LiqPriceInputStruct = {
218
+ trader: PromiseOrValue<string>;
219
+ pairIndex: PromiseOrValue<BigNumberish>;
220
+ index: PromiseOrValue<BigNumberish>;
221
+ openPrice: PromiseOrValue<BigNumberish>;
222
+ long: PromiseOrValue<boolean>;
223
+ collateral: PromiseOrValue<BigNumberish>;
224
+ leverage: PromiseOrValue<BigNumberish>;
225
+ };
226
+ type LiqPriceInputStructOutput = [
227
+ string,
228
+ BigNumber,
229
+ BigNumber,
230
+ BigNumber,
231
+ boolean,
232
+ BigNumber,
233
+ BigNumber
234
+ ] & {
235
+ trader: string;
236
+ pairIndex: BigNumber;
237
+ index: BigNumber;
238
+ openPrice: BigNumber;
239
+ long: boolean;
240
+ collateral: BigNumber;
241
+ leverage: BigNumber;
242
+ };
243
+ type GroupParamsStruct = {
244
+ feePerBlock: PromiseOrValue<BigNumberish>;
245
+ maxOi: PromiseOrValue<BigNumberish>;
246
+ feeExponent: PromiseOrValue<BigNumberish>;
247
+ };
248
+ type GroupParamsStructOutput = [number, BigNumber, number] & {
249
+ feePerBlock: number;
250
+ maxOi: BigNumber;
251
+ feeExponent: number;
252
+ };
253
+ type PairParamsStruct = {
254
+ groupIndex: PromiseOrValue<BigNumberish>;
255
+ feePerBlock: PromiseOrValue<BigNumberish>;
256
+ feeExponent: PromiseOrValue<BigNumberish>;
257
+ maxOi: PromiseOrValue<BigNumberish>;
258
+ };
259
+ type PairParamsStructOutput = [number, number, number, BigNumber] & {
260
+ groupIndex: number;
261
+ feePerBlock: number;
262
+ feeExponent: number;
263
+ maxOi: BigNumber;
264
+ };
265
+ }
266
+ export declare namespace IGNSPairInfos {
267
+ type TradeInitialAccFeesStruct = {
268
+ rollover: PromiseOrValue<BigNumberish>;
269
+ funding: PromiseOrValue<BigNumberish>;
270
+ openedAfterUpdate: PromiseOrValue<boolean>;
271
+ };
272
+ type TradeInitialAccFeesStructOutput = [
273
+ BigNumber,
274
+ BigNumber,
275
+ boolean
276
+ ] & {
277
+ rollover: BigNumber;
278
+ funding: BigNumber;
279
+ openedAfterUpdate: boolean;
280
+ };
281
+ }
282
+ export interface GNSBorrowingFeesInterface extends utils.Interface {
283
+ functions: {
284
+ "addPriceImpactOpenInterest(uint256,uint256,bool)": FunctionFragment;
285
+ "getAllPairs()": FunctionFragment;
286
+ "getGroup(uint16)": FunctionFragment;
287
+ "getGroupPendingAccFee(uint16,uint256,bool)": FunctionFragment;
288
+ "getGroupPendingAccFees(uint16,uint256)": FunctionFragment;
289
+ "getGroups(uint16[])": FunctionFragment;
290
+ "getOiWindow(uint48,uint256,uint256)": FunctionFragment;
291
+ "getOiWindows(uint48,uint256,uint256[])": FunctionFragment;
292
+ "getOiWindowsSettings()": FunctionFragment;
293
+ "getPair(uint256)": FunctionFragment;
294
+ "getPairGroupAccFeesDeltas(uint256,(uint16,uint48,uint64,uint64,uint64,uint64,uint64,uint64,uint64)[],(uint64,uint64,uint48,uint80),uint256,bool,uint256)": FunctionFragment;
295
+ "getPairGroupIndex(uint256)": FunctionFragment;
296
+ "getPairMaxOi(uint256)": FunctionFragment;
297
+ "getPairOpenInterestDai(uint256)": FunctionFragment;
298
+ "getPairPendingAccFee(uint256,uint256,bool)": FunctionFragment;
299
+ "getPairPendingAccFees(uint256,uint256)": FunctionFragment;
300
+ "getPendingAccFees((uint64,uint64,uint256,uint256,uint32,uint256,uint256,uint72,uint48))": FunctionFragment;
301
+ "getPriceImpactOi(uint256,bool)": FunctionFragment;
302
+ "getTradeBorrowingFee((address,uint256,uint256,bool,uint256,uint256))": FunctionFragment;
303
+ "getTradeInitialAccFees(address,uint256,uint256)": FunctionFragment;
304
+ "getTradeLiquidationPrice((address,uint256,uint256,uint256,bool,uint256,uint256))": FunctionFragment;
305
+ "getTradePriceImpact(uint256,uint256,bool,uint256)": FunctionFragment;
306
+ "groupFeeExponents(uint256)": FunctionFragment;
307
+ "groups(uint16)": FunctionFragment;
308
+ "handleTradeAction(address,uint256,uint256,uint256,bool,bool)": FunctionFragment;
309
+ "initialAccFees(address,uint256,uint256)": FunctionFragment;
310
+ "initialize(address,address)": FunctionFragment;
311
+ "initializeV2(uint48)": FunctionFragment;
312
+ "pairInfos()": FunctionFragment;
313
+ "pairOis(uint256)": FunctionFragment;
314
+ "pairs(uint256)": FunctionFragment;
315
+ "removePriceImpactOpenInterest(uint256,uint256,bool,uint48)": FunctionFragment;
316
+ "setGroupParams(uint16,(uint32,uint72,uint48))": FunctionFragment;
317
+ "setGroupParamsArray(uint16[],(uint32,uint72,uint48)[])": FunctionFragment;
318
+ "setPairParams(uint256,(uint16,uint32,uint48,uint72))": FunctionFragment;
319
+ "setPairParamsArray(uint256[],(uint16,uint32,uint48,uint72)[])": FunctionFragment;
320
+ "setPriceImpactWindowsCount(uint48)": FunctionFragment;
321
+ "setPriceImpactWindowsDuration(uint48)": FunctionFragment;
322
+ "storageT()": FunctionFragment;
323
+ "withinMaxGroupOi(uint256,bool,uint256)": FunctionFragment;
324
+ };
325
+ getFunction(nameOrSignatureOrTopic: "addPriceImpactOpenInterest" | "getAllPairs" | "getGroup" | "getGroupPendingAccFee" | "getGroupPendingAccFees" | "getGroups" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPair" | "getPairGroupAccFeesDeltas" | "getPairGroupIndex" | "getPairMaxOi" | "getPairOpenInterestDai" | "getPairPendingAccFee" | "getPairPendingAccFees" | "getPendingAccFees" | "getPriceImpactOi" | "getTradeBorrowingFee" | "getTradeInitialAccFees" | "getTradeLiquidationPrice" | "getTradePriceImpact" | "groupFeeExponents" | "groups" | "handleTradeAction" | "initialAccFees" | "initialize" | "initializeV2" | "pairInfos" | "pairOis" | "pairs" | "removePriceImpactOpenInterest" | "setGroupParams" | "setGroupParamsArray" | "setPairParams" | "setPairParamsArray" | "setPriceImpactWindowsCount" | "setPriceImpactWindowsDuration" | "storageT" | "withinMaxGroupOi"): FunctionFragment;
326
+ encodeFunctionData(functionFragment: "addPriceImpactOpenInterest", values: [
327
+ PromiseOrValue<BigNumberish>,
328
+ PromiseOrValue<BigNumberish>,
329
+ PromiseOrValue<boolean>
330
+ ]): string;
331
+ encodeFunctionData(functionFragment: "getAllPairs", values?: undefined): string;
332
+ encodeFunctionData(functionFragment: "getGroup", values: [PromiseOrValue<BigNumberish>]): string;
333
+ encodeFunctionData(functionFragment: "getGroupPendingAccFee", values: [
334
+ PromiseOrValue<BigNumberish>,
335
+ PromiseOrValue<BigNumberish>,
336
+ PromiseOrValue<boolean>
337
+ ]): string;
338
+ encodeFunctionData(functionFragment: "getGroupPendingAccFees", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
339
+ encodeFunctionData(functionFragment: "getGroups", values: [PromiseOrValue<BigNumberish>[]]): string;
340
+ encodeFunctionData(functionFragment: "getOiWindow", values: [
341
+ PromiseOrValue<BigNumberish>,
342
+ PromiseOrValue<BigNumberish>,
343
+ PromiseOrValue<BigNumberish>
344
+ ]): string;
345
+ encodeFunctionData(functionFragment: "getOiWindows", values: [
346
+ PromiseOrValue<BigNumberish>,
347
+ PromiseOrValue<BigNumberish>,
348
+ PromiseOrValue<BigNumberish>[]
349
+ ]): string;
350
+ encodeFunctionData(functionFragment: "getOiWindowsSettings", values?: undefined): string;
351
+ encodeFunctionData(functionFragment: "getPair", values: [PromiseOrValue<BigNumberish>]): string;
352
+ encodeFunctionData(functionFragment: "getPairGroupAccFeesDeltas", values: [
353
+ PromiseOrValue<BigNumberish>,
354
+ IGNSBorrowingFees.PairGroupStruct[],
355
+ IGNSBorrowingFees.InitialAccFeesStruct,
356
+ PromiseOrValue<BigNumberish>,
357
+ PromiseOrValue<boolean>,
358
+ PromiseOrValue<BigNumberish>
359
+ ]): string;
360
+ encodeFunctionData(functionFragment: "getPairGroupIndex", values: [PromiseOrValue<BigNumberish>]): string;
361
+ encodeFunctionData(functionFragment: "getPairMaxOi", values: [PromiseOrValue<BigNumberish>]): string;
362
+ encodeFunctionData(functionFragment: "getPairOpenInterestDai", values: [PromiseOrValue<BigNumberish>]): string;
363
+ encodeFunctionData(functionFragment: "getPairPendingAccFee", values: [
364
+ PromiseOrValue<BigNumberish>,
365
+ PromiseOrValue<BigNumberish>,
366
+ PromiseOrValue<boolean>
367
+ ]): string;
368
+ encodeFunctionData(functionFragment: "getPairPendingAccFees", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
369
+ encodeFunctionData(functionFragment: "getPendingAccFees", values: [IGNSBorrowingFees.PendingAccFeesInputStruct]): string;
370
+ encodeFunctionData(functionFragment: "getPriceImpactOi", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<boolean>]): string;
371
+ encodeFunctionData(functionFragment: "getTradeBorrowingFee", values: [IGNSBorrowingFees.BorrowingFeeInputStruct]): string;
372
+ encodeFunctionData(functionFragment: "getTradeInitialAccFees", values: [
373
+ PromiseOrValue<string>,
374
+ PromiseOrValue<BigNumberish>,
375
+ PromiseOrValue<BigNumberish>
376
+ ]): string;
377
+ encodeFunctionData(functionFragment: "getTradeLiquidationPrice", values: [IGNSBorrowingFees.LiqPriceInputStruct]): string;
378
+ encodeFunctionData(functionFragment: "getTradePriceImpact", values: [
379
+ PromiseOrValue<BigNumberish>,
380
+ PromiseOrValue<BigNumberish>,
381
+ PromiseOrValue<boolean>,
382
+ PromiseOrValue<BigNumberish>
383
+ ]): string;
384
+ encodeFunctionData(functionFragment: "groupFeeExponents", values: [PromiseOrValue<BigNumberish>]): string;
385
+ encodeFunctionData(functionFragment: "groups", values: [PromiseOrValue<BigNumberish>]): string;
386
+ encodeFunctionData(functionFragment: "handleTradeAction", values: [
387
+ PromiseOrValue<string>,
388
+ PromiseOrValue<BigNumberish>,
389
+ PromiseOrValue<BigNumberish>,
390
+ PromiseOrValue<BigNumberish>,
391
+ PromiseOrValue<boolean>,
392
+ PromiseOrValue<boolean>
393
+ ]): string;
394
+ encodeFunctionData(functionFragment: "initialAccFees", values: [
395
+ PromiseOrValue<string>,
396
+ PromiseOrValue<BigNumberish>,
397
+ PromiseOrValue<BigNumberish>
398
+ ]): string;
399
+ encodeFunctionData(functionFragment: "initialize", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
400
+ encodeFunctionData(functionFragment: "initializeV2", values: [PromiseOrValue<BigNumberish>]): string;
401
+ encodeFunctionData(functionFragment: "pairInfos", values?: undefined): string;
402
+ encodeFunctionData(functionFragment: "pairOis", values: [PromiseOrValue<BigNumberish>]): string;
403
+ encodeFunctionData(functionFragment: "pairs", values: [PromiseOrValue<BigNumberish>]): string;
404
+ encodeFunctionData(functionFragment: "removePriceImpactOpenInterest", values: [
405
+ PromiseOrValue<BigNumberish>,
406
+ PromiseOrValue<BigNumberish>,
407
+ PromiseOrValue<boolean>,
408
+ PromiseOrValue<BigNumberish>
409
+ ]): string;
410
+ encodeFunctionData(functionFragment: "setGroupParams", values: [PromiseOrValue<BigNumberish>, IGNSBorrowingFees.GroupParamsStruct]): string;
411
+ encodeFunctionData(functionFragment: "setGroupParamsArray", values: [
412
+ PromiseOrValue<BigNumberish>[],
413
+ IGNSBorrowingFees.GroupParamsStruct[]
414
+ ]): string;
415
+ encodeFunctionData(functionFragment: "setPairParams", values: [PromiseOrValue<BigNumberish>, IGNSBorrowingFees.PairParamsStruct]): string;
416
+ encodeFunctionData(functionFragment: "setPairParamsArray", values: [
417
+ PromiseOrValue<BigNumberish>[],
418
+ IGNSBorrowingFees.PairParamsStruct[]
419
+ ]): string;
420
+ encodeFunctionData(functionFragment: "setPriceImpactWindowsCount", values: [PromiseOrValue<BigNumberish>]): string;
421
+ encodeFunctionData(functionFragment: "setPriceImpactWindowsDuration", values: [PromiseOrValue<BigNumberish>]): string;
422
+ encodeFunctionData(functionFragment: "storageT", values?: undefined): string;
423
+ encodeFunctionData(functionFragment: "withinMaxGroupOi", values: [
424
+ PromiseOrValue<BigNumberish>,
425
+ PromiseOrValue<boolean>,
426
+ PromiseOrValue<BigNumberish>
427
+ ]): string;
428
+ decodeFunctionResult(functionFragment: "addPriceImpactOpenInterest", data: BytesLike): Result;
429
+ decodeFunctionResult(functionFragment: "getAllPairs", data: BytesLike): Result;
430
+ decodeFunctionResult(functionFragment: "getGroup", data: BytesLike): Result;
431
+ decodeFunctionResult(functionFragment: "getGroupPendingAccFee", data: BytesLike): Result;
432
+ decodeFunctionResult(functionFragment: "getGroupPendingAccFees", data: BytesLike): Result;
433
+ decodeFunctionResult(functionFragment: "getGroups", data: BytesLike): Result;
434
+ decodeFunctionResult(functionFragment: "getOiWindow", data: BytesLike): Result;
435
+ decodeFunctionResult(functionFragment: "getOiWindows", data: BytesLike): Result;
436
+ decodeFunctionResult(functionFragment: "getOiWindowsSettings", data: BytesLike): Result;
437
+ decodeFunctionResult(functionFragment: "getPair", data: BytesLike): Result;
438
+ decodeFunctionResult(functionFragment: "getPairGroupAccFeesDeltas", data: BytesLike): Result;
439
+ decodeFunctionResult(functionFragment: "getPairGroupIndex", data: BytesLike): Result;
440
+ decodeFunctionResult(functionFragment: "getPairMaxOi", data: BytesLike): Result;
441
+ decodeFunctionResult(functionFragment: "getPairOpenInterestDai", data: BytesLike): Result;
442
+ decodeFunctionResult(functionFragment: "getPairPendingAccFee", data: BytesLike): Result;
443
+ decodeFunctionResult(functionFragment: "getPairPendingAccFees", data: BytesLike): Result;
444
+ decodeFunctionResult(functionFragment: "getPendingAccFees", data: BytesLike): Result;
445
+ decodeFunctionResult(functionFragment: "getPriceImpactOi", data: BytesLike): Result;
446
+ decodeFunctionResult(functionFragment: "getTradeBorrowingFee", data: BytesLike): Result;
447
+ decodeFunctionResult(functionFragment: "getTradeInitialAccFees", data: BytesLike): Result;
448
+ decodeFunctionResult(functionFragment: "getTradeLiquidationPrice", data: BytesLike): Result;
449
+ decodeFunctionResult(functionFragment: "getTradePriceImpact", data: BytesLike): Result;
450
+ decodeFunctionResult(functionFragment: "groupFeeExponents", data: BytesLike): Result;
451
+ decodeFunctionResult(functionFragment: "groups", data: BytesLike): Result;
452
+ decodeFunctionResult(functionFragment: "handleTradeAction", data: BytesLike): Result;
453
+ decodeFunctionResult(functionFragment: "initialAccFees", data: BytesLike): Result;
454
+ decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
455
+ decodeFunctionResult(functionFragment: "initializeV2", data: BytesLike): Result;
456
+ decodeFunctionResult(functionFragment: "pairInfos", data: BytesLike): Result;
457
+ decodeFunctionResult(functionFragment: "pairOis", data: BytesLike): Result;
458
+ decodeFunctionResult(functionFragment: "pairs", data: BytesLike): Result;
459
+ decodeFunctionResult(functionFragment: "removePriceImpactOpenInterest", data: BytesLike): Result;
460
+ decodeFunctionResult(functionFragment: "setGroupParams", data: BytesLike): Result;
461
+ decodeFunctionResult(functionFragment: "setGroupParamsArray", data: BytesLike): Result;
462
+ decodeFunctionResult(functionFragment: "setPairParams", data: BytesLike): Result;
463
+ decodeFunctionResult(functionFragment: "setPairParamsArray", data: BytesLike): Result;
464
+ decodeFunctionResult(functionFragment: "setPriceImpactWindowsCount", data: BytesLike): Result;
465
+ decodeFunctionResult(functionFragment: "setPriceImpactWindowsDuration", data: BytesLike): Result;
466
+ decodeFunctionResult(functionFragment: "storageT", data: BytesLike): Result;
467
+ decodeFunctionResult(functionFragment: "withinMaxGroupOi", data: BytesLike): Result;
468
+ events: {
469
+ "GroupAccFeesUpdated(uint16,uint256,uint64,uint64)": EventFragment;
470
+ "GroupOiUpdated(uint16,bool,bool,uint112,uint112,uint112)": EventFragment;
471
+ "GroupUpdated(uint16,uint32,uint72,uint48)": EventFragment;
472
+ "Initialized(uint8)": EventFragment;
473
+ "OiWindowsSettingsInitialized(uint48)": EventFragment;
474
+ "PairAccFeesUpdated(uint256,uint256,uint64,uint64)": EventFragment;
475
+ "PairGroupUpdated(uint256,uint16,uint16)": EventFragment;
476
+ "PairParamsUpdated(uint256,uint16,uint32,uint48,uint72)": EventFragment;
477
+ "PriceImpactOiTransferredPair(uint256,tuple)": EventFragment;
478
+ "PriceImpactOiTransferredPairs(uint256,uint256,uint256,uint256)": EventFragment;
479
+ "PriceImpactOpenInterestAdded(tuple)": EventFragment;
480
+ "PriceImpactOpenInterestRemoved(tuple,bool)": EventFragment;
481
+ "PriceImpactWindowsCountUpdated(uint48)": EventFragment;
482
+ "PriceImpactWindowsDurationUpdated(uint48)": EventFragment;
483
+ "TradeActionHandled(address,uint256,uint256,bool,bool,uint256)": EventFragment;
484
+ "TradeInitialAccFeesStored(address,uint256,uint256,uint64,uint64)": EventFragment;
485
+ };
486
+ getEvent(nameOrSignatureOrTopic: "GroupAccFeesUpdated"): EventFragment;
487
+ getEvent(nameOrSignatureOrTopic: "GroupOiUpdated"): EventFragment;
488
+ getEvent(nameOrSignatureOrTopic: "GroupUpdated"): EventFragment;
489
+ getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment;
490
+ getEvent(nameOrSignatureOrTopic: "OiWindowsSettingsInitialized"): EventFragment;
491
+ getEvent(nameOrSignatureOrTopic: "PairAccFeesUpdated"): EventFragment;
492
+ getEvent(nameOrSignatureOrTopic: "PairGroupUpdated"): EventFragment;
493
+ getEvent(nameOrSignatureOrTopic: "PairParamsUpdated"): EventFragment;
494
+ getEvent(nameOrSignatureOrTopic: "PriceImpactOiTransferredPair"): EventFragment;
495
+ getEvent(nameOrSignatureOrTopic: "PriceImpactOiTransferredPairs"): EventFragment;
496
+ getEvent(nameOrSignatureOrTopic: "PriceImpactOpenInterestAdded"): EventFragment;
497
+ getEvent(nameOrSignatureOrTopic: "PriceImpactOpenInterestRemoved"): EventFragment;
498
+ getEvent(nameOrSignatureOrTopic: "PriceImpactWindowsCountUpdated"): EventFragment;
499
+ getEvent(nameOrSignatureOrTopic: "PriceImpactWindowsDurationUpdated"): EventFragment;
500
+ getEvent(nameOrSignatureOrTopic: "TradeActionHandled"): EventFragment;
501
+ getEvent(nameOrSignatureOrTopic: "TradeInitialAccFeesStored"): EventFragment;
502
+ }
503
+ export interface GroupAccFeesUpdatedEventObject {
504
+ groupIndex: number;
505
+ currentBlock: BigNumber;
506
+ accFeeLong: BigNumber;
507
+ accFeeShort: BigNumber;
508
+ }
509
+ export type GroupAccFeesUpdatedEvent = TypedEvent<[
510
+ number,
511
+ BigNumber,
512
+ BigNumber,
513
+ BigNumber
514
+ ], GroupAccFeesUpdatedEventObject>;
515
+ export type GroupAccFeesUpdatedEventFilter = TypedEventFilter<GroupAccFeesUpdatedEvent>;
516
+ export interface GroupOiUpdatedEventObject {
517
+ groupIndex: number;
518
+ long: boolean;
519
+ increase: boolean;
520
+ amount: BigNumber;
521
+ oiLong: BigNumber;
522
+ oiShort: BigNumber;
523
+ }
524
+ export type GroupOiUpdatedEvent = TypedEvent<[
525
+ number,
526
+ boolean,
527
+ boolean,
528
+ BigNumber,
529
+ BigNumber,
530
+ BigNumber
531
+ ], GroupOiUpdatedEventObject>;
532
+ export type GroupOiUpdatedEventFilter = TypedEventFilter<GroupOiUpdatedEvent>;
533
+ export interface GroupUpdatedEventObject {
534
+ groupIndex: number;
535
+ feePerBlock: number;
536
+ maxOi: BigNumber;
537
+ feeExponent: number;
538
+ }
539
+ export type GroupUpdatedEvent = TypedEvent<[
540
+ number,
541
+ number,
542
+ BigNumber,
543
+ number
544
+ ], GroupUpdatedEventObject>;
545
+ export type GroupUpdatedEventFilter = TypedEventFilter<GroupUpdatedEvent>;
546
+ export interface InitializedEventObject {
547
+ version: number;
548
+ }
549
+ export type InitializedEvent = TypedEvent<[number], InitializedEventObject>;
550
+ export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
551
+ export interface OiWindowsSettingsInitializedEventObject {
552
+ windowsDuration: number;
553
+ }
554
+ export type OiWindowsSettingsInitializedEvent = TypedEvent<[
555
+ number
556
+ ], OiWindowsSettingsInitializedEventObject>;
557
+ export type OiWindowsSettingsInitializedEventFilter = TypedEventFilter<OiWindowsSettingsInitializedEvent>;
558
+ export interface PairAccFeesUpdatedEventObject {
559
+ pairIndex: BigNumber;
560
+ currentBlock: BigNumber;
561
+ accFeeLong: BigNumber;
562
+ accFeeShort: BigNumber;
563
+ }
564
+ export type PairAccFeesUpdatedEvent = TypedEvent<[
565
+ BigNumber,
566
+ BigNumber,
567
+ BigNumber,
568
+ BigNumber
569
+ ], PairAccFeesUpdatedEventObject>;
570
+ export type PairAccFeesUpdatedEventFilter = TypedEventFilter<PairAccFeesUpdatedEvent>;
571
+ export interface PairGroupUpdatedEventObject {
572
+ pairIndex: BigNumber;
573
+ prevGroupIndex: number;
574
+ newGroupIndex: number;
575
+ }
576
+ export type PairGroupUpdatedEvent = TypedEvent<[
577
+ BigNumber,
578
+ number,
579
+ number
580
+ ], PairGroupUpdatedEventObject>;
581
+ export type PairGroupUpdatedEventFilter = TypedEventFilter<PairGroupUpdatedEvent>;
582
+ export interface PairParamsUpdatedEventObject {
583
+ pairIndex: BigNumber;
584
+ groupIndex: number;
585
+ feePerBlock: number;
586
+ feeExponent: number;
587
+ maxOi: BigNumber;
588
+ }
589
+ export type PairParamsUpdatedEvent = TypedEvent<[
590
+ BigNumber,
591
+ number,
592
+ number,
593
+ number,
594
+ BigNumber
595
+ ], PairParamsUpdatedEventObject>;
596
+ export type PairParamsUpdatedEventFilter = TypedEventFilter<PairParamsUpdatedEvent>;
597
+ export interface PriceImpactOiTransferredPairEventObject {
598
+ pairIndex: BigNumber;
599
+ totalPairOi: PriceImpactUtils.PairOiStructOutput;
600
+ }
601
+ export type PriceImpactOiTransferredPairEvent = TypedEvent<[
602
+ BigNumber,
603
+ PriceImpactUtils.PairOiStructOutput
604
+ ], PriceImpactOiTransferredPairEventObject>;
605
+ export type PriceImpactOiTransferredPairEventFilter = TypedEventFilter<PriceImpactOiTransferredPairEvent>;
606
+ export interface PriceImpactOiTransferredPairsEventObject {
607
+ pairsCount: BigNumber;
608
+ prevCurrentWindowId: BigNumber;
609
+ prevEarliestWindowId: BigNumber;
610
+ newCurrentWindowId: BigNumber;
611
+ }
612
+ export type PriceImpactOiTransferredPairsEvent = TypedEvent<[
613
+ BigNumber,
614
+ BigNumber,
615
+ BigNumber,
616
+ BigNumber
617
+ ], PriceImpactOiTransferredPairsEventObject>;
618
+ export type PriceImpactOiTransferredPairsEventFilter = TypedEventFilter<PriceImpactOiTransferredPairsEvent>;
619
+ export interface PriceImpactOpenInterestAddedEventObject {
620
+ oiWindowUpdate: PriceImpactUtils.OiWindowUpdateStructOutput;
621
+ }
622
+ export type PriceImpactOpenInterestAddedEvent = TypedEvent<[
623
+ PriceImpactUtils.OiWindowUpdateStructOutput
624
+ ], PriceImpactOpenInterestAddedEventObject>;
625
+ export type PriceImpactOpenInterestAddedEventFilter = TypedEventFilter<PriceImpactOpenInterestAddedEvent>;
626
+ export interface PriceImpactOpenInterestRemovedEventObject {
627
+ oiWindowUpdate: PriceImpactUtils.OiWindowUpdateStructOutput;
628
+ notOutdated: boolean;
629
+ }
630
+ export type PriceImpactOpenInterestRemovedEvent = TypedEvent<[
631
+ PriceImpactUtils.OiWindowUpdateStructOutput,
632
+ boolean
633
+ ], PriceImpactOpenInterestRemovedEventObject>;
634
+ export type PriceImpactOpenInterestRemovedEventFilter = TypedEventFilter<PriceImpactOpenInterestRemovedEvent>;
635
+ export interface PriceImpactWindowsCountUpdatedEventObject {
636
+ windowsCount: number;
637
+ }
638
+ export type PriceImpactWindowsCountUpdatedEvent = TypedEvent<[
639
+ number
640
+ ], PriceImpactWindowsCountUpdatedEventObject>;
641
+ export type PriceImpactWindowsCountUpdatedEventFilter = TypedEventFilter<PriceImpactWindowsCountUpdatedEvent>;
642
+ export interface PriceImpactWindowsDurationUpdatedEventObject {
643
+ windowsDuration: number;
644
+ }
645
+ export type PriceImpactWindowsDurationUpdatedEvent = TypedEvent<[
646
+ number
647
+ ], PriceImpactWindowsDurationUpdatedEventObject>;
648
+ export type PriceImpactWindowsDurationUpdatedEventFilter = TypedEventFilter<PriceImpactWindowsDurationUpdatedEvent>;
649
+ export interface TradeActionHandledEventObject {
650
+ trader: string;
651
+ pairIndex: BigNumber;
652
+ index: BigNumber;
653
+ open: boolean;
654
+ long: boolean;
655
+ positionSizeDai: BigNumber;
656
+ }
657
+ export type TradeActionHandledEvent = TypedEvent<[
658
+ string,
659
+ BigNumber,
660
+ BigNumber,
661
+ boolean,
662
+ boolean,
663
+ BigNumber
664
+ ], TradeActionHandledEventObject>;
665
+ export type TradeActionHandledEventFilter = TypedEventFilter<TradeActionHandledEvent>;
666
+ export interface TradeInitialAccFeesStoredEventObject {
667
+ trader: string;
668
+ pairIndex: BigNumber;
669
+ index: BigNumber;
670
+ initialPairAccFee: BigNumber;
671
+ initialGroupAccFee: BigNumber;
672
+ }
673
+ export type TradeInitialAccFeesStoredEvent = TypedEvent<[
674
+ string,
675
+ BigNumber,
676
+ BigNumber,
677
+ BigNumber,
678
+ BigNumber
679
+ ], TradeInitialAccFeesStoredEventObject>;
680
+ export type TradeInitialAccFeesStoredEventFilter = TypedEventFilter<TradeInitialAccFeesStoredEvent>;
681
+ export interface GNSBorrowingFees extends BaseContract {
682
+ connect(signerOrProvider: Signer | Provider | string): this;
683
+ attach(addressOrName: string): this;
684
+ deployed(): Promise<this>;
685
+ interface: GNSBorrowingFeesInterface;
686
+ queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
687
+ listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
688
+ listeners(eventName?: string): Array<Listener>;
689
+ removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
690
+ removeAllListeners(eventName?: string): this;
691
+ off: OnEvent<this>;
692
+ on: OnEvent<this>;
693
+ once: OnEvent<this>;
694
+ removeListener: OnEvent<this>;
695
+ functions: {
696
+ addPriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: Overrides & {
697
+ from?: PromiseOrValue<string>;
698
+ }): Promise<ContractTransaction>;
699
+ getAllPairs(overrides?: CallOverrides): Promise<[
700
+ IGNSBorrowingFees.PairStructOutput[],
701
+ IGNSBorrowingFees.PairOiStructOutput[]
702
+ ]>;
703
+ getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput, number]>;
704
+ getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber] & {
705
+ accFee: BigNumber;
706
+ }>;
707
+ getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
708
+ BigNumber,
709
+ BigNumber,
710
+ BigNumber
711
+ ] & {
712
+ accFeeLong: BigNumber;
713
+ accFeeShort: BigNumber;
714
+ groupAccFeeDelta: BigNumber;
715
+ }>;
716
+ getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput[], number[]]>;
717
+ getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[PriceImpactUtils.PairOiStructOutput]>;
718
+ getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[PriceImpactUtils.PairOiStructOutput[]]>;
719
+ getOiWindowsSettings(overrides?: CallOverrides): Promise<[PriceImpactUtils.OiWindowsSettingsStructOutput]>;
720
+ getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
721
+ IGNSBorrowingFees.PairStructOutput,
722
+ IGNSBorrowingFees.PairOiStructOutput
723
+ ]>;
724
+ getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
725
+ BigNumber,
726
+ BigNumber,
727
+ boolean
728
+ ] & {
729
+ deltaGroup: BigNumber;
730
+ deltaPair: BigNumber;
731
+ beforeTradeOpen: boolean;
732
+ }>;
733
+ getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number] & {
734
+ groupIndex: number;
735
+ }>;
736
+ getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
737
+ getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>;
738
+ getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber] & {
739
+ accFee: BigNumber;
740
+ }>;
741
+ getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
742
+ BigNumber,
743
+ BigNumber,
744
+ BigNumber
745
+ ] & {
746
+ accFeeLong: BigNumber;
747
+ accFeeShort: BigNumber;
748
+ pairAccFeeDelta: BigNumber;
749
+ }>;
750
+ getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<[
751
+ BigNumber,
752
+ BigNumber,
753
+ BigNumber
754
+ ] & {
755
+ newAccFeeLong: BigNumber;
756
+ newAccFeeShort: BigNumber;
757
+ delta: BigNumber;
758
+ }>;
759
+ getPriceImpactOi(_pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber] & {
760
+ activeOi: BigNumber;
761
+ }>;
762
+ getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<[BigNumber] & {
763
+ fee: BigNumber;
764
+ }>;
765
+ getTradeInitialAccFees(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
766
+ IGNSBorrowingFees.InitialAccFeesStructOutput,
767
+ IGNSPairInfos.TradeInitialAccFeesStructOutput
768
+ ] & {
769
+ borrowingFees: IGNSBorrowingFees.InitialAccFeesStructOutput;
770
+ otherFees: IGNSPairInfos.TradeInitialAccFeesStructOutput;
771
+ }>;
772
+ getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<[BigNumber]>;
773
+ getTradePriceImpact(_openPrice: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _tradeOpenInterest: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
774
+ BigNumber,
775
+ BigNumber
776
+ ] & {
777
+ priceImpactP: BigNumber;
778
+ priceAfterImpact: BigNumber;
779
+ }>;
780
+ groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number]>;
781
+ groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
782
+ BigNumber,
783
+ BigNumber,
784
+ number,
785
+ BigNumber,
786
+ BigNumber,
787
+ number,
788
+ BigNumber,
789
+ BigNumber
790
+ ] & {
791
+ oiLong: BigNumber;
792
+ oiShort: BigNumber;
793
+ feePerBlock: number;
794
+ accFeeLong: BigNumber;
795
+ accFeeShort: BigNumber;
796
+ accLastUpdatedBlock: number;
797
+ maxOi: BigNumber;
798
+ lastAccBlockWeightedMarketCap: BigNumber;
799
+ }>;
800
+ handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
801
+ from?: PromiseOrValue<string>;
802
+ }): Promise<ContractTransaction>;
803
+ initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
804
+ BigNumber,
805
+ BigNumber,
806
+ number,
807
+ BigNumber
808
+ ] & {
809
+ accPairFee: BigNumber;
810
+ accGroupFee: BigNumber;
811
+ block: number;
812
+ _placeholder: BigNumber;
813
+ }>;
814
+ initialize(_storageT: PromiseOrValue<string>, _pairInfos: PromiseOrValue<string>, overrides?: Overrides & {
815
+ from?: PromiseOrValue<string>;
816
+ }): Promise<ContractTransaction>;
817
+ initializeV2(_windowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
818
+ from?: PromiseOrValue<string>;
819
+ }): Promise<ContractTransaction>;
820
+ pairInfos(overrides?: CallOverrides): Promise<[string]>;
821
+ pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
822
+ BigNumber,
823
+ BigNumber,
824
+ BigNumber,
825
+ number
826
+ ] & {
827
+ long: BigNumber;
828
+ short: BigNumber;
829
+ max: BigNumber;
830
+ _placeholder: number;
831
+ }>;
832
+ pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
833
+ number,
834
+ BigNumber,
835
+ BigNumber,
836
+ number,
837
+ number,
838
+ BigNumber
839
+ ] & {
840
+ feePerBlock: number;
841
+ accFeeLong: BigNumber;
842
+ accFeeShort: BigNumber;
843
+ accLastUpdatedBlock: number;
844
+ feeExponent: number;
845
+ lastAccBlockWeightedMarketCap: BigNumber;
846
+ }>;
847
+ removePriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _addTs: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
848
+ from?: PromiseOrValue<string>;
849
+ }): Promise<ContractTransaction>;
850
+ setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
851
+ from?: PromiseOrValue<string>;
852
+ }): Promise<ContractTransaction>;
853
+ setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
854
+ from?: PromiseOrValue<string>;
855
+ }): Promise<ContractTransaction>;
856
+ setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
857
+ from?: PromiseOrValue<string>;
858
+ }): Promise<ContractTransaction>;
859
+ setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
860
+ from?: PromiseOrValue<string>;
861
+ }): Promise<ContractTransaction>;
862
+ setPriceImpactWindowsCount(_newWindowsCount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
863
+ from?: PromiseOrValue<string>;
864
+ }): Promise<ContractTransaction>;
865
+ setPriceImpactWindowsDuration(_newWindowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
866
+ from?: PromiseOrValue<string>;
867
+ }): Promise<ContractTransaction>;
868
+ storageT(overrides?: CallOverrides): Promise<[string]>;
869
+ withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[boolean]>;
870
+ };
871
+ addPriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: Overrides & {
872
+ from?: PromiseOrValue<string>;
873
+ }): Promise<ContractTransaction>;
874
+ getAllPairs(overrides?: CallOverrides): Promise<[
875
+ IGNSBorrowingFees.PairStructOutput[],
876
+ IGNSBorrowingFees.PairOiStructOutput[]
877
+ ]>;
878
+ getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput, number]>;
879
+ getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
880
+ getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
881
+ BigNumber,
882
+ BigNumber,
883
+ BigNumber
884
+ ] & {
885
+ accFeeLong: BigNumber;
886
+ accFeeShort: BigNumber;
887
+ groupAccFeeDelta: BigNumber;
888
+ }>;
889
+ getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput[], number[]]>;
890
+ getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PriceImpactUtils.PairOiStructOutput>;
891
+ getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PriceImpactUtils.PairOiStructOutput[]>;
892
+ getOiWindowsSettings(overrides?: CallOverrides): Promise<PriceImpactUtils.OiWindowsSettingsStructOutput>;
893
+ getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
894
+ IGNSBorrowingFees.PairStructOutput,
895
+ IGNSBorrowingFees.PairOiStructOutput
896
+ ]>;
897
+ getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
898
+ BigNumber,
899
+ BigNumber,
900
+ boolean
901
+ ] & {
902
+ deltaGroup: BigNumber;
903
+ deltaPair: BigNumber;
904
+ beforeTradeOpen: boolean;
905
+ }>;
906
+ getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
907
+ getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
908
+ getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>;
909
+ getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
910
+ getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
911
+ BigNumber,
912
+ BigNumber,
913
+ BigNumber
914
+ ] & {
915
+ accFeeLong: BigNumber;
916
+ accFeeShort: BigNumber;
917
+ pairAccFeeDelta: BigNumber;
918
+ }>;
919
+ getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<[
920
+ BigNumber,
921
+ BigNumber,
922
+ BigNumber
923
+ ] & {
924
+ newAccFeeLong: BigNumber;
925
+ newAccFeeShort: BigNumber;
926
+ delta: BigNumber;
927
+ }>;
928
+ getPriceImpactOi(_pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
929
+ getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
930
+ getTradeInitialAccFees(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
931
+ IGNSBorrowingFees.InitialAccFeesStructOutput,
932
+ IGNSPairInfos.TradeInitialAccFeesStructOutput
933
+ ] & {
934
+ borrowingFees: IGNSBorrowingFees.InitialAccFeesStructOutput;
935
+ otherFees: IGNSPairInfos.TradeInitialAccFeesStructOutput;
936
+ }>;
937
+ getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
938
+ getTradePriceImpact(_openPrice: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _tradeOpenInterest: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
939
+ BigNumber,
940
+ BigNumber
941
+ ] & {
942
+ priceImpactP: BigNumber;
943
+ priceAfterImpact: BigNumber;
944
+ }>;
945
+ groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
946
+ groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
947
+ BigNumber,
948
+ BigNumber,
949
+ number,
950
+ BigNumber,
951
+ BigNumber,
952
+ number,
953
+ BigNumber,
954
+ BigNumber
955
+ ] & {
956
+ oiLong: BigNumber;
957
+ oiShort: BigNumber;
958
+ feePerBlock: number;
959
+ accFeeLong: BigNumber;
960
+ accFeeShort: BigNumber;
961
+ accLastUpdatedBlock: number;
962
+ maxOi: BigNumber;
963
+ lastAccBlockWeightedMarketCap: BigNumber;
964
+ }>;
965
+ handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
966
+ from?: PromiseOrValue<string>;
967
+ }): Promise<ContractTransaction>;
968
+ initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
969
+ BigNumber,
970
+ BigNumber,
971
+ number,
972
+ BigNumber
973
+ ] & {
974
+ accPairFee: BigNumber;
975
+ accGroupFee: BigNumber;
976
+ block: number;
977
+ _placeholder: BigNumber;
978
+ }>;
979
+ initialize(_storageT: PromiseOrValue<string>, _pairInfos: PromiseOrValue<string>, overrides?: Overrides & {
980
+ from?: PromiseOrValue<string>;
981
+ }): Promise<ContractTransaction>;
982
+ initializeV2(_windowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
983
+ from?: PromiseOrValue<string>;
984
+ }): Promise<ContractTransaction>;
985
+ pairInfos(overrides?: CallOverrides): Promise<string>;
986
+ pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
987
+ BigNumber,
988
+ BigNumber,
989
+ BigNumber,
990
+ number
991
+ ] & {
992
+ long: BigNumber;
993
+ short: BigNumber;
994
+ max: BigNumber;
995
+ _placeholder: number;
996
+ }>;
997
+ pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
998
+ number,
999
+ BigNumber,
1000
+ BigNumber,
1001
+ number,
1002
+ number,
1003
+ BigNumber
1004
+ ] & {
1005
+ feePerBlock: number;
1006
+ accFeeLong: BigNumber;
1007
+ accFeeShort: BigNumber;
1008
+ accLastUpdatedBlock: number;
1009
+ feeExponent: number;
1010
+ lastAccBlockWeightedMarketCap: BigNumber;
1011
+ }>;
1012
+ removePriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _addTs: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1013
+ from?: PromiseOrValue<string>;
1014
+ }): Promise<ContractTransaction>;
1015
+ setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
1016
+ from?: PromiseOrValue<string>;
1017
+ }): Promise<ContractTransaction>;
1018
+ setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
1019
+ from?: PromiseOrValue<string>;
1020
+ }): Promise<ContractTransaction>;
1021
+ setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
1022
+ from?: PromiseOrValue<string>;
1023
+ }): Promise<ContractTransaction>;
1024
+ setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
1025
+ from?: PromiseOrValue<string>;
1026
+ }): Promise<ContractTransaction>;
1027
+ setPriceImpactWindowsCount(_newWindowsCount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1028
+ from?: PromiseOrValue<string>;
1029
+ }): Promise<ContractTransaction>;
1030
+ setPriceImpactWindowsDuration(_newWindowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1031
+ from?: PromiseOrValue<string>;
1032
+ }): Promise<ContractTransaction>;
1033
+ storageT(overrides?: CallOverrides): Promise<string>;
1034
+ withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
1035
+ callStatic: {
1036
+ addPriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
1037
+ getAllPairs(overrides?: CallOverrides): Promise<[
1038
+ IGNSBorrowingFees.PairStructOutput[],
1039
+ IGNSBorrowingFees.PairOiStructOutput[]
1040
+ ]>;
1041
+ getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput, number]>;
1042
+ getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
1043
+ getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1044
+ BigNumber,
1045
+ BigNumber,
1046
+ BigNumber
1047
+ ] & {
1048
+ accFeeLong: BigNumber;
1049
+ accFeeShort: BigNumber;
1050
+ groupAccFeeDelta: BigNumber;
1051
+ }>;
1052
+ getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IGNSBorrowingFees.GroupStructOutput[], number[]]>;
1053
+ getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PriceImpactUtils.PairOiStructOutput>;
1054
+ getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PriceImpactUtils.PairOiStructOutput[]>;
1055
+ getOiWindowsSettings(overrides?: CallOverrides): Promise<PriceImpactUtils.OiWindowsSettingsStructOutput>;
1056
+ getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1057
+ IGNSBorrowingFees.PairStructOutput,
1058
+ IGNSBorrowingFees.PairOiStructOutput
1059
+ ]>;
1060
+ getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1061
+ BigNumber,
1062
+ BigNumber,
1063
+ boolean
1064
+ ] & {
1065
+ deltaGroup: BigNumber;
1066
+ deltaPair: BigNumber;
1067
+ beforeTradeOpen: boolean;
1068
+ }>;
1069
+ getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
1070
+ getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1071
+ getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber, BigNumber]>;
1072
+ getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
1073
+ getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1074
+ BigNumber,
1075
+ BigNumber,
1076
+ BigNumber
1077
+ ] & {
1078
+ accFeeLong: BigNumber;
1079
+ accFeeShort: BigNumber;
1080
+ pairAccFeeDelta: BigNumber;
1081
+ }>;
1082
+ getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<[
1083
+ BigNumber,
1084
+ BigNumber,
1085
+ BigNumber
1086
+ ] & {
1087
+ newAccFeeLong: BigNumber;
1088
+ newAccFeeShort: BigNumber;
1089
+ delta: BigNumber;
1090
+ }>;
1091
+ getPriceImpactOi(_pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
1092
+ getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
1093
+ getTradeInitialAccFees(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1094
+ IGNSBorrowingFees.InitialAccFeesStructOutput,
1095
+ IGNSPairInfos.TradeInitialAccFeesStructOutput
1096
+ ] & {
1097
+ borrowingFees: IGNSBorrowingFees.InitialAccFeesStructOutput;
1098
+ otherFees: IGNSPairInfos.TradeInitialAccFeesStructOutput;
1099
+ }>;
1100
+ getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
1101
+ getTradePriceImpact(_openPrice: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _tradeOpenInterest: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1102
+ BigNumber,
1103
+ BigNumber
1104
+ ] & {
1105
+ priceImpactP: BigNumber;
1106
+ priceAfterImpact: BigNumber;
1107
+ }>;
1108
+ groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>;
1109
+ groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1110
+ BigNumber,
1111
+ BigNumber,
1112
+ number,
1113
+ BigNumber,
1114
+ BigNumber,
1115
+ number,
1116
+ BigNumber,
1117
+ BigNumber
1118
+ ] & {
1119
+ oiLong: BigNumber;
1120
+ oiShort: BigNumber;
1121
+ feePerBlock: number;
1122
+ accFeeLong: BigNumber;
1123
+ accFeeShort: BigNumber;
1124
+ accLastUpdatedBlock: number;
1125
+ maxOi: BigNumber;
1126
+ lastAccBlockWeightedMarketCap: BigNumber;
1127
+ }>;
1128
+ handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
1129
+ initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1130
+ BigNumber,
1131
+ BigNumber,
1132
+ number,
1133
+ BigNumber
1134
+ ] & {
1135
+ accPairFee: BigNumber;
1136
+ accGroupFee: BigNumber;
1137
+ block: number;
1138
+ _placeholder: BigNumber;
1139
+ }>;
1140
+ initialize(_storageT: PromiseOrValue<string>, _pairInfos: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
1141
+ initializeV2(_windowsDuration: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
1142
+ pairInfos(overrides?: CallOverrides): Promise<string>;
1143
+ pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1144
+ BigNumber,
1145
+ BigNumber,
1146
+ BigNumber,
1147
+ number
1148
+ ] & {
1149
+ long: BigNumber;
1150
+ short: BigNumber;
1151
+ max: BigNumber;
1152
+ _placeholder: number;
1153
+ }>;
1154
+ pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
1155
+ number,
1156
+ BigNumber,
1157
+ BigNumber,
1158
+ number,
1159
+ number,
1160
+ BigNumber
1161
+ ] & {
1162
+ feePerBlock: number;
1163
+ accFeeLong: BigNumber;
1164
+ accFeeShort: BigNumber;
1165
+ accLastUpdatedBlock: number;
1166
+ feeExponent: number;
1167
+ lastAccBlockWeightedMarketCap: BigNumber;
1168
+ }>;
1169
+ removePriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _addTs: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
1170
+ setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: CallOverrides): Promise<void>;
1171
+ setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: CallOverrides): Promise<void>;
1172
+ setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: CallOverrides): Promise<void>;
1173
+ setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: CallOverrides): Promise<void>;
1174
+ setPriceImpactWindowsCount(_newWindowsCount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
1175
+ setPriceImpactWindowsDuration(_newWindowsDuration: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
1176
+ storageT(overrides?: CallOverrides): Promise<string>;
1177
+ withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
1178
+ };
1179
+ filters: {
1180
+ "GroupAccFeesUpdated(uint16,uint256,uint64,uint64)"(groupIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): GroupAccFeesUpdatedEventFilter;
1181
+ GroupAccFeesUpdated(groupIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): GroupAccFeesUpdatedEventFilter;
1182
+ "GroupOiUpdated(uint16,bool,bool,uint112,uint112,uint112)"(groupIndex?: PromiseOrValue<BigNumberish> | null, long?: PromiseOrValue<boolean> | null, increase?: PromiseOrValue<boolean> | null, amount?: null, oiLong?: null, oiShort?: null): GroupOiUpdatedEventFilter;
1183
+ GroupOiUpdated(groupIndex?: PromiseOrValue<BigNumberish> | null, long?: PromiseOrValue<boolean> | null, increase?: PromiseOrValue<boolean> | null, amount?: null, oiLong?: null, oiShort?: null): GroupOiUpdatedEventFilter;
1184
+ "GroupUpdated(uint16,uint32,uint72,uint48)"(groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, maxOi?: null, feeExponent?: null): GroupUpdatedEventFilter;
1185
+ GroupUpdated(groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, maxOi?: null, feeExponent?: null): GroupUpdatedEventFilter;
1186
+ "Initialized(uint8)"(version?: null): InitializedEventFilter;
1187
+ Initialized(version?: null): InitializedEventFilter;
1188
+ "OiWindowsSettingsInitialized(uint48)"(windowsDuration?: PromiseOrValue<BigNumberish> | null): OiWindowsSettingsInitializedEventFilter;
1189
+ OiWindowsSettingsInitialized(windowsDuration?: PromiseOrValue<BigNumberish> | null): OiWindowsSettingsInitializedEventFilter;
1190
+ "PairAccFeesUpdated(uint256,uint256,uint64,uint64)"(pairIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): PairAccFeesUpdatedEventFilter;
1191
+ PairAccFeesUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, currentBlock?: null, accFeeLong?: null, accFeeShort?: null): PairAccFeesUpdatedEventFilter;
1192
+ "PairGroupUpdated(uint256,uint16,uint16)"(pairIndex?: PromiseOrValue<BigNumberish> | null, prevGroupIndex?: PromiseOrValue<BigNumberish> | null, newGroupIndex?: PromiseOrValue<BigNumberish> | null): PairGroupUpdatedEventFilter;
1193
+ PairGroupUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, prevGroupIndex?: PromiseOrValue<BigNumberish> | null, newGroupIndex?: PromiseOrValue<BigNumberish> | null): PairGroupUpdatedEventFilter;
1194
+ "PairParamsUpdated(uint256,uint16,uint32,uint48,uint72)"(pairIndex?: PromiseOrValue<BigNumberish> | null, groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, feeExponent?: null, maxOi?: null): PairParamsUpdatedEventFilter;
1195
+ PairParamsUpdated(pairIndex?: PromiseOrValue<BigNumberish> | null, groupIndex?: PromiseOrValue<BigNumberish> | null, feePerBlock?: null, feeExponent?: null, maxOi?: null): PairParamsUpdatedEventFilter;
1196
+ "PriceImpactOiTransferredPair(uint256,tuple)"(pairIndex?: PromiseOrValue<BigNumberish> | null, totalPairOi?: null): PriceImpactOiTransferredPairEventFilter;
1197
+ PriceImpactOiTransferredPair(pairIndex?: PromiseOrValue<BigNumberish> | null, totalPairOi?: null): PriceImpactOiTransferredPairEventFilter;
1198
+ "PriceImpactOiTransferredPairs(uint256,uint256,uint256,uint256)"(pairsCount?: null, prevCurrentWindowId?: null, prevEarliestWindowId?: null, newCurrentWindowId?: null): PriceImpactOiTransferredPairsEventFilter;
1199
+ PriceImpactOiTransferredPairs(pairsCount?: null, prevCurrentWindowId?: null, prevEarliestWindowId?: null, newCurrentWindowId?: null): PriceImpactOiTransferredPairsEventFilter;
1200
+ "PriceImpactOpenInterestAdded(tuple)"(oiWindowUpdate?: null): PriceImpactOpenInterestAddedEventFilter;
1201
+ PriceImpactOpenInterestAdded(oiWindowUpdate?: null): PriceImpactOpenInterestAddedEventFilter;
1202
+ "PriceImpactOpenInterestRemoved(tuple,bool)"(oiWindowUpdate?: null, notOutdated?: null): PriceImpactOpenInterestRemovedEventFilter;
1203
+ PriceImpactOpenInterestRemoved(oiWindowUpdate?: null, notOutdated?: null): PriceImpactOpenInterestRemovedEventFilter;
1204
+ "PriceImpactWindowsCountUpdated(uint48)"(windowsCount?: PromiseOrValue<BigNumberish> | null): PriceImpactWindowsCountUpdatedEventFilter;
1205
+ PriceImpactWindowsCountUpdated(windowsCount?: PromiseOrValue<BigNumberish> | null): PriceImpactWindowsCountUpdatedEventFilter;
1206
+ "PriceImpactWindowsDurationUpdated(uint48)"(windowsDuration?: PromiseOrValue<BigNumberish> | null): PriceImpactWindowsDurationUpdatedEventFilter;
1207
+ PriceImpactWindowsDurationUpdated(windowsDuration?: PromiseOrValue<BigNumberish> | null): PriceImpactWindowsDurationUpdatedEventFilter;
1208
+ "TradeActionHandled(address,uint256,uint256,bool,bool,uint256)"(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, open?: null, long?: null, positionSizeDai?: null): TradeActionHandledEventFilter;
1209
+ TradeActionHandled(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, open?: null, long?: null, positionSizeDai?: null): TradeActionHandledEventFilter;
1210
+ "TradeInitialAccFeesStored(address,uint256,uint256,uint64,uint64)"(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, initialPairAccFee?: null, initialGroupAccFee?: null): TradeInitialAccFeesStoredEventFilter;
1211
+ TradeInitialAccFeesStored(trader?: PromiseOrValue<string> | null, pairIndex?: PromiseOrValue<BigNumberish> | null, index?: null, initialPairAccFee?: null, initialGroupAccFee?: null): TradeInitialAccFeesStoredEventFilter;
1212
+ };
1213
+ estimateGas: {
1214
+ addPriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: Overrides & {
1215
+ from?: PromiseOrValue<string>;
1216
+ }): Promise<BigNumber>;
1217
+ getAllPairs(overrides?: CallOverrides): Promise<BigNumber>;
1218
+ getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1219
+ getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
1220
+ getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1221
+ getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
1222
+ getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1223
+ getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
1224
+ getOiWindowsSettings(overrides?: CallOverrides): Promise<BigNumber>;
1225
+ getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1226
+ getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1227
+ getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1228
+ getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1229
+ getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1230
+ getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
1231
+ getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1232
+ getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
1233
+ getPriceImpactOi(_pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>;
1234
+ getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
1235
+ getTradeInitialAccFees(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1236
+ getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<BigNumber>;
1237
+ getTradePriceImpact(_openPrice: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _tradeOpenInterest: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1238
+ groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1239
+ groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1240
+ handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
1241
+ from?: PromiseOrValue<string>;
1242
+ }): Promise<BigNumber>;
1243
+ initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1244
+ initialize(_storageT: PromiseOrValue<string>, _pairInfos: PromiseOrValue<string>, overrides?: Overrides & {
1245
+ from?: PromiseOrValue<string>;
1246
+ }): Promise<BigNumber>;
1247
+ initializeV2(_windowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1248
+ from?: PromiseOrValue<string>;
1249
+ }): Promise<BigNumber>;
1250
+ pairInfos(overrides?: CallOverrides): Promise<BigNumber>;
1251
+ pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1252
+ pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1253
+ removePriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _addTs: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1254
+ from?: PromiseOrValue<string>;
1255
+ }): Promise<BigNumber>;
1256
+ setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
1257
+ from?: PromiseOrValue<string>;
1258
+ }): Promise<BigNumber>;
1259
+ setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
1260
+ from?: PromiseOrValue<string>;
1261
+ }): Promise<BigNumber>;
1262
+ setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
1263
+ from?: PromiseOrValue<string>;
1264
+ }): Promise<BigNumber>;
1265
+ setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
1266
+ from?: PromiseOrValue<string>;
1267
+ }): Promise<BigNumber>;
1268
+ setPriceImpactWindowsCount(_newWindowsCount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1269
+ from?: PromiseOrValue<string>;
1270
+ }): Promise<BigNumber>;
1271
+ setPriceImpactWindowsDuration(_newWindowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1272
+ from?: PromiseOrValue<string>;
1273
+ }): Promise<BigNumber>;
1274
+ storageT(overrides?: CallOverrides): Promise<BigNumber>;
1275
+ withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
1276
+ };
1277
+ populateTransaction: {
1278
+ addPriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: Overrides & {
1279
+ from?: PromiseOrValue<string>;
1280
+ }): Promise<PopulatedTransaction>;
1281
+ getAllPairs(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1282
+ getGroup(groupIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1283
+ getGroupPendingAccFee(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1284
+ getGroupPendingAccFees(groupIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1285
+ getGroups(indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
1286
+ getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1287
+ getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
1288
+ getOiWindowsSettings(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1289
+ getPair(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1290
+ getPairGroupAccFeesDeltas(i: PromiseOrValue<BigNumberish>, pairGroups: IGNSBorrowingFees.PairGroupStruct[], initialFees: IGNSBorrowingFees.InitialAccFeesStruct, pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1291
+ getPairGroupIndex(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1292
+ getPairMaxOi(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1293
+ getPairOpenInterestDai(pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1294
+ getPairPendingAccFee(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1295
+ getPairPendingAccFees(pairIndex: PromiseOrValue<BigNumberish>, currentBlock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1296
+ getPendingAccFees(input: IGNSBorrowingFees.PendingAccFeesInputStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1297
+ getPriceImpactOi(_pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1298
+ getTradeBorrowingFee(input: IGNSBorrowingFees.BorrowingFeeInputStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1299
+ getTradeInitialAccFees(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1300
+ getTradeLiquidationPrice(input: IGNSBorrowingFees.LiqPriceInputStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1301
+ getTradePriceImpact(_openPrice: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _tradeOpenInterest: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1302
+ groupFeeExponents(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1303
+ groups(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1304
+ handleTradeAction(trader: PromiseOrValue<string>, pairIndex: PromiseOrValue<BigNumberish>, index: PromiseOrValue<BigNumberish>, positionSizeDai: PromiseOrValue<BigNumberish>, open: PromiseOrValue<boolean>, long: PromiseOrValue<boolean>, overrides?: Overrides & {
1305
+ from?: PromiseOrValue<string>;
1306
+ }): Promise<PopulatedTransaction>;
1307
+ initialAccFees(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<BigNumberish>, arg2: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1308
+ initialize(_storageT: PromiseOrValue<string>, _pairInfos: PromiseOrValue<string>, overrides?: Overrides & {
1309
+ from?: PromiseOrValue<string>;
1310
+ }): Promise<PopulatedTransaction>;
1311
+ initializeV2(_windowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1312
+ from?: PromiseOrValue<string>;
1313
+ }): Promise<PopulatedTransaction>;
1314
+ pairInfos(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1315
+ pairOis(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1316
+ pairs(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1317
+ removePriceImpactOpenInterest(_openInterest: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _long: PromiseOrValue<boolean>, _addTs: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1318
+ from?: PromiseOrValue<string>;
1319
+ }): Promise<PopulatedTransaction>;
1320
+ setGroupParams(groupIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.GroupParamsStruct, overrides?: Overrides & {
1321
+ from?: PromiseOrValue<string>;
1322
+ }): Promise<PopulatedTransaction>;
1323
+ setGroupParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.GroupParamsStruct[], overrides?: Overrides & {
1324
+ from?: PromiseOrValue<string>;
1325
+ }): Promise<PopulatedTransaction>;
1326
+ setPairParams(pairIndex: PromiseOrValue<BigNumberish>, value: IGNSBorrowingFees.PairParamsStruct, overrides?: Overrides & {
1327
+ from?: PromiseOrValue<string>;
1328
+ }): Promise<PopulatedTransaction>;
1329
+ setPairParamsArray(indices: PromiseOrValue<BigNumberish>[], values: IGNSBorrowingFees.PairParamsStruct[], overrides?: Overrides & {
1330
+ from?: PromiseOrValue<string>;
1331
+ }): Promise<PopulatedTransaction>;
1332
+ setPriceImpactWindowsCount(_newWindowsCount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1333
+ from?: PromiseOrValue<string>;
1334
+ }): Promise<PopulatedTransaction>;
1335
+ setPriceImpactWindowsDuration(_newWindowsDuration: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
1336
+ from?: PromiseOrValue<string>;
1337
+ }): Promise<PopulatedTransaction>;
1338
+ storageT(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1339
+ withinMaxGroupOi(pairIndex: PromiseOrValue<BigNumberish>, long: PromiseOrValue<boolean>, positionSizeDai: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
1340
+ };
1341
+ }