@affluent-org/sdk 0.0.4 → 0.0.6

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 (110) hide show
  1. package/dist/affluent.d.ts +3 -3
  2. package/dist/affluent.js +3 -3
  3. package/dist/common/computation.d.ts +6 -0
  4. package/dist/common/computation.js +54 -0
  5. package/dist/common/helper.d.ts +5 -0
  6. package/dist/common/helper.js +29 -0
  7. package/dist/common/service.d.ts +10 -2
  8. package/dist/common/service.js +56 -3
  9. package/dist/common/trace-action.d.ts +92 -0
  10. package/dist/common/trace-action.js +187 -0
  11. package/dist/common/transform.d.ts +87 -0
  12. package/dist/common/transform.js +264 -0
  13. package/dist/common/types.d.ts +140 -0
  14. package/dist/common/types.js +11 -0
  15. package/dist/context.d.ts +3 -0
  16. package/dist/context.js +9 -0
  17. package/dist/contracts/oracle/redstone-onchain-oracle/index.js +2 -0
  18. package/dist/contracts/oracle/redstone-onchain-oracle/type.d.ts +1 -1
  19. package/dist/contracts/vault/strategy-vault/index.d.ts +2 -1
  20. package/dist/contracts/vault/strategy-vault/index.js +1 -0
  21. package/dist/factorial.d.ts +18 -8
  22. package/dist/factorial.js +26 -14
  23. package/dist/index.d.ts +4 -2
  24. package/dist/index.js +18 -2
  25. package/dist/lib/send-msg.d.ts +16 -2
  26. package/dist/lib/send-msg.js +23 -2
  27. package/dist/monitor.js +2 -0
  28. package/dist/monitorCacheV1.js +3 -2
  29. package/dist/oracle/oracle.d.ts +3 -2
  30. package/dist/oracle/oracle.js +25 -2
  31. package/dist/pool.d.ts +41 -0
  32. package/dist/pool.js +146 -178
  33. package/dist/poolCacheV1.js +1 -0
  34. package/dist/rfq-auction.d.ts +2 -2
  35. package/dist/rfq-auction.js +6 -6
  36. package/dist/rfq-batch.d.ts +21 -11
  37. package/dist/rfq-batch.js +81 -9
  38. package/dist/services/composite-oracle/codec.d.ts +76 -0
  39. package/dist/services/composite-oracle/codec.js +281 -0
  40. package/dist/services/composite-oracle/computation.d.ts +8 -19
  41. package/dist/services/composite-oracle/computation.js +119 -76
  42. package/dist/services/composite-oracle/index.d.ts +2 -2
  43. package/dist/services/composite-oracle/index.js +5 -6
  44. package/dist/services/composite-oracle/query.d.ts +6 -6
  45. package/dist/services/composite-oracle/query.js +6 -47
  46. package/dist/services/pool/computation.d.ts +3 -9
  47. package/dist/services/pool/computation.js +12 -78
  48. package/dist/services/pool/index.d.ts +10 -59
  49. package/dist/services/pool/index.js +55 -8
  50. package/dist/services/pool/oracle.d.ts +2 -2
  51. package/dist/services/pool/query.d.ts +1 -1
  52. package/dist/services/pool/query.js +1 -1
  53. package/dist/services/pool/user/trace.d.ts +90 -0
  54. package/dist/services/pool/user/trace.js +168 -0
  55. package/dist/services/rfq-auction/index.d.ts +7 -23
  56. package/dist/services/rfq-auction/index.js +45 -6
  57. package/dist/services/rfq-auction/oracle.d.ts +2 -2
  58. package/dist/services/rfq-auction/user/index.js +1 -1
  59. package/dist/services/rfq-auction/user/trace.d.ts +53 -0
  60. package/dist/services/rfq-auction/user/trace.js +68 -0
  61. package/dist/services/rfq-batch/index.d.ts +16 -13
  62. package/dist/services/rfq-batch/index.js +34 -10
  63. package/dist/services/rfq-batch/oracle.d.ts +2 -2
  64. package/dist/services/rfq-batch/user/trace.d.ts +49 -0
  65. package/dist/services/rfq-batch/user/trace.js +67 -0
  66. package/dist/services/share-vault/index.d.ts +14 -88
  67. package/dist/services/share-vault/index.js +37 -10
  68. package/dist/services/share-vault/query.d.ts +5 -32
  69. package/dist/services/share-vault/query.js +25 -12
  70. package/dist/services/share-vault/user/trace.d.ts +54 -0
  71. package/dist/services/share-vault/user/trace.js +84 -0
  72. package/dist/services/strategy-vault/index.d.ts +77 -2115
  73. package/dist/services/strategy-vault/index.js +119 -54
  74. package/dist/services/strategy-vault/oracle.d.ts +3 -3
  75. package/dist/services/strategy-vault/oracle.js +1 -0
  76. package/dist/services/strategy-vault/owner/index.d.ts +2 -2
  77. package/dist/services/strategy-vault/owner/index.js +1 -1
  78. package/dist/services/strategy-vault/owner/types.d.ts +4 -0
  79. package/dist/services/strategy-vault/query.d.ts +14 -143
  80. package/dist/services/strategy-vault/query.js +28 -40
  81. package/dist/services/strategy-vault/user/trace.d.ts +156 -0
  82. package/dist/services/strategy-vault/user/trace.js +264 -0
  83. package/dist/share-vault.d.ts +164 -8
  84. package/dist/share-vault.js +222 -67
  85. package/dist/strategy_vault/base.d.ts +521 -105
  86. package/dist/strategy_vault/base.js +493 -41
  87. package/dist/strategy_vault/steps.d.ts +120 -3
  88. package/dist/strategy_vault/steps.js +161 -0
  89. package/dist/types/sender.d.ts +1 -0
  90. package/dist/utils/_parse_temp/StrategyVault.d.ts +9 -9
  91. package/dist/utils/_parse_temp/StrategyVault.js +48 -40
  92. package/dist/utils/_parse_temp/parseMsgBody.d.ts +2 -2
  93. package/dist/utils/_parse_temp/parseMsgBody.js +84 -84
  94. package/dist/utils/external-message-hash.d.ts +7 -3
  95. package/dist/utils/external-message-hash.js +20 -7
  96. package/dist/utils/oracle/redstone/helper.js +2 -0
  97. package/dist/utils/oracle/redstone/redstoneHelper.d.ts +7 -0
  98. package/dist/utils/oracle/redstone/redstoneHelper.js +103 -1
  99. package/dist/utils/pending-tracker/trackable-sender.d.ts +37 -4
  100. package/dist/utils/pending-tracker/trackable-sender.js +47 -8
  101. package/dist/utils/pending-tracker/v3-client.d.ts +16 -0
  102. package/dist/utils/pending-tracker/v3-client.js +80 -2
  103. package/dist/utils/risk_calculator/risk_calculator.d.ts +3 -3
  104. package/dist/utils/toncenter/index.d.ts +1 -0
  105. package/dist/utils/toncenter/index.js +17 -0
  106. package/dist/utils/toncenter/transform.d.ts +11 -0
  107. package/dist/utils/toncenter/transform.js +40 -0
  108. package/dist/utils/toncenter/type.d.ts +227 -0
  109. package/dist/utils/toncenter/type.js +2 -0
  110. package/package.json +3 -3
@@ -0,0 +1,264 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VaultNativeAmountDecomposedContext = exports.VaultNativeValueDecomposedContext = exports.VaultValueContext = exports.VaultAmountContext = exports.VaultStateContext = exports.PoolContext = exports.PoolAsset = exports.AmountPosition = exports.ValuePosition = exports.SharePosition = exports.Position = void 0;
4
+ const pool_1 = require("../contracts/core/pool");
5
+ const share_vault_1 = require("../contracts/vault/share-vault");
6
+ const strategy_vault_1 = require("../contracts/vault/strategy-vault");
7
+ const helper_1 = require("./helper");
8
+ const computation_1 = require("../services/composite-oracle/computation");
9
+ class Position {
10
+ supply;
11
+ borrow;
12
+ constructor(supply = 0n, borrow = 0n) {
13
+ this.supply = supply;
14
+ this.borrow = borrow;
15
+ }
16
+ add(supply, borrow) {
17
+ return new this.constructor(this.supply + supply, this.borrow + borrow);
18
+ }
19
+ addPosition(position) {
20
+ return position
21
+ ? this.add(position.supply, position.borrow)
22
+ : this.clone();
23
+ }
24
+ muldiv(numerator, denominator) {
25
+ return new this.constructor(this.supply * numerator / denominator, this.borrow * numerator / denominator);
26
+ }
27
+ clone() {
28
+ return new this.constructor(this.supply, this.borrow);
29
+ }
30
+ cross(other, denominator) {
31
+ return new this.constructor((this.supply * other.supply + this.borrow * other.borrow) / denominator, (this.supply * other.borrow + this.borrow * other.supply) / denominator);
32
+ }
33
+ }
34
+ exports.Position = Position;
35
+ class SharePosition extends Position {
36
+ toAmountPosition(poolAsset) {
37
+ return new AmountPosition((0, pool_1.shareToAmount)(this.supply, poolAsset.amount.supply, poolAsset.share.supply), (0, pool_1.shareToAmount)(this.borrow, poolAsset.amount.borrow, poolAsset.share.borrow));
38
+ }
39
+ }
40
+ exports.SharePosition = SharePosition;
41
+ class ValuePosition extends Position {
42
+ toAmountPosition(price) {
43
+ return new AmountPosition(this.supply / price, this.borrow / price);
44
+ }
45
+ static from(data) {
46
+ return new this(data.supply, data.borrow);
47
+ }
48
+ net() {
49
+ return this.supply - this.borrow;
50
+ }
51
+ }
52
+ exports.ValuePosition = ValuePosition;
53
+ class AmountPosition extends Position {
54
+ toValuePosition(price) {
55
+ return new ValuePosition(this.supply * price, this.borrow * price);
56
+ }
57
+ net() {
58
+ return this.supply - this.borrow;
59
+ }
60
+ }
61
+ exports.AmountPosition = AmountPosition;
62
+ class PoolAsset {
63
+ amount;
64
+ share;
65
+ constructor(amount, share) {
66
+ this.amount = amount;
67
+ this.share = share;
68
+ }
69
+ }
70
+ exports.PoolAsset = PoolAsset;
71
+ class PoolContext {
72
+ address;
73
+ assets;
74
+ constructor(address, assets = {}) {
75
+ this.address = address;
76
+ this.assets = assets;
77
+ }
78
+ static fromPoolState(poolState) {
79
+ const assets = {};
80
+ Object.entries(poolState.assets)
81
+ .forEach(([asset, assetState]) => {
82
+ assets[asset] = {
83
+ amount: new AmountPosition(assetState.totalSupplyAmount, assetState.totalBorrowAmount),
84
+ share: new SharePosition(assetState.totalSupplyShare, assetState.totalBorrowShare),
85
+ };
86
+ });
87
+ return new this(poolState.address.toString(), assets);
88
+ }
89
+ getAmountFrom(address, share) {
90
+ const asset = this.assets[address];
91
+ if (!asset)
92
+ throw new Error(`Asset not found: ${address}`);
93
+ return new AmountPosition((0, pool_1.shareToAmount)(share.supply, asset.amount.supply, asset.share.supply), (0, pool_1.shareToAmount)(share.borrow, asset.amount.borrow, asset.share.borrow));
94
+ }
95
+ }
96
+ exports.PoolContext = PoolContext;
97
+ class VaultStateContext {
98
+ address;
99
+ totalSupply;
100
+ assets;
101
+ pools;
102
+ constructor(address, totalSupply, assets, pools) {
103
+ this.address = address;
104
+ this.totalSupply = totalSupply;
105
+ this.assets = assets;
106
+ this.pools = pools;
107
+ }
108
+ static fromShareVaultStateCell(address, cell) {
109
+ const vaultData = share_vault_1.ShareVault.parseVaultData(cell);
110
+ return this.fromShareVaultState({ address, ...vaultData });
111
+ }
112
+ static fromShareVaultState(vaultState) {
113
+ const asset = vaultState.asset.toString();
114
+ const assets = {
115
+ [asset]: new AmountPosition(vaultState.cash, 0n),
116
+ };
117
+ const pools = {};
118
+ Object.entries(vaultState.whitelistedPools)
119
+ .filter(([_pool, poolState]) => poolState.supply > 0n) // align with getExposures
120
+ .forEach(([pool, poolState]) => {
121
+ pools[pool] = { [asset]: new SharePosition(poolState.supply, 0n) };
122
+ });
123
+ return new this(vaultState.address.toString(), vaultState.totalSupply, assets, pools);
124
+ }
125
+ static fromStrategyVaultStateCell(address, cell) {
126
+ const vaultData = strategy_vault_1.StrategyVault.parseVaultData(cell);
127
+ return this.fromStrategyVaultState({ address, ...vaultData });
128
+ }
129
+ static fromStrategyVaultState(vaultState) {
130
+ const assets = {};
131
+ Object.entries(vaultState.assets)
132
+ .forEach(([asset, assetState]) => {
133
+ if (assetState.cash === 0n)
134
+ return;
135
+ assets[asset] = new AmountPosition(assetState.cash, 0n);
136
+ });
137
+ const pools = {};
138
+ Object.entries(vaultState.factorialPools)
139
+ .forEach(([pool, poolState]) => {
140
+ const exposedPoolAssetEntries = Object.entries(poolState).filter(([_, assetState]) => assetState.supply > 0n || assetState.borrow > 0n);
141
+ if (exposedPoolAssetEntries.length === 0)
142
+ return;
143
+ const poolEntry = {};
144
+ exposedPoolAssetEntries.forEach(([asset, assetState]) => poolEntry[asset] = new SharePosition(assetState.supply, assetState.borrow));
145
+ pools[pool] = poolEntry;
146
+ });
147
+ const result = new this(vaultState.address.toString(), vaultState.totalSupply, assets, pools);
148
+ return result;
149
+ }
150
+ toAmountContext(poolContexts) {
151
+ return VaultAmountContext.fromVaultStateContext(this, poolContexts);
152
+ }
153
+ }
154
+ exports.VaultStateContext = VaultStateContext;
155
+ class VaultAmountContext {
156
+ address;
157
+ totalSupply;
158
+ assets;
159
+ pools;
160
+ constructor(address, totalSupply, assets, pools) {
161
+ this.address = address;
162
+ this.totalSupply = totalSupply;
163
+ this.assets = assets;
164
+ this.pools = pools;
165
+ }
166
+ static fromVaultStateContext(VaultStateContext, poolContexts) {
167
+ const assets = (0, helper_1.copyPositions)(VaultStateContext.assets);
168
+ const pools = {};
169
+ Object.entries(VaultStateContext.pools)
170
+ .forEach(([pool, poolPosition]) => {
171
+ const poolContext = poolContexts[pool];
172
+ if (!poolContext)
173
+ throw new Error(`Pool context not found: ${pool}`);
174
+ pools[pool] = (0, helper_1.mapPositions)(poolPosition, (asset, sharePosition) => poolContext.getAmountFrom(asset, sharePosition));
175
+ });
176
+ const result = new this(VaultStateContext.address, VaultStateContext.totalSupply, assets, pools);
177
+ return result;
178
+ }
179
+ toValueContext(prices) {
180
+ return VaultValueContext.fromAmountContext(this, prices);
181
+ }
182
+ decompose() {
183
+ const decomposed = (0, helper_1.copyPositions)(this.assets);
184
+ Object.entries(this.pools)
185
+ .forEach(([pool, poolPosition]) => (0, helper_1.applyPositions)(decomposed, poolPosition));
186
+ return decomposed;
187
+ }
188
+ nativeDecompose(prices) {
189
+ return VaultNativeAmountDecomposedContext.fromAmountContext(this, prices);
190
+ }
191
+ }
192
+ exports.VaultAmountContext = VaultAmountContext;
193
+ class VaultValueContext {
194
+ address;
195
+ totalSupply;
196
+ assets;
197
+ pools;
198
+ constructor(address, totalSupply, assets, pools) {
199
+ this.address = address;
200
+ this.totalSupply = totalSupply;
201
+ this.assets = assets;
202
+ this.pools = pools;
203
+ }
204
+ static fromAmountContext(amountContext, prices) {
205
+ const assets = (0, helper_1.mapPositions)(amountContext.assets, (asset, position) => position.toValuePosition(prices[asset].price));
206
+ const pools = {};
207
+ Object.entries(amountContext.pools)
208
+ .forEach(([pool, poolState]) => pools[pool] = (0, helper_1.mapPositions)(poolState, (asset, position) => position.toValuePosition(prices[asset].price)));
209
+ return new this(amountContext.address, amountContext.totalSupply, assets, pools);
210
+ }
211
+ get totalValue() {
212
+ let totalValue = 0n;
213
+ (0, helper_1.mapPositions)(this.assets, (_asset, position) => totalValue += position.net());
214
+ Object.entries(this.pools)
215
+ .forEach(([_pool, poolPosition]) => (0, helper_1.mapPositions)(poolPosition, (_asset, position) => totalValue += position.net()));
216
+ return totalValue;
217
+ }
218
+ get price() {
219
+ return this.totalSupply === 0n ? 0n : (this.totalValue / this.totalSupply);
220
+ }
221
+ decompose() {
222
+ const decomposed = (0, helper_1.copyPositions)(this.assets);
223
+ Object.entries(this.pools)
224
+ .forEach(([pool, poolPosition]) => (0, helper_1.applyPositions)(decomposed, poolPosition));
225
+ return decomposed;
226
+ }
227
+ }
228
+ exports.VaultValueContext = VaultValueContext;
229
+ class VaultNativeValueDecomposedContext extends VaultValueContext {
230
+ static fromValueContext(valueContext, prices) {
231
+ const assetsNativePositions = (0, computation_1.nativeDecomposeContext)(valueContext.assets, prices);
232
+ const poolsNativePositions = {};
233
+ Object.entries(valueContext.pools)
234
+ .forEach(([pool, poolPosition]) => {
235
+ const nativePoolPosition = (0, computation_1.nativeDecomposeContext)(poolPosition, prices);
236
+ poolsNativePositions[pool] = nativePoolPosition;
237
+ });
238
+ return new this(valueContext.address, valueContext.totalSupply, assetsNativePositions, poolsNativePositions);
239
+ }
240
+ net() {
241
+ const net = {};
242
+ (0, helper_1.applyPositions)(net, this.assets);
243
+ Object.entries(this.pools)
244
+ .forEach(([_pool, poolPosition]) => (0, helper_1.applyPositions)(net, poolPosition));
245
+ return net;
246
+ }
247
+ }
248
+ exports.VaultNativeValueDecomposedContext = VaultNativeValueDecomposedContext;
249
+ class VaultNativeAmountDecomposedContext {
250
+ address;
251
+ totalSupply;
252
+ assets;
253
+ constructor(address, totalSupply, assets) {
254
+ this.address = address;
255
+ this.totalSupply = totalSupply;
256
+ this.assets = assets;
257
+ }
258
+ static fromAmountContext(valueContext, prices) {
259
+ const decomposed = valueContext.decompose();
260
+ const nativeDecomposed = (0, computation_1.nativeDecomposeContext)(decomposed, prices);
261
+ return new this(valueContext.address, valueContext.totalSupply, nativeDecomposed);
262
+ }
263
+ }
264
+ exports.VaultNativeAmountDecomposedContext = VaultNativeAmountDecomposedContext;
@@ -0,0 +1,140 @@
1
+ import { Address } from "@ton/core";
2
+ export declare const VALUE_SCALE = 100000000n;
3
+ export declare enum CompositeAssetType {
4
+ NATIVE = 0,
5
+ SYNTHETIC1 = 1,
6
+ SYNTHETIC2 = 2,
7
+ VAULT = 10
8
+ }
9
+ export type NativePriceEntry = {
10
+ type: CompositeAssetType.NATIVE;
11
+ price: bigint;
12
+ timestamp?: number;
13
+ };
14
+ export type SyntheticAssetAdditionalData = {
15
+ underlying: string;
16
+ reserve: bigint;
17
+ totalSupply: bigint;
18
+ };
19
+ export type Synthetic1PriceEntry = {
20
+ type: CompositeAssetType.SYNTHETIC1;
21
+ price: bigint;
22
+ timestamp?: number;
23
+ additionalData: SyntheticAssetAdditionalData;
24
+ };
25
+ export type Synthetic2PriceEntry = {
26
+ type: CompositeAssetType.SYNTHETIC2;
27
+ price: bigint;
28
+ timestamp?: number;
29
+ additionalData0: SyntheticAssetAdditionalData;
30
+ additionalData1: SyntheticAssetAdditionalData;
31
+ };
32
+ export type VaultPriceEntry = {
33
+ type: CompositeAssetType.VAULT;
34
+ price: bigint;
35
+ timestamp?: number;
36
+ additionalData: VaultComposition;
37
+ };
38
+ export type PriceEntry = NativePriceEntry | Synthetic1PriceEntry | Synthetic2PriceEntry | VaultPriceEntry;
39
+ export type Prices = Record<string, PriceEntry>;
40
+ export type PoolShareInfo = {
41
+ totalSupplyAmount: bigint;
42
+ totalSupplyShare: bigint;
43
+ totalBorrowAmount: bigint;
44
+ totalBorrowShare: bigint;
45
+ };
46
+ export type PoolInfos = Record<string, Record<string, PoolShareInfo>>;
47
+ export type SingleAssetData = {
48
+ assetType: CompositeAssetType.SYNTHETIC1;
49
+ underlyingAddress: Address | string;
50
+ underlyingReserve: bigint;
51
+ totalSupply: bigint;
52
+ };
53
+ export type MultiAssetData = {
54
+ assetType: CompositeAssetType.SYNTHETIC2;
55
+ underlying0Address: Address | string;
56
+ underlying1Address: Address | string;
57
+ underlying0Reserve: bigint;
58
+ underlying1Reserve: bigint;
59
+ totalSupply: bigint;
60
+ };
61
+ export type SyntheticComposition = SingleAssetData | MultiAssetData;
62
+ export type SyntheticCompositions = Record<string, SyntheticComposition>;
63
+ /** @deprecated Use SyntheticComposition instead */
64
+ export type OnchainData = SyntheticComposition;
65
+ /** @deprecated Use SyntheticCompositions instead */
66
+ export type OnchainDataMap = SyntheticCompositions;
67
+ export type VaultComposition = {
68
+ amountContext: IVaultAmountContext;
69
+ };
70
+ export type VaultCompositions = Record<string, VaultComposition>;
71
+ export type VaultPrices = Record<string, VaultPriceEntry>;
72
+ export type CompositeOracleResult = {
73
+ assetPrices: Prices;
74
+ vaultPrices: VaultPrices;
75
+ allPrices: Prices;
76
+ };
77
+ export type CompositeOracleInput = {
78
+ rawPrices: Prices;
79
+ syntheticCompositions: SyntheticCompositions;
80
+ vaultPositions: Record<string, IVaultStateContext>;
81
+ poolInfos: Record<string, IPoolContext>;
82
+ };
83
+ export interface IPosition {
84
+ supply: bigint;
85
+ borrow: bigint;
86
+ add(supply: bigint, borrow: bigint): this;
87
+ addPosition(position?: this): this;
88
+ muldiv(numerator: bigint, denominator: bigint): this;
89
+ clone(): this;
90
+ cross(other: IPosition, denominator: bigint): this;
91
+ }
92
+ export interface ISharePosition extends IPosition {
93
+ readonly _brand: 'SharePosition';
94
+ toAmountPosition(poolAsset: IPoolAsset): IAmountPosition;
95
+ }
96
+ export interface IValuePosition extends IPosition {
97
+ readonly _brand: 'ValuePosition';
98
+ toAmountPosition(price: bigint): IAmountPosition;
99
+ net(): bigint;
100
+ }
101
+ export interface IAmountPosition extends IPosition {
102
+ readonly _brand: 'AmountPosition';
103
+ toValuePosition(price: bigint): IValuePosition;
104
+ net(): bigint;
105
+ }
106
+ export interface IPoolAsset {
107
+ amount: IAmountPosition;
108
+ share: ISharePosition;
109
+ }
110
+ export type IPoolAmountPositions = Record<string, Record<string, IAmountPosition>>;
111
+ export type IPoolValuePositions = Record<string, Record<string, IValuePosition>>;
112
+ export type IPoolSharePositions = Record<string, Record<string, ISharePosition>>;
113
+ export interface IPoolContext {
114
+ readonly address: string;
115
+ readonly assets: Record<string, IPoolAsset>;
116
+ getAmountFrom(address: string, share: ISharePosition): IAmountPosition;
117
+ }
118
+ export type IPoolContexts = Record<string, IPoolContext>;
119
+ export interface IVaultStateContext {
120
+ readonly address: string;
121
+ readonly totalSupply: bigint;
122
+ readonly assets: Record<string, IAmountPosition>;
123
+ readonly pools: IPoolSharePositions;
124
+ toAmountContext(poolContexts: IPoolContexts): IVaultAmountContext;
125
+ }
126
+ export interface IVaultAmountContext {
127
+ readonly address: string;
128
+ readonly totalSupply: bigint;
129
+ readonly assets: Record<string, IAmountPosition>;
130
+ readonly pools: IPoolAmountPositions;
131
+ decompose(): Record<string, IAmountPosition>;
132
+ toValueContext(prices: Prices): IVaultValueContext;
133
+ }
134
+ export interface IVaultValueContext {
135
+ readonly address: string;
136
+ readonly assets: Record<string, IValuePosition>;
137
+ readonly pools: IPoolValuePositions;
138
+ readonly totalValue: bigint;
139
+ decompose(): Record<string, IValuePosition>;
140
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompositeAssetType = exports.VALUE_SCALE = void 0;
4
+ exports.VALUE_SCALE = 100000000n;
5
+ var CompositeAssetType;
6
+ (function (CompositeAssetType) {
7
+ CompositeAssetType[CompositeAssetType["NATIVE"] = 0] = "NATIVE";
8
+ CompositeAssetType[CompositeAssetType["SYNTHETIC1"] = 1] = "SYNTHETIC1";
9
+ CompositeAssetType[CompositeAssetType["SYNTHETIC2"] = 2] = "SYNTHETIC2";
10
+ CompositeAssetType[CompositeAssetType["VAULT"] = 10] = "VAULT";
11
+ })(CompositeAssetType || (exports.CompositeAssetType = CompositeAssetType = {}));
package/dist/context.d.ts CHANGED
@@ -3,6 +3,7 @@ import { Address } from "@ton/core";
3
3
  import { AddressInput, AddressLike } from "./contracts/common/type";
4
4
  import { ShareVault } from "./contracts/vault/share-vault";
5
5
  import { StrategyVault } from "./contracts/vault/strategy-vault";
6
+ import { ToncenterV3Client } from "./utils/pending-tracker/v3-client";
6
7
  export type UnderlyingAssetType = {
7
8
  type: "underlying-asset";
8
9
  };
@@ -28,6 +29,7 @@ export declare class AffluentContext {
28
29
  readonly wtonAddress: Address;
29
30
  private readonly cacheTtl;
30
31
  private readonly openedContracts;
32
+ private _toncenterClient?;
31
33
  constructor(config: AffluentContextConfig);
32
34
  static initialize(config: AffluentContextConfig): AffluentContext;
33
35
  static getInstance(): AffluentContext;
@@ -39,5 +41,6 @@ export declare class AffluentContext {
39
41
  name?: string;
40
42
  }, address: AddressInput): OpenedContract<T>;
41
43
  private open;
44
+ get toncenterClient(): ToncenterV3Client;
42
45
  getAssetType(assetAddress: AddressInput): Promise<AssetType>;
43
46
  }
package/dist/context.js CHANGED
@@ -7,6 +7,7 @@ const core_1 = require("@ton/core");
7
7
  const utils_1 = require("./contracts/common/utils");
8
8
  const share_vault_1 = require("./contracts/vault/share-vault");
9
9
  const strategy_vault_1 = require("./contracts/vault/strategy-vault");
10
+ const v3_client_1 = require("./utils/pending-tracker/v3-client");
10
11
  class AffluentContext {
11
12
  static instance = null;
12
13
  client;
@@ -14,6 +15,7 @@ class AffluentContext {
14
15
  wtonAddress;
15
16
  cacheTtl;
16
17
  openedContracts = new Map();
18
+ _toncenterClient;
17
19
  constructor(config) {
18
20
  const { client, network, customWtonAddress, cacheTtl = 2500 } = config;
19
21
  if (network === "custom" && !customWtonAddress) {
@@ -64,6 +66,13 @@ class AffluentContext {
64
66
  this.openedContracts.set(key, openedContract);
65
67
  return openedContract;
66
68
  }
69
+ get toncenterClient() {
70
+ if (!this._toncenterClient) {
71
+ const network = this.network === "custom" ? "mainnet" : this.network;
72
+ this._toncenterClient = new v3_client_1.ToncenterV3Client(network);
73
+ }
74
+ return this._toncenterClient;
75
+ }
67
76
  async getAssetType(assetAddress) {
68
77
  const address = (0, utils_1.toAddress)(assetAddress);
69
78
  const state = await this.client.getContractState(address);
@@ -13,6 +13,8 @@ const NAME_MAP = {
13
13
  "5783893": "XAU",
14
14
  "4346947": "BTC",
15
15
  "495352759397": "sUSDe",
16
+ "500151111502": "tsTON",
17
+ "128038701581413": "tsUSDe",
16
18
  };
17
19
  function redstonOnchainOracleConfigToCell(config) {
18
20
  return (0, core_1.beginCell)().storeCoins(0).storeAddress(config.owner).storeRef(config.reserveAggregatorCode).endCell();
@@ -49,7 +49,7 @@ export type OnchainDataInfoInternal = OnchainDataInfoBase & {
49
49
  };
50
50
  export type OnchainData = OnchainDataInfoNative | OnchainDataInfoSingleAsset | OnchainDataInfoMultiAsset;
51
51
  export type OnchainDataInfo = Record<string, OnchainData>;
52
- export type AssetPriceInfo = Record<string, AssetPrice>;
52
+ export type AssetPrices = Record<string, AssetPrice>;
53
53
  export type AssetPrice = {
54
54
  type: AssetType;
55
55
  price: bigint;
@@ -1,6 +1,6 @@
1
1
  import { Address, Cell, Contract, ContractProvider, Dictionary } from "@ton/core";
2
2
  import { StrategyVaultConfig, AssetV2, FactorialPool, InteractiveVaultConfigItem, InteractiveVaultDict, XChainConfig } from "./type";
3
- import { strategyVaultConfigToCell, strategyVaultConfigToCellV1, strategyVaultConfigToCellV2, createRFQConfig, getOpName, getErrorName, createInteractiveVaultDict, createDepositPayloadV1, createDepositPayload, createDepositQueuePayload, createWithdrawPayload, createWithdrawQueuePayload, createSetTimelockMsgBody, createExecuteOwnerActionMsgBody, createRevertOwnerActionMsgBody, parseSetTimelockMsgBody, parseExecuteOwnerActionMsgBody, parseRevertOwnerActionMsgBody, createSetProtocolFeeRatePerYearMsgBody, createSetProtocolFeeManagerAddressMsgBody, createClaimProtocolFeeMsgBody, parseSetProtocolFeeRatePerYearMsgBody, parseSetProtocolFeeManagerAddressMsgBody, parseClaimProtocolFeeMsgBody, createSetManagementFeeRatePerYearMsgBody, createSetManagementFeeRecipientAddressMsgBody, createClaimManagementFeeMsgBody, parseSetManagementFeeRatePerYearMsgBody, parseSetManagementFeeRecipientAddressMsgBody, parseClaimManagementFeeMsgBody, createSetWalletCodeMsgBody, createSetDataAggregatorCodeMsgBody, createSetRFQCodeMsgBody, createUpgradeCodeMsgBody, createSetContentMsgBody, parseSetWalletCodeMsgBody, parseSetDataAggregatorCodeMsgBody, parseSetRFQCodeMsgBody, parseUpgradeCodeMsgBody, parseSetContentMsgBody, createSetOwnerAddressMsgBody, createSetGuardianAddressMsgBody, createSetManagerAddressMsgBody, parseSetOwnerAddressMsgBody, parseSetGuardianAddressMsgBody, parseSetManagerAddressMsgBody, createSetAssetConfigMsgBody, parseSetAssetConfigMsgBody, createSetFactorialPoolConfigMsgBody, parseSetFactorialPoolConfigMsgBody, createSetRFQConfigMsgBody, parseSetRFQConfigMsgBody, createSetOracleConfigMsgBody, parseSetOracleConfigMsgBody, createSetGasConfigMsgBody, parseSetGasConfigMsgBody, createSetPrivateVaultMsgBody, createSetWhitelistedMintersMsgBody, parseSetPrivateVaultMsgBody, parseSetWhitelistedMintersMsgBody, createSetMaxLeverageRatioMsgBody, createSetDepositCloseTimestampMsgBody, createSetWithdrawOpenTimestampMsgBody, parseSetMaxLeverageRatioMsgBody, parseSetDepositCloseTimestampMsgBody, parseSetWithdrawOpenTimestampMsgBody, createSetXChainConnectorAddressMsgBody, createSetXChainConfigMsgBody, createRequestEidConnectionMsgBody, createInitializeMsgBody, createExecuteStrategyMsgBody, parseInitializeMsgBody, parseExecuteStrategyMsgBody, createSupplyToFactorialMsgBody, createWithdrawFromFactorialMsgBody, createBorrowFromFactorialMsgBody, createRepayToFactorialMsgBody, createLiquidateToFactorialMsgBody, parseSupplyToFactorialMsgBody, parseWithdrawFromFactorialMsgBody, parseBorrowFromFactorialMsgBody, parseRepayToFactorialMsgBody, parseLiquidateToFactorialMsgBody, createCreateRFQMsgBody, createCancelRFQMsgBody, parseCreateRFQMsgBody, parseCancelRFQMsgBody, createExecuteXChainStrategyPayload, createDepositToVaultMsgBody, parseExecuteDepositQueueMsgBody, parseExecuteWithdrawQueueMsgBody, parseConfirmQueueLog, parseQueueBatchExecuteLog, parseCancelDepositQueueMsgBody, parseCancelWithdrawQueueMsgBody, parseDepositQueueMsgBody, parseWithdrawQueueMsgBody, parseUserQueueLog, parseVaultData, parseVaultDataV1, parseVaultDataV2, parseRFQConfig, parseGasConfig, parseXChainOftConfig, parseXChainStrategyConfig } from "./codec";
3
+ import { strategyVaultConfigToCell, strategyVaultConfigToCellV1, strategyVaultConfigToCellV2, createRFQConfig, getOpName, getErrorName, createInteractiveVaultDict, createDepositPayloadV1, createDepositPayload, createDepositQueuePayload, createWithdrawPayload, createWithdrawQueuePayload, createSetTimelockMsgBody, createExecuteOwnerActionMsgBody, createRevertOwnerActionMsgBody, parseSetTimelockMsgBody, parseExecuteOwnerActionMsgBody, parseRevertOwnerActionMsgBody, createSetProtocolFeeRatePerYearMsgBody, createSetProtocolFeeManagerAddressMsgBody, createClaimProtocolFeeMsgBody, parseSetProtocolFeeRatePerYearMsgBody, parseSetProtocolFeeManagerAddressMsgBody, parseClaimProtocolFeeMsgBody, createSetManagementFeeRatePerYearMsgBody, createSetManagementFeeRecipientAddressMsgBody, createClaimManagementFeeMsgBody, parseSetManagementFeeRatePerYearMsgBody, parseSetManagementFeeRecipientAddressMsgBody, parseClaimManagementFeeMsgBody, createSetWalletCodeMsgBody, createSetDataAggregatorCodeMsgBody, createSetRFQCodeMsgBody, createUpgradeCodeMsgBody, createSetContentMsgBody, parseSetWalletCodeMsgBody, parseSetDataAggregatorCodeMsgBody, parseSetRFQCodeMsgBody, parseUpgradeCodeMsgBody, parseSetContentMsgBody, createSetOwnerAddressMsgBody, createSetGuardianAddressMsgBody, createSetManagerAddressMsgBody, parseSetOwnerAddressMsgBody, parseSetGuardianAddressMsgBody, parseSetManagerAddressMsgBody, createSetAssetConfigMsgBody, createSetAssetConfigV2MsgBody, parseSetAssetConfigMsgBody, createSetFactorialPoolConfigMsgBody, parseSetFactorialPoolConfigMsgBody, createSetRFQConfigMsgBody, parseSetRFQConfigMsgBody, createSetOracleConfigMsgBody, parseSetOracleConfigMsgBody, createSetGasConfigMsgBody, parseSetGasConfigMsgBody, createSetPrivateVaultMsgBody, createSetWhitelistedMintersMsgBody, parseSetPrivateVaultMsgBody, parseSetWhitelistedMintersMsgBody, createSetMaxLeverageRatioMsgBody, createSetDepositCloseTimestampMsgBody, createSetWithdrawOpenTimestampMsgBody, parseSetMaxLeverageRatioMsgBody, parseSetDepositCloseTimestampMsgBody, parseSetWithdrawOpenTimestampMsgBody, createSetXChainConnectorAddressMsgBody, createSetXChainConfigMsgBody, createRequestEidConnectionMsgBody, createInitializeMsgBody, createExecuteStrategyMsgBody, parseInitializeMsgBody, parseExecuteStrategyMsgBody, createSupplyToFactorialMsgBody, createWithdrawFromFactorialMsgBody, createBorrowFromFactorialMsgBody, createRepayToFactorialMsgBody, createLiquidateToFactorialMsgBody, parseSupplyToFactorialMsgBody, parseWithdrawFromFactorialMsgBody, parseBorrowFromFactorialMsgBody, parseRepayToFactorialMsgBody, parseLiquidateToFactorialMsgBody, createCreateRFQMsgBody, createCancelRFQMsgBody, parseCreateRFQMsgBody, parseCancelRFQMsgBody, createExecuteXChainStrategyPayload, createDepositToVaultMsgBody, parseExecuteDepositQueueMsgBody, parseExecuteWithdrawQueueMsgBody, parseConfirmQueueLog, parseQueueBatchExecuteLog, parseCancelDepositQueueMsgBody, parseCancelWithdrawQueueMsgBody, parseDepositQueueMsgBody, parseWithdrawQueueMsgBody, parseUserQueueLog, parseVaultData, parseVaultDataV1, parseVaultDataV2, parseRFQConfig, parseGasConfig, parseXChainOftConfig, parseXChainStrategyConfig } from "./codec";
4
4
  export { strategyVaultConfigToCell };
5
5
  export type { StrategyVaultConfig } from "./type";
6
6
  export type { VaultResponseOptions, FactorialPoolShare, FactorialPool, AssetV1, AssetV2, RequestQueueItem, SumQueue, QueueManager, InteractiveVaultConfigItem, XChainConfig, InteractiveVaultDict, } from "./type";
@@ -290,6 +290,7 @@ export declare class StrategyVault implements Contract {
290
290
  static createCancelRFQMsgBody: typeof createCancelRFQMsgBody;
291
291
  static createDepositToVaultMsgBody: typeof createDepositToVaultMsgBody;
292
292
  static createSetAssetConfigMsgBody: typeof createSetAssetConfigMsgBody;
293
+ static createSetAssetConfigV2MsgBody: typeof createSetAssetConfigV2MsgBody;
293
294
  static createSetFactorialPoolConfigMsgBody: typeof createSetFactorialPoolConfigMsgBody;
294
295
  static createClaimManagementFeeMsgBody: typeof createClaimManagementFeeMsgBody;
295
296
  static createClaimProtocolFeeMsgBody: typeof createClaimProtocolFeeMsgBody;
@@ -47,6 +47,7 @@ class StrategyVault {
47
47
  static createCancelRFQMsgBody = codec_1.createCancelRFQMsgBody;
48
48
  static createDepositToVaultMsgBody = codec_1.createDepositToVaultMsgBody;
49
49
  static createSetAssetConfigMsgBody = codec_1.createSetAssetConfigMsgBody;
50
+ static createSetAssetConfigV2MsgBody = codec_1.createSetAssetConfigV2MsgBody;
50
51
  static createSetFactorialPoolConfigMsgBody = codec_1.createSetFactorialPoolConfigMsgBody;
51
52
  static createClaimManagementFeeMsgBody = codec_1.createClaimManagementFeeMsgBody;
52
53
  static createClaimProtocolFeeMsgBody = codec_1.createClaimProtocolFeeMsgBody;
@@ -1,14 +1,24 @@
1
- import { PoolServiceV1 as PoolV1 } from "./services/pool";
2
- import { ShareVaultServiceV1 as ShareVaultV1 } from "./services/share-vault";
3
- import { StrategyVaultV1 } from "./services/strategy-vault";
4
- import { RFQAuctionServiceV1 } from "./services/rfq-auction";
5
- import { RFQBatchServiceV1 } from "./services/rfq-batch";
6
- export { PoolV1, ShareVaultV1, StrategyVaultV1, RFQAuctionServiceV1 as RFQAuctionV1, RFQBatchServiceV1 as RFQBatchV1 };
1
+ import { PoolV1 } from "./pool";
2
+ import { ShareVaultV1 } from "./share-vault";
3
+ import { StrategyVaultV1 } from "./strategy_vault";
4
+ import { PeripheryV1 } from "./periphery";
5
+ import { MonitorV1 } from "./monitor";
6
+ import { FarmV1 } from "./farm";
7
+ import { RFQAuctionV1 } from "./rfq-auction";
8
+ import { MonitorCacheV1 } from "./monitorCacheV1";
9
+ import { PoolCacheV1 } from "./poolCacheV1";
10
+ import { RFQBatchV1 } from "./rfq-batch";
11
+ export { PoolV1, ShareVaultV1, PeripheryV1, StrategyVaultV1, RFQAuctionV1, MonitorCacheV1, RFQBatchV1, };
7
12
  declare const _default: {
8
13
  PoolV1: typeof PoolV1;
9
14
  ShareVaultV1: typeof ShareVaultV1;
10
15
  StrategyVaultV1: typeof StrategyVaultV1;
11
- RFQAuctionV1: typeof RFQAuctionServiceV1;
12
- RFQBatchV1: typeof RFQBatchServiceV1;
16
+ RFQAuctionV1: typeof RFQAuctionV1;
17
+ PeripheryV1: typeof PeripheryV1;
18
+ MonitorV1: typeof MonitorV1;
19
+ FarmV1: typeof FarmV1;
20
+ MonitorCacheV1: typeof MonitorCacheV1;
21
+ PoolCacheV1: typeof PoolCacheV1;
22
+ RFQBatchV1: typeof RFQBatchV1;
13
23
  };
14
24
  export default _default;
package/dist/factorial.js CHANGED
@@ -1,20 +1,32 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RFQBatchV1 = exports.RFQAuctionV1 = exports.StrategyVaultV1 = exports.ShareVaultV1 = exports.PoolV1 = void 0;
4
- const pool_1 = require("./services/pool");
5
- Object.defineProperty(exports, "PoolV1", { enumerable: true, get: function () { return pool_1.PoolServiceV1; } });
6
- const share_vault_1 = require("./services/share-vault");
7
- Object.defineProperty(exports, "ShareVaultV1", { enumerable: true, get: function () { return share_vault_1.ShareVaultServiceV1; } });
8
- const strategy_vault_1 = require("./services/strategy-vault");
3
+ exports.RFQBatchV1 = exports.MonitorCacheV1 = exports.RFQAuctionV1 = exports.StrategyVaultV1 = exports.PeripheryV1 = exports.ShareVaultV1 = exports.PoolV1 = void 0;
4
+ const pool_1 = require("./pool");
5
+ Object.defineProperty(exports, "PoolV1", { enumerable: true, get: function () { return pool_1.PoolV1; } });
6
+ const share_vault_1 = require("./share-vault");
7
+ Object.defineProperty(exports, "ShareVaultV1", { enumerable: true, get: function () { return share_vault_1.ShareVaultV1; } });
8
+ const strategy_vault_1 = require("./strategy_vault");
9
9
  Object.defineProperty(exports, "StrategyVaultV1", { enumerable: true, get: function () { return strategy_vault_1.StrategyVaultV1; } });
10
- const rfq_auction_1 = require("./services/rfq-auction");
11
- Object.defineProperty(exports, "RFQAuctionV1", { enumerable: true, get: function () { return rfq_auction_1.RFQAuctionServiceV1; } });
12
- const rfq_batch_1 = require("./services/rfq-batch");
13
- Object.defineProperty(exports, "RFQBatchV1", { enumerable: true, get: function () { return rfq_batch_1.RFQBatchServiceV1; } });
10
+ const periphery_1 = require("./periphery");
11
+ Object.defineProperty(exports, "PeripheryV1", { enumerable: true, get: function () { return periphery_1.PeripheryV1; } });
12
+ const monitor_1 = require("./monitor");
13
+ const farm_1 = require("./farm");
14
+ const rfq_auction_1 = require("./rfq-auction");
15
+ Object.defineProperty(exports, "RFQAuctionV1", { enumerable: true, get: function () { return rfq_auction_1.RFQAuctionV1; } });
16
+ const monitorCacheV1_1 = require("./monitorCacheV1");
17
+ Object.defineProperty(exports, "MonitorCacheV1", { enumerable: true, get: function () { return monitorCacheV1_1.MonitorCacheV1; } });
18
+ const poolCacheV1_1 = require("./poolCacheV1");
19
+ const rfq_batch_1 = require("./rfq-batch");
20
+ Object.defineProperty(exports, "RFQBatchV1", { enumerable: true, get: function () { return rfq_batch_1.RFQBatchV1; } });
14
21
  exports.default = {
15
- PoolV1: pool_1.PoolServiceV1,
16
- ShareVaultV1: share_vault_1.ShareVaultServiceV1,
22
+ PoolV1: pool_1.PoolV1,
23
+ ShareVaultV1: share_vault_1.ShareVaultV1,
17
24
  StrategyVaultV1: strategy_vault_1.StrategyVaultV1,
18
- RFQAuctionV1: rfq_auction_1.RFQAuctionServiceV1,
19
- RFQBatchV1: rfq_batch_1.RFQBatchServiceV1,
25
+ RFQAuctionV1: rfq_auction_1.RFQAuctionV1,
26
+ PeripheryV1: periphery_1.PeripheryV1,
27
+ MonitorV1: monitor_1.MonitorV1,
28
+ FarmV1: farm_1.FarmV1,
29
+ MonitorCacheV1: monitorCacheV1_1.MonitorCacheV1,
30
+ PoolCacheV1: poolCacheV1_1.PoolCacheV1,
31
+ RFQBatchV1: rfq_batch_1.RFQBatchV1,
20
32
  };
package/dist/index.d.ts CHANGED
@@ -25,10 +25,12 @@ import { WTON_UNWRAP_CELL, WTONMinter } from "./contracts/wton/jetton-minter";
25
25
  import { WTONWallet } from "./contracts/wton/jetton-wallet";
26
26
  import { parseAction } from "./utils/action-parser";
27
27
  import { CompositeOracleV1 } from "./services/composite-oracle";
28
- import { StrategyVaultV1 } from "./services/strategy-vault";
28
+ import { StrategyVaultServiceV1 } from "./services/strategy-vault";
29
29
  import { PoolServiceV1 } from "./services/pool";
30
30
  import { ShareVaultServiceV1 } from "./services/share-vault";
31
31
  import { RFQBatchServiceV1 } from "./services/rfq-batch";
32
32
  import { RFQAuctionServiceV1 } from "./services/rfq-auction";
33
33
  import { sendMsgTracked, createTrackableSender, createTrackableSenderFromMnemonic, ToncenterV3Client, TrackableSender, TrackableSenderConfig, SendResult, TraceResult, WaitOptions } from "./utils/pending-tracker";
34
- export { Maybe, AccountState, AccountAssetState, strategyVaultConfigToCell, PoolState, LiquidatePayload, TransferInPayload, TransferOutMsgBody, LiquidateParams, TransferInParams, TransferOutMsgParams, AssetState, BaseActionNotificationMsgBody, SuccessActionNotificationMsgBody, SuccessRepayActionNotificationMsgBody, SuccessLiquidateActionNotificationMsgBody, FailTransferInActionNotificationMsgBody, FailLiquidateActionNotificationMsgBody, FailTransferOutActionNotificationMsgBody, ActionNotificationMsgBody, FactoryState, JumpIRMConfig, ShareVaultState, WhitelistedPoolData, StrategyVaultState, Affluent, Factory, Pool, Account, JettonMinter, JettonWallet, ShareVault, RiskCalculator, StrategyVault, RFQEventEmitter, RFQAuction, RFQBatch, MAINNET_CONTRACTS, TESTNET_CONTRACTS, ONE_PERCENT_IR_PER_SEC, toPercentBigInt, toPercentNumber, WTONWalletCompiled, WTONMinter, WTONWallet, WTON_UNWRAP_CELL, parseAction, CompositeOracleV1, StrategyVaultV1, PoolServiceV1, ShareVaultServiceV1, RFQBatchServiceV1, RFQAuctionServiceV1, sendMsgTracked, createTrackableSender, createTrackableSenderFromMnemonic, ToncenterV3Client, TrackableSender, TrackableSenderConfig, SendResult, TraceResult, WaitOptions, };
34
+ export { Maybe, AccountState, AccountAssetState, strategyVaultConfigToCell, PoolState, LiquidatePayload, TransferInPayload, TransferOutMsgBody, LiquidateParams, TransferInParams, TransferOutMsgParams, AssetState, BaseActionNotificationMsgBody, SuccessActionNotificationMsgBody, SuccessRepayActionNotificationMsgBody, SuccessLiquidateActionNotificationMsgBody, FailTransferInActionNotificationMsgBody, FailLiquidateActionNotificationMsgBody, FailTransferOutActionNotificationMsgBody, ActionNotificationMsgBody, FactoryState, JumpIRMConfig, ShareVaultState, WhitelistedPoolData, StrategyVaultState, Affluent, Factory, Pool, Account, JettonMinter, JettonWallet, ShareVault, RiskCalculator, StrategyVault, RFQEventEmitter, RFQAuction, RFQBatch, MAINNET_CONTRACTS, TESTNET_CONTRACTS, ONE_PERCENT_IR_PER_SEC, toPercentBigInt, toPercentNumber, WTONWalletCompiled, WTONMinter, WTONWallet, WTON_UNWRAP_CELL, parseAction, CompositeOracleV1, StrategyVaultServiceV1, PoolServiceV1, ShareVaultServiceV1, RFQBatchServiceV1, RFQAuctionServiceV1, sendMsgTracked, createTrackableSender, createTrackableSenderFromMnemonic, ToncenterV3Client, TrackableSender, TrackableSenderConfig, SendResult, TraceResult, WaitOptions, };
35
+ export * from "./utils/toncenter";
36
+ export * from "./common/trace-action";