@affluent-org/sdk 0.0.2 → 0.0.3

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 (104) hide show
  1. package/dist/build/Account.compiled.json +1 -0
  2. package/dist/build/Receipt.compiled.json +1 -0
  3. package/dist/build/WTONWallet.compiled.json +1 -0
  4. package/dist/common/cache.d.ts +16 -0
  5. package/dist/common/cache.js +96 -0
  6. package/dist/common/service.d.ts +20 -0
  7. package/dist/common/service.js +69 -0
  8. package/dist/common/type.d.ts +14 -0
  9. package/dist/common/type.js +2 -0
  10. package/dist/common/unknown-contract.d.ts +14 -0
  11. package/dist/common/unknown-contract.js +18 -0
  12. package/dist/common/versions.d.ts +14 -0
  13. package/dist/common/versions.js +22 -0
  14. package/dist/constants/pool.d.ts +1 -0
  15. package/dist/constants/pool.js +2 -0
  16. package/dist/contracts/_mock/simple-oracle.d.ts +34 -0
  17. package/dist/contracts/_mock/simple-oracle.js +73 -0
  18. package/dist/contracts/vault/share-vault/type.d.ts +30 -0
  19. package/dist/contracts/vault/share-vault/type.js +2 -0
  20. package/dist/contracts/vault/strategy-vault/utils.d.ts +6 -0
  21. package/dist/contracts/vault/strategy-vault/utils.js +32 -0
  22. package/dist/factorial.d.ts +14 -0
  23. package/dist/factorial.js +20 -0
  24. package/dist/farm.d.ts +92 -0
  25. package/dist/farm.js +209 -0
  26. package/dist/monitor.d.ts +57 -0
  27. package/dist/monitor.js +527 -0
  28. package/dist/monitorCacheV1.d.ts +52 -0
  29. package/dist/monitorCacheV1.js +504 -0
  30. package/dist/oracle/oracle-v2.d.ts +39 -0
  31. package/dist/oracle/oracle-v2.js +151 -0
  32. package/dist/oracle/oracle.d.ts +107 -0
  33. package/dist/oracle/oracle.js +392 -0
  34. package/dist/periphery.d.ts +259 -0
  35. package/dist/periphery.js +1087 -0
  36. package/dist/pool.d.ts +216 -0
  37. package/dist/pool.js +2298 -0
  38. package/dist/poolCacheV1.d.ts +139 -0
  39. package/dist/poolCacheV1.js +1841 -0
  40. package/dist/rfq-auction.d.ts +75 -0
  41. package/dist/rfq-auction.js +220 -0
  42. package/dist/rfq-batch.d.ts +112 -0
  43. package/dist/rfq-batch.js +284 -0
  44. package/dist/services/share-vault/computation.d.ts +14 -17
  45. package/dist/services/share-vault/computation.js +39 -0
  46. package/dist/services/share-vault/index.js +6 -3
  47. package/dist/services/share-vault/query.d.ts +38 -8
  48. package/dist/services/share-vault/query.js +20 -27
  49. package/dist/services/share-vault/type.d.ts +19 -0
  50. package/dist/services/share-vault/type.js +2 -0
  51. package/dist/services/share-vault/user/index.js +3 -1
  52. package/dist/services/strategy-vault/computation.d.ts +1 -0
  53. package/dist/services/strategy-vault/computation.js +15 -0
  54. package/dist/services/strategy-vault/query.d.ts +147 -0
  55. package/dist/services/strategy-vault/query.js +67 -0
  56. package/dist/services/strategy-vault/type.d.ts +2 -0
  57. package/dist/services/strategy-vault/type.js +2 -0
  58. package/dist/share-vault.d.ts +91 -0
  59. package/dist/share-vault.js +747 -0
  60. package/dist/stonfi.d.ts +18 -0
  61. package/dist/stonfi.js +76 -0
  62. package/dist/strategy_vault/base.d.ts +399 -0
  63. package/dist/strategy_vault/base.js +1199 -0
  64. package/dist/strategy_vault/index.d.ts +3 -0
  65. package/dist/strategy_vault/index.js +7 -0
  66. package/dist/strategy_vault/steps.d.ts +49 -0
  67. package/dist/strategy_vault/steps.js +170 -0
  68. package/dist/types/action.d.ts +55 -0
  69. package/dist/types/action.js +2 -0
  70. package/dist/types/messages.d.ts +7 -0
  71. package/dist/types/messages.js +2 -0
  72. package/dist/types/params.d.ts +19 -0
  73. package/dist/types/params.js +2 -0
  74. package/dist/types/pool.d.ts +83 -0
  75. package/dist/types/pool.js +2 -0
  76. package/dist/types/transaction.d.ts +40 -0
  77. package/dist/types/transaction.js +2 -0
  78. package/dist/utils/_parse_temp/JumpIRM.d.ts +37 -0
  79. package/dist/utils/_parse_temp/JumpIRM.js +71 -0
  80. package/dist/utils/_parse_temp/Pool.d.ts +559 -0
  81. package/dist/utils/_parse_temp/Pool.js +1023 -0
  82. package/dist/utils/_parse_temp/ShareVault.d.ts +264 -0
  83. package/dist/utils/_parse_temp/ShareVault.js +479 -0
  84. package/dist/utils/_parse_temp/StrategyVault.d.ts +729 -0
  85. package/dist/utils/_parse_temp/StrategyVault.js +1865 -0
  86. package/dist/utils/_parse_temp/parseMsgBody.d.ts +13 -0
  87. package/dist/utils/_parse_temp/parseMsgBody.js +313 -0
  88. package/dist/utils/assert.d.ts +1 -0
  89. package/dist/utils/assert.js +9 -0
  90. package/dist/utils/client-for-parameter.d.ts +12 -0
  91. package/dist/utils/client-for-parameter.js +97 -0
  92. package/dist/utils/oracle/index.d.ts +4 -0
  93. package/dist/utils/oracle/index.js +19 -0
  94. package/dist/utils/oracle/redstone/helper.d.ts +22 -0
  95. package/dist/utils/oracle/redstone/helper.js +186 -0
  96. package/dist/utils/tracer.d.ts +13 -0
  97. package/dist/utils/tracer.js +137 -0
  98. package/dist/utils/tracker/index.d.ts +5 -0
  99. package/dist/utils/tracker/index.js +118 -0
  100. package/dist/utils/tracker/query-id-generactor.d.ts +2 -0
  101. package/dist/utils/tracker/query-id-generactor.js +12 -0
  102. package/dist/utils/tracker/type.d.ts +34 -0
  103. package/dist/utils/tracker/type.js +2 -0
  104. package/package.json +1 -1
@@ -0,0 +1,729 @@
1
+ import { Address, Builder, Cell, Contract, ContractProvider, Dictionary, Sender, Slice } from '@ton/core';
2
+ export type StrategyVaultConfig = {
3
+ ownerAddress: Address;
4
+ assets: Cell | null;
5
+ positions: Cell | null;
6
+ aggregatorIndex: bigint;
7
+ rfqIndex: bigint;
8
+ totalSupply: bigint;
9
+ collectedManagementFee: bigint;
10
+ collectedProtocolFee: bigint;
11
+ isExecutingStrategy: boolean;
12
+ config: {
13
+ protocolFeeManagerAddress: Address;
14
+ managerAddress: Address;
15
+ isPrivateVault: boolean;
16
+ depositCloseTimestamp: bigint;
17
+ withdrawOpenTimestamp: bigint;
18
+ whitelistedMinters: Cell | null;
19
+ lastCollectTime: bigint;
20
+ managementFeeRate: bigint;
21
+ protocolFeeRate: bigint;
22
+ content: Cell;
23
+ maxLeverageRatio: bigint;
24
+ assetWalletDict: Cell | null;
25
+ walletAssetDict: Cell | null;
26
+ oracleConfig?: Cell | null;
27
+ rfqConfig?: Cell | null;
28
+ gasConfig?: Cell | null;
29
+ guardianAddress?: Address;
30
+ managementFeeRecipientAddress?: Address;
31
+ timelock?: bigint;
32
+ };
33
+ code: {
34
+ walletCode: Cell;
35
+ poolAggregatorCode: Cell;
36
+ rfqCode: Cell;
37
+ };
38
+ };
39
+ export declare function strategyVaultConfigToCell(config: StrategyVaultConfig): Cell;
40
+ export declare class StrategyVault implements Contract {
41
+ readonly address: Address;
42
+ readonly init?: {
43
+ code: Cell;
44
+ data: Cell;
45
+ } | undefined;
46
+ constructor(address: Address, init?: {
47
+ code: Cell;
48
+ data: Cell;
49
+ } | undefined);
50
+ static Op: {
51
+ QueueOwnerAction: number;
52
+ ExecuteOwnerAction: number;
53
+ RevertOwnerAction: number;
54
+ SetOwnerAddress: number;
55
+ SetAssetConfig: number;
56
+ SetFactorialPoolConfig: number;
57
+ SetManagerAddress: number;
58
+ SetPrivateVault: number;
59
+ SetDepositCloseTimestamp: number;
60
+ SetWithdrawOpenTimestamp: number;
61
+ SetWhitelistedMinters: number;
62
+ SetManagementFeeRatePerYear: number;
63
+ SetMaxLeverageRatio: number;
64
+ SetRfqConfig: number;
65
+ SetGasConfig: number;
66
+ SetOracleConfig: number;
67
+ SetWalletCode: number;
68
+ SetDataAggregatorCode: number;
69
+ SetRfqCode: number;
70
+ SetContent: number;
71
+ UpgradeCode: number;
72
+ SetGuardianAddress: number;
73
+ SetTimelock: number;
74
+ SetManagementFeeRecipientAddress: number;
75
+ IncreaseBalance: number;
76
+ ClaimProtocolFee: number;
77
+ SetProtocolFeeRatePerYear: number;
78
+ SetProtocolFeeManagerAddress: number;
79
+ ClaimManagementFee: number;
80
+ UpgradeVersion: number;
81
+ ForwardMessage: number;
82
+ TransferTon: number;
83
+ SetWhitelistedPoolsRaw: number;
84
+ Initialize: number;
85
+ SupplyToFactorial: number;
86
+ WithdrawFromFactorial: number;
87
+ BorrowFromFactorial: number;
88
+ RepayToFactorial: number;
89
+ LiquidateToFactorial: number;
90
+ Deposit: number;
91
+ Withdraw: number;
92
+ CreateRfq: number;
93
+ ExecuteStrategy: number;
94
+ TakeAggregatedData: number;
95
+ CancelRfq: number;
96
+ Excesses: number;
97
+ };
98
+ static Error: {
99
+ NotEnoughBalance: number;
100
+ NotEnoughCash: number;
101
+ NotSuppliableAsset: number;
102
+ NotBorrowableAsset: number;
103
+ ExceededMaxLeverageRatio: number;
104
+ ClosedDeposit: number;
105
+ ClosedWithdraw: number;
106
+ Unauthorized: number;
107
+ AlreadyExecutingStrategy: number;
108
+ TypeCheckError: number;
109
+ CellUnderflow: number;
110
+ InvalidWalletAddress: number;
111
+ NotWhitelistedMinter: number;
112
+ NotWhitelistedAsset: number;
113
+ NotDepositableAsset: number;
114
+ NotWithdrawableAsset: number;
115
+ InvalidAsset: number;
116
+ VaultPriceNotFound: number;
117
+ NotFoundAssetPrice: number;
118
+ NotFoundPoolAssetTotals: number;
119
+ NotFoundAssetTotals: number;
120
+ NotFoundVaultPrice: number;
121
+ NotFoundGasConfig: number;
122
+ NotEnoughGas: number;
123
+ InvalidOp: number;
124
+ ExceededExposureCap: number;
125
+ InvalidRfqPeriod: number;
126
+ InvalidConfig: number;
127
+ InvalidPendingOwnerActionIndex: number;
128
+ NotYetExecutable: number;
129
+ ExceededMaxPendingOwnerActionCount: number;
130
+ };
131
+ static GasKey: {
132
+ Deposit: number;
133
+ Withdraw: number;
134
+ IncreaseBalance: number;
135
+ FactorialTransferIn: number;
136
+ FactorialTransferOut: number;
137
+ CreateRfq: number;
138
+ FactorialLiquidate: number;
139
+ RFQInitialize: number;
140
+ RFQNotification: number;
141
+ RFQDeposit: number;
142
+ JettonTransfer: number;
143
+ ExecuteStrategy: number;
144
+ ClaimFee: number;
145
+ DepositLogic: number;
146
+ WithdrawLogic: number;
147
+ };
148
+ static emptyGasDictionary(): Dictionary<number, bigint>;
149
+ static createFromAddress(address: Address): StrategyVault;
150
+ static createFromConfig(config: StrategyVaultConfig, code: Cell, workchain?: number): StrategyVault;
151
+ sendDeploy(provider: ContractProvider, via: Sender, value: bigint): Promise<void>;
152
+ sendInitialize(provider: ContractProvider, via: Sender, value: bigint, opts: {
153
+ queryID?: number;
154
+ }): Promise<void>;
155
+ sendExecuteStrategy(provider: ContractProvider, via: Sender, value: bigint, opts: {
156
+ body: Builder;
157
+ queryID?: number;
158
+ }): Promise<void>;
159
+ sendLiquidateToFactorial(provider: ContractProvider, via: Sender, value: bigint, opts: {
160
+ oracleParams: Cell;
161
+ pool: Address;
162
+ borrower: Address;
163
+ repayAsset: Address;
164
+ seizeAsset: Address;
165
+ repayAmount: bigint;
166
+ response: Address;
167
+ queryID?: number;
168
+ }): Promise<void>;
169
+ sendSupplyToFactorial(provider: ContractProvider, via: Sender, value: bigint, opts: {
170
+ pool: Address;
171
+ asset: Address;
172
+ amount: bigint;
173
+ response: Address;
174
+ queryID?: number;
175
+ }): Promise<void>;
176
+ sendWithdrawFromFactorial(provider: ContractProvider, via: Sender, value: bigint, opts: {
177
+ oracleParams: Cell;
178
+ pool: Address;
179
+ asset: Address;
180
+ amount: bigint;
181
+ isShare: boolean;
182
+ response: Address;
183
+ queryID?: number;
184
+ }): Promise<void>;
185
+ sendBorrowFromFactorial(provider: ContractProvider, via: Sender, value: bigint, opts: {
186
+ oracleParams: Cell;
187
+ pool: Address;
188
+ asset: Address;
189
+ amount: bigint;
190
+ isShare: boolean;
191
+ response: Address;
192
+ queryID?: number;
193
+ }): Promise<void>;
194
+ sendRepayToFactorial(provider: ContractProvider, via: Sender, value: bigint, opts: {
195
+ pool: Address;
196
+ asset: Address;
197
+ amount: bigint;
198
+ response: Address;
199
+ queryID?: number;
200
+ }): Promise<void>;
201
+ sendCreateRFQ(provider: ContractProvider, via: Sender, value: bigint, opts: {
202
+ rfqIndex: bigint;
203
+ sellAsset: Address;
204
+ buyAsset: Address;
205
+ sellAssetAmount: bigint;
206
+ minBuyAssetValue: bigint;
207
+ maxBuyAssetValue: bigint;
208
+ sellAssetRFQWallet: Address;
209
+ buyAssetRFQWallet: Address;
210
+ oracleParams: Cell;
211
+ period: number;
212
+ allowSellerCancel: boolean;
213
+ allowBidderCancel: boolean;
214
+ isAmountBid: boolean;
215
+ queryID?: number;
216
+ }): Promise<void>;
217
+ sendCancelRFQ(provider: ContractProvider, via: Sender, value: bigint, opts: {
218
+ rfqIndex: bigint;
219
+ queryID?: number;
220
+ }): Promise<void>;
221
+ sendSetAssetConfig(provider: ContractProvider, via: Sender, value: bigint, opts: {
222
+ assetAddress: Address;
223
+ isWhitelisted: boolean;
224
+ isDepositable: boolean;
225
+ isWithdrawable: boolean;
226
+ exposureCap: number;
227
+ queryID?: number;
228
+ }): Promise<void>;
229
+ sendSetFactorialPoolConfig(provider: ContractProvider, via: Sender, value: bigint, opts: {
230
+ updateConfig?: Cell;
231
+ queryID?: number;
232
+ }): Promise<void>;
233
+ sendClaimManagementFee(provider: ContractProvider, via: Sender, value: bigint, opts: {
234
+ receiverAddress: Address;
235
+ queryID?: number;
236
+ }): Promise<void>;
237
+ sendClaimProtocolFee(provider: ContractProvider, via: Sender, value: bigint, opts: {
238
+ receiverAddress: Address;
239
+ queryID?: number;
240
+ }): Promise<void>;
241
+ getState(provider: ContractProvider): Promise<import("@ton/core").ContractState>;
242
+ getWalletAddress(provider: ContractProvider, address: Address): Promise<Address>;
243
+ getRfqAddress(provider: ContractProvider, index: bigint): Promise<Address>;
244
+ static createFactorialPoolConfig(params: [Address, Address, boolean, boolean][]): Dictionary<Address, FactorialPool>;
245
+ static createFactorialPoolUpdateConfig(params: [Address, Address, boolean, boolean][]): Dictionary<Address, any>;
246
+ static createAssetConfig(params: [Address, boolean, boolean, boolean, number][]): Dictionary<Address, Asset>;
247
+ getVaultData(provider: ContractProvider): Promise<{
248
+ address: Address;
249
+ owner: Address;
250
+ manager: Address;
251
+ assets: Record<string, Asset>;
252
+ factorialPools: Record<string, FactorialPool>;
253
+ aggregatorIndex: bigint;
254
+ content: Cell;
255
+ totalSupply: bigint;
256
+ oracleConfig: Cell | null;
257
+ rfqConfig: {
258
+ priceDeviationTolerance: number;
259
+ eventEmitter: Address | null;
260
+ } | null;
261
+ gasConfig: Cell | null;
262
+ isPrivateVault: boolean;
263
+ depositCloseTimestamp: number;
264
+ withdrawOpenTimestamp: number;
265
+ whitelistedMinters: Dictionary<Address, Boolean>;
266
+ lastCollectTime: number;
267
+ managementFeeRatePerYear: number;
268
+ protocolFeeRatePerYear: number;
269
+ collectedManagementFee: bigint;
270
+ collectedProtocolFee: bigint;
271
+ rfqCode: Cell;
272
+ walletCode: Cell;
273
+ dataAggregatorCode: Cell;
274
+ protocolFeeManagerAddress: Address;
275
+ rfqIndex: bigint;
276
+ isExecutingStrategy: boolean;
277
+ maxLeverageRatio: number;
278
+ assetWalletDict: Record<string, string>;
279
+ walletAssetDict: Record<string, string>;
280
+ managementFeeRecipientAddress: Address | null;
281
+ guardianAddress: Address | null;
282
+ timelock: bigint;
283
+ pendingOwnerActionIndex: bigint;
284
+ pendingOwnerActionCount: bigint;
285
+ pendingOwnerAction: any;
286
+ getFactorialPoolAsset: (poolAddress: Address, assetAddress: Address) => FactorialPoolShare;
287
+ getAsset: (assetAddress: Address) => Asset;
288
+ }>;
289
+ static Dictionary: {
290
+ Values: {
291
+ Asset: () => {
292
+ serialize: (src: Asset, builder: Builder) => Builder;
293
+ parse: (src: Slice) => Asset;
294
+ };
295
+ FactorialPool: () => {
296
+ serialize: (src: FactorialPool, builder: Builder) => Builder;
297
+ parse: (src: Slice) => FactorialPool;
298
+ };
299
+ FactorialPoolAsset: () => {
300
+ serialize: (src: FactorialPoolShare, builder: Builder) => Builder;
301
+ parse: (src: Slice) => FactorialPoolShare;
302
+ };
303
+ UpdateFactorialPool: () => {
304
+ serialize: (src: any, builder: Builder) => Builder;
305
+ parse: (src: Slice) => Record<string, {
306
+ isSupplyable: boolean;
307
+ isBorrowable: boolean;
308
+ }>;
309
+ };
310
+ UpdateFactorialPoolAsset: () => {
311
+ serialize: (src: any, builder: Builder) => Builder;
312
+ parse: (src: Slice) => {
313
+ isSupplyable: boolean;
314
+ isBorrowable: boolean;
315
+ };
316
+ };
317
+ Empty: () => {
318
+ serialize: (src: any, builder: Builder) => Builder;
319
+ parse: (src: Slice) => any;
320
+ };
321
+ PendingOwnerAction: () => {
322
+ serialize: (src: any, builder: Builder) => void;
323
+ parse: (src: Slice) => {
324
+ timelock: bigint;
325
+ op: number;
326
+ payloadHash: string;
327
+ };
328
+ };
329
+ };
330
+ };
331
+ sendSetOwnerAddress(provider: ContractProvider, via: Sender, value: bigint, opts: {
332
+ newOwner: Address;
333
+ queryID?: number;
334
+ }): Promise<void>;
335
+ sendSetManagementFeeRatePerYear(provider: ContractProvider, via: Sender, value: bigint, opts: {
336
+ managementFeeRate: number;
337
+ queryID?: number;
338
+ }): Promise<void>;
339
+ sendSetMaxLeverageRatio(provider: ContractProvider, via: Sender, value: bigint, opts: {
340
+ maxLeverageRatio: number;
341
+ queryID?: number;
342
+ }): Promise<void>;
343
+ sendSetRFQConfig(provider: ContractProvider, via: Sender, value: bigint, opts: {
344
+ rfqConfig?: Cell | null;
345
+ queryID?: number;
346
+ }): Promise<void>;
347
+ sendSetOracleConfig(provider: ContractProvider, via: Sender, value: bigint, opts: {
348
+ oracleConfig?: Cell | null;
349
+ queryID?: number;
350
+ }): Promise<void>;
351
+ sendSetWalletCode(provider: ContractProvider, via: Sender, value: bigint, opts: {
352
+ walletCode: Cell;
353
+ queryID?: number;
354
+ }): Promise<void>;
355
+ sendSetDataAggregatorCode(provider: ContractProvider, via: Sender, value: bigint, opts: {
356
+ dataAggregatorCode: Cell;
357
+ queryID?: number;
358
+ }): Promise<void>;
359
+ sendSetRFQCode(provider: ContractProvider, via: Sender, value: bigint, opts: {
360
+ rfqCode: Cell;
361
+ queryID?: number;
362
+ }): Promise<void>;
363
+ sendSetContent(provider: ContractProvider, via: Sender, value: bigint, opts: {
364
+ content: Cell;
365
+ queryID?: number;
366
+ }): Promise<void>;
367
+ sendUpgradeCode(provider: ContractProvider, via: Sender, value: bigint, opts: {
368
+ newCode: Cell;
369
+ queryID?: number;
370
+ }): Promise<void>;
371
+ sendSetManagerAddress(provider: ContractProvider, via: Sender, value: bigint, opts: {
372
+ managerAddress: Address;
373
+ queryID?: number;
374
+ }): Promise<void>;
375
+ sendSetPrivateVault(provider: ContractProvider, via: Sender, value: bigint, opts: {
376
+ isPrivateVault: boolean;
377
+ queryID?: number;
378
+ }): Promise<void>;
379
+ sendSetDepositCloseTimestamp(provider: ContractProvider, via: Sender, value: bigint, opts: {
380
+ depositCloseTimestamp: bigint;
381
+ queryID?: number;
382
+ }): Promise<void>;
383
+ sendSetWithdrawOpenTimestamp(provider: ContractProvider, via: Sender, value: bigint, opts: {
384
+ withdrawOpenTimestamp: bigint;
385
+ queryID?: number;
386
+ }): Promise<void>;
387
+ sendSetWhitelistedMinters(provider: ContractProvider, via: Sender, value: bigint, opts: {
388
+ whitelistedMinters?: Cell | null;
389
+ queryID?: number;
390
+ }): Promise<void>;
391
+ sendSetGasConfig(provider: ContractProvider, via: Sender, value: bigint, opts: {
392
+ gasConfig?: Cell | null;
393
+ queryID?: number;
394
+ }): Promise<void>;
395
+ sendExecuteOwnerAction(provider: ContractProvider, via: Sender, value: bigint, opts: {
396
+ queryID?: number;
397
+ updateIndex: bigint;
398
+ }): Promise<void>;
399
+ sendRevertOwnerAction(provider: ContractProvider, via: Sender, value: bigint, opts: {
400
+ queryID?: number;
401
+ updateIndex: bigint;
402
+ }): Promise<void>;
403
+ sendSetGuardianAddress(provider: ContractProvider, via: Sender, value: bigint, opts: {
404
+ guardianAddress: Address;
405
+ queryID?: number;
406
+ }): Promise<void>;
407
+ sendSetTimelock(provider: ContractProvider, via: Sender, value: bigint, opts: {
408
+ timelock: bigint;
409
+ queryID?: number;
410
+ }): Promise<void>;
411
+ sendSetManagementFeeRecipientAddress(provider: ContractProvider, via: Sender, value: bigint, opts: {
412
+ managementFeeRecipientAddress: Address;
413
+ queryID?: number;
414
+ }): Promise<void>;
415
+ static createDepositPayload(oracleParams: Cell, forwardTonAmount?: bigint, forwardPayload?: Cell): Cell;
416
+ static createWithdrawPayload(assetAddress: Address, oracleParams: Cell, forwardTonAmount?: bigint, forwardPayload?: Cell): Cell;
417
+ sendSetProtocolFeeRatePerYear(provider: ContractProvider, via: Sender, value: bigint, opts: {
418
+ protocolFeeRate: number;
419
+ queryID?: number;
420
+ }): Promise<void>;
421
+ sendSetProtocolFeeManagerAddress(provider: ContractProvider, via: Sender, value: bigint, opts: {
422
+ protocolFeeManagerAddress: Address;
423
+ queryID?: number;
424
+ }): Promise<void>;
425
+ static createRFQConfig(params: {
426
+ priceDeviationTolerance: number;
427
+ eventEmitter: Address;
428
+ }): Cell;
429
+ static getOpName(opCode: number): string;
430
+ static getErrorName(errorCode: number): string;
431
+ static getGasKeyName(gasKey: number): string;
432
+ static getAvailableActionsOriginal(): readonly ["SetOwnerAddress", "SetAssetConfig", "SetFactorialPoolConfig", "SetManagerAddress", "SetPrivateVault", "SetDepositCloseTimestamp", "SetWithdrawOpenTimestamp", "SetWhitelistedMinters", "SetManagementFeeRatePerYear", "SetMaxLeverageRatio", "SetRfqConfig", "SetGasConfig", "SetOracleConfig", "SetWalletCode", "SetDataAggregatorCode", "SetRfqCode", "SetContent", "UpgradeCode", "SetGuardianAddress", "SetTimelock", "SetManagementFeeRecipientAddress", "ClaimProtocolFee", "SetProtocolFeeRatePerYear", "SetProtocolFeeManagerAddress", "ClaimManagementFee", "ExecuteOwnerAction", "RevertOwnerAction", "Initialize", "SupplyToFactorial", "WithdrawFromFactorial", "BorrowFromFactorial", "RepayToFactorial", "LiquidateToFactorial", "CreateRfq", "CancelRfq", "TakeAggregatedData", "Excesses"];
433
+ static createInitializeMsgBody(queryID?: number): Cell;
434
+ static createExecuteStrategyMsgBody(body: Builder, queryID?: number): Cell;
435
+ static createLiquidateToFactorialMsgBody(oracleParams: Cell, pool: Address, borrower: Address, repayAsset: Address, seizeAsset: Address, repayAmount: bigint, response: Address, queryID?: number): Cell;
436
+ static createSupplyToFactorialMsgBody(pool: Address, asset: Address, amount: bigint, response: Address, queryID?: number): Cell;
437
+ static createWithdrawFromFactorialMsgBody(oracleParams: Cell, pool: Address, asset: Address, amount: bigint, isShare: boolean, response: Address, queryID?: number): Cell;
438
+ static createBorrowFromFactorialMsgBody(oracleParams: Cell, pool: Address, asset: Address, amount: bigint, isShare: boolean, response: Address, queryID?: number): Cell;
439
+ static createRepayToFactorialMsgBody(pool: Address, asset: Address, amount: bigint, response: Address, queryID?: number): Cell;
440
+ static createCreateRFQMsgBody(rfqIndex: bigint, sellAsset: Address, buyAsset: Address, sellAssetAmount: bigint, minBuyAssetValue: bigint, maxBuyAssetValue: bigint, sellAssetRFQWallet: Address, buyAssetRFQWallet: Address, oracleParams: Cell, period: number, allowSellerCancel: boolean, allowBidderCancel: boolean, isAmountBid: boolean, queryID?: number): Cell;
441
+ static createCancelRFQMsgBody(rfqIndex: bigint, queryID?: number): Cell;
442
+ static createSetAssetConfigMsgBody(assetAddress: Address, isWhitelisted: boolean, isDepositable: boolean, isWithdrawable: boolean, exposureCap: number, queryID?: number): Cell;
443
+ static createSetFactorialPoolConfigMsgBody(updateConfig?: Cell | null, queryID?: number): Cell;
444
+ static createClaimManagementFeeMsgBody(receiverAddress: Address, queryID?: number): Cell;
445
+ static createClaimProtocolFeeMsgBody(receiverAddress: Address, queryID?: number): Cell;
446
+ static createSetOwnerAddressMsgBody(newOwner: Address, queryID?: number): Cell;
447
+ static createSetManagementFeeRatePerYearMsgBody(managementFeeRate: number, queryID?: number): Cell;
448
+ static createSetMaxLeverageRatioMsgBody(maxLeverageRatio: number, queryID?: number): Cell;
449
+ static createSetRFQConfigMsgBody(rfqConfig?: Cell | null, queryID?: number): Cell;
450
+ static createSetOracleConfigMsgBody(oracleConfig?: Cell | null, queryID?: number): Cell;
451
+ static createSetWalletCodeMsgBody(walletCode: Cell, queryID?: number): Cell;
452
+ static createSetDataAggregatorCodeMsgBody(dataAggregatorCode: Cell, queryID?: number): Cell;
453
+ static createSetRFQCodeMsgBody(rfqCode: Cell, queryID?: number): Cell;
454
+ static createSetContentMsgBody(content: Cell, queryID?: number): Cell;
455
+ static createUpgradeCodeMsgBody(newCode: Cell, queryID?: number): Cell;
456
+ static createSetManagerAddressMsgBody(managerAddress: Address, queryID?: number): Cell;
457
+ static createSetPrivateVaultMsgBody(isPrivateVault: boolean, queryID?: number): Cell;
458
+ static createSetDepositCloseTimestampMsgBody(depositCloseTimestamp: bigint, queryID?: number): Cell;
459
+ static createSetWithdrawOpenTimestampMsgBody(withdrawOpenTimestamp: bigint, queryID?: number): Cell;
460
+ static createSetWhitelistedMintersMsgBody(whitelistedMinters?: Cell | null, queryID?: number): Cell;
461
+ static createSetGasConfigMsgBody(gasConfig?: Cell | null, queryID?: number): Cell;
462
+ static createExecuteOwnerActionMsgBody(updateIndex: bigint, queryID?: number): Cell;
463
+ static createRevertOwnerActionMsgBody(updateIndex: bigint, queryID?: number): Cell;
464
+ static createSetGuardianAddressMsgBody(guardianAddress: Address, queryID?: number): Cell;
465
+ static createSetTimelockMsgBody(timelock: bigint, queryID?: number): Cell;
466
+ static createSetManagementFeeRecipientAddressMsgBody(managementFeeRecipientAddress: Address, queryID?: number): Cell;
467
+ static createSetProtocolFeeRatePerYearMsgBody(protocolFeeRate: number, queryID?: number): Cell;
468
+ static createSetProtocolFeeManagerAddressMsgBody(protocolFeeManagerAddress: Address, queryID?: number): Cell;
469
+ static parseInitializeMsgBody(cell: Cell): {
470
+ op: number;
471
+ queryID: number;
472
+ };
473
+ static parseExecuteStrategyMsgBody(cell: Cell): {
474
+ op: number;
475
+ queryID: number;
476
+ body: Slice;
477
+ };
478
+ static parseLiquidateToFactorialMsgBody(cell: Cell): {
479
+ op: number;
480
+ queryID: number;
481
+ subOp: number;
482
+ oracleParams: Cell;
483
+ pool: Address;
484
+ borrower: Address;
485
+ repayAsset: Address;
486
+ seizeAsset: Address;
487
+ repayAmount: bigint;
488
+ response: Address;
489
+ };
490
+ static parseSupplyToFactorialMsgBody(cell: Cell): {
491
+ op: number;
492
+ queryID: number;
493
+ subOp: number;
494
+ pool: Address;
495
+ asset: Address;
496
+ amount: bigint;
497
+ response: Address;
498
+ };
499
+ static parseWithdrawFromFactorialMsgBody(cell: Cell): {
500
+ op: number;
501
+ queryID: number;
502
+ subOp: number;
503
+ oracleParams: Cell;
504
+ pool: Address;
505
+ asset: Address;
506
+ amount: bigint;
507
+ isShare: boolean;
508
+ response: Address;
509
+ };
510
+ static parseBorrowFromFactorialMsgBody(cell: Cell): {
511
+ op: number;
512
+ queryID: number;
513
+ subOp: number;
514
+ oracleParams: Cell;
515
+ pool: Address;
516
+ asset: Address;
517
+ amount: bigint;
518
+ isShare: boolean;
519
+ response: Address;
520
+ };
521
+ static parseRepayToFactorialMsgBody(cell: Cell): {
522
+ op: number;
523
+ queryID: number;
524
+ subOp: number;
525
+ pool: Address;
526
+ asset: Address;
527
+ amount: bigint;
528
+ response: Address;
529
+ };
530
+ static parseCreateRFQMsgBody(cell: Cell): {
531
+ op: number;
532
+ queryID: number;
533
+ subOp: number;
534
+ rfqIndex: bigint;
535
+ sellAsset: Address;
536
+ buyAsset: Address;
537
+ sellAssetAmount: bigint;
538
+ minBuyAssetValue: bigint;
539
+ maxBuyAssetValue: bigint;
540
+ sellAssetRFQWallet: Address;
541
+ buyAssetRFQWallet: Address;
542
+ oracleParams: Cell;
543
+ period: number;
544
+ allowSellerCancel: boolean;
545
+ allowBidderCancel: boolean;
546
+ isAmountBid: boolean;
547
+ };
548
+ static parseCancelRFQMsgBody(cell: Cell): {
549
+ op: number;
550
+ queryID: number;
551
+ subOp: number;
552
+ rfqIndex: bigint;
553
+ };
554
+ static parseSetAssetConfigMsgBody(cell: Cell): {
555
+ op: number;
556
+ queryID: number;
557
+ ownerOp: number;
558
+ assetAddress: Address;
559
+ isWhitelisted: boolean;
560
+ isDepositable: boolean;
561
+ isWithdrawable: boolean;
562
+ exposureCap: number;
563
+ };
564
+ static parseSetFactorialPoolConfigMsgBody(cell: Cell): {
565
+ op: number;
566
+ queryID: number;
567
+ ownerOp: number;
568
+ updateConfig?: Cell | null;
569
+ };
570
+ static parseClaimManagementFeeMsgBody(cell: Cell): {
571
+ op: number;
572
+ queryID: number;
573
+ receiverAddress: Address;
574
+ };
575
+ static parseClaimProtocolFeeMsgBody(cell: Cell): {
576
+ op: number;
577
+ queryID: number;
578
+ receiverAddress: Address;
579
+ };
580
+ static parseSetOwnerAddressMsgBody(cell: Cell): {
581
+ op: number;
582
+ queryID: number;
583
+ ownerOp: number;
584
+ newOwner: Address;
585
+ };
586
+ static parseSetManagementFeeRatePerYearMsgBody(cell: Cell): {
587
+ op: number;
588
+ queryID: number;
589
+ ownerOp: number;
590
+ managementFeeRate: number;
591
+ };
592
+ static parseSetMaxLeverageRatioMsgBody(cell: Cell): {
593
+ op: number;
594
+ queryID: number;
595
+ ownerOp: number;
596
+ maxLeverageRatio: number;
597
+ };
598
+ static parseSetRFQConfigMsgBody(cell: Cell): {
599
+ op: number;
600
+ queryID: number;
601
+ ownerOp: number;
602
+ rfqConfig?: Cell | null;
603
+ };
604
+ static parseSetOracleConfigMsgBody(cell: Cell): {
605
+ op: number;
606
+ queryID: number;
607
+ ownerOp: number;
608
+ oracleConfig?: Cell | null;
609
+ };
610
+ static parseSetWalletCodeMsgBody(cell: Cell): {
611
+ op: number;
612
+ queryID: number;
613
+ ownerOp: number;
614
+ walletCode: Cell;
615
+ };
616
+ static parseSetDataAggregatorCodeMsgBody(cell: Cell): {
617
+ op: number;
618
+ queryID: number;
619
+ ownerOp: number;
620
+ dataAggregatorCode: Cell;
621
+ };
622
+ static parseSetRFQCodeMsgBody(cell: Cell): {
623
+ op: number;
624
+ queryID: number;
625
+ ownerOp: number;
626
+ rfqCode: Cell;
627
+ };
628
+ static parseSetContentMsgBody(cell: Cell): {
629
+ op: number;
630
+ queryID: number;
631
+ ownerOp: number;
632
+ content: Cell;
633
+ };
634
+ static parseUpgradeCodeMsgBody(cell: Cell): {
635
+ op: number;
636
+ queryID: number;
637
+ ownerOp: number;
638
+ newCode: Cell;
639
+ };
640
+ static parseSetManagerAddressMsgBody(cell: Cell): {
641
+ op: number;
642
+ queryID: number;
643
+ ownerOp: number;
644
+ managerAddress: Address;
645
+ };
646
+ static parseSetPrivateVaultMsgBody(cell: Cell): {
647
+ op: number;
648
+ queryID: number;
649
+ ownerOp: number;
650
+ isPrivateVault: boolean;
651
+ };
652
+ static parseSetDepositCloseTimestampMsgBody(cell: Cell): {
653
+ op: number;
654
+ queryID: number;
655
+ ownerOp: number;
656
+ depositCloseTimestamp: bigint;
657
+ };
658
+ static parseSetWithdrawOpenTimestampMsgBody(cell: Cell): {
659
+ op: number;
660
+ queryID: number;
661
+ ownerOp: number;
662
+ withdrawOpenTimestamp: bigint;
663
+ };
664
+ static parseSetWhitelistedMintersMsgBody(cell: Cell): {
665
+ op: number;
666
+ queryID: number;
667
+ ownerOp: number;
668
+ whitelistedMinters?: Cell | null;
669
+ };
670
+ static parseSetGasConfigMsgBody(cell: Cell): {
671
+ op: number;
672
+ queryID: number;
673
+ ownerOp: number;
674
+ gasConfig?: Cell | null;
675
+ };
676
+ static parseExecuteOwnerActionMsgBody(cell: Cell): {
677
+ op: number;
678
+ queryID: number;
679
+ updateIndex: bigint;
680
+ };
681
+ static parseRevertOwnerActionMsgBody(cell: Cell): {
682
+ op: number;
683
+ queryID: number;
684
+ updateIndex: bigint;
685
+ };
686
+ static parseSetGuardianAddressMsgBody(cell: Cell): {
687
+ op: number;
688
+ queryID: number;
689
+ ownerOp: number;
690
+ guardianAddress: Address;
691
+ };
692
+ static parseSetTimelockMsgBody(cell: Cell): {
693
+ op: number;
694
+ queryID: number;
695
+ ownerOp: number;
696
+ timelock: bigint;
697
+ };
698
+ static parseSetManagementFeeRecipientAddressMsgBody(cell: Cell): {
699
+ op: number;
700
+ queryID: number;
701
+ ownerOp: number;
702
+ managementFeeRecipientAddress: Address;
703
+ };
704
+ static parseSetProtocolFeeRatePerYearMsgBody(cell: Cell): {
705
+ op: number;
706
+ queryID: number;
707
+ protocolFeeRate: number;
708
+ };
709
+ static parseSetProtocolFeeManagerAddressMsgBody(cell: Cell): {
710
+ op: number;
711
+ queryID: number;
712
+ protocolFeeManagerAddress: Address;
713
+ };
714
+ }
715
+ export type FactorialPoolShare = {
716
+ isSupplyable: boolean;
717
+ isBorrowable: boolean;
718
+ supply: bigint;
719
+ borrow: bigint;
720
+ };
721
+ export type FactorialPool = Record<string, FactorialPoolShare>;
722
+ export type Asset = {
723
+ isWhitelisted: boolean;
724
+ isDepositable: boolean;
725
+ isWithdrawable: boolean;
726
+ exposureCap: number;
727
+ cash: bigint;
728
+ balance: bigint;
729
+ };