stable-layer-sdk 1.1.0 → 3.0.0

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.
@@ -23,29 +23,11 @@ __export(index_exports, {
23
23
  StableLayerClient: () => StableLayerClient
24
24
  });
25
25
  module.exports = __toCommonJS(index_exports);
26
+ var import_sdk = require("@bucket-protocol/sdk");
27
+ var import_bcs24 = require("@mysten/sui/bcs");
28
+ var import_grpc = require("@mysten/sui/grpc");
26
29
  var import_transactions2 = require("@mysten/sui/transactions");
27
30
 
28
- // src/libs/constants.ts
29
- var STABLE_VAULT = "0x65f38160110cd6859d05f338ff54b4f462883bb6f87c667a65c0fb0e537410a7";
30
- var USDC_TYPE = "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC";
31
- var STABLE_LP_TYPE = "0xb75744fadcbfc174627567ca29645d0af8f6e6fd01b6f57c75a08cd3fb97c567::lake_usdc::LakeUSDC";
32
- var YUSDB_TYPE = "0xac718b4b672d7f461fe7e86847166ff9c23cadba217397f0848a95bdea1f1051::yesusdb::YesUSDB";
33
- var STABLE_LAYER_PACKAGE_ID = "0x41e25d09e20cf3bc43fe321e51ef178fac419ae47b783a7161982158fc9f17d6";
34
- var STABLE_VAULT_FARM_PACKAGE_ID = "0x00d31ddaa73a56abcc3e2d885ac1e1d90f9ae0e38bbef2ba2923550c8250de4d";
35
- var SAVING_TYPE = "0x38f61c75fa8407140294c84167dd57684580b55c3066883b48dedc344b1cde1e::susdb::SUSDB";
36
- var YIELD_VAULT = "0x0a7f6325253157cd437812fea0ceee9a6b96f2ec5eac410da6df39558ff3a4d1";
37
- var STABLE_REGISTRY = "0x213f4d584c0770f455bb98c94a4ee5ea9ddbc3d4ebb98a0ad6d093eb6da41642";
38
- var STABLE_VAULT_FARM_ENTITY_TYPE = `0xc1025fe014b03d33b207b5afb0ba04293be87fab438c1418a26a75c2fe05c223::stable_vault_farm::StableVaultFarmEntity<${STABLE_LP_TYPE}, ${USDC_TYPE}>`;
39
- var STABLE_VAULT_FARM = "0xe958b7d102b33bf3c09addb0e2cdff102ff2c93afe407ec5c2a541e8959a650c";
40
- var YIELD_USDB_PACKAGE_ID = "0x203eebc39442014a1b8180f3b8ed70143dac2c5d28ba5703fe34c21052728705";
41
- var BTC_USD_TYPE = "0x6d9fc33611f4881a3f5c0cd4899d95a862236ce52b3a38fef039077b0c5b5834::btc_usdc::BtcUSDC";
42
- var STABLE_COIN_TYPES = {
43
- btcUSDC: BTC_USD_TYPE
44
- };
45
-
46
- // src/index.ts
47
- var import_client = require("@mysten/sui/client");
48
-
49
31
  // src/generated/utils/index.ts
50
32
  var import_bcs = require("@mysten/sui/bcs");
51
33
  var import_utils = require("@mysten/sui/utils");
@@ -167,133 +149,13 @@ function stringify(val) {
167
149
  return val;
168
150
  }
169
151
 
170
- // src/generated/yield_usdb/yield_usdb.ts
171
- var import_bcs8 = require("@mysten/sui/bcs");
172
-
173
- // src/generated/yield_usdb/deps/sui/object.ts
174
- var import_bcs2 = require("@mysten/sui/bcs");
175
- var $moduleName = "0x2::object";
176
- var UID = new MoveStruct({ name: `${$moduleName}::UID`, fields: {
177
- id: import_bcs2.bcs.Address
178
- } });
179
-
180
- // src/generated/yield_usdb/deps/sui/balance.ts
181
- var import_bcs3 = require("@mysten/sui/bcs");
182
- var $moduleName2 = "0x2::balance";
183
- var Balance = new MoveStruct({ name: `${$moduleName2}::Balance`, fields: {
184
- value: import_bcs3.bcs.u64()
185
- } });
186
- var Supply = new MoveStruct({ name: `${$moduleName2}::Supply`, fields: {
187
- value: import_bcs3.bcs.u64()
188
- } });
189
-
190
- // src/generated/yield_usdb/deps/sui/coin.ts
191
- var $moduleName3 = "0x2::coin";
192
- var TreasuryCap = new MoveStruct({ name: `${$moduleName3}::TreasuryCap`, fields: {
193
- id: UID,
194
- total_supply: Supply
195
- } });
196
-
197
- // src/generated/yield_usdb/deps/bucket_v2_framework/account.ts
198
- var import_bcs4 = require("@mysten/sui/bcs");
199
- var $moduleName4 = "bucket_v2_framework::account";
200
- var Account = new MoveStruct({ name: `${$moduleName4}::Account`, fields: {
201
- id: UID,
202
- alias: import_bcs4.bcs.option(import_bcs4.bcs.string())
203
- } });
204
-
205
- // src/generated/yield_usdb/buffer.ts
206
- var import_bcs6 = require("@mysten/sui/bcs");
207
-
208
- // src/generated/yield_usdb/deps/bucket_v2_framework/double.ts
209
- var import_bcs5 = require("@mysten/sui/bcs");
210
- var $moduleName5 = "bucket_v2_framework::double";
211
- var Double = new MoveStruct({ name: `${$moduleName5}::Double`, fields: {
212
- value: import_bcs5.bcs.u256()
213
- } });
214
-
215
- // src/generated/yield_usdb/buffer.ts
216
- var $moduleName6 = "@local-pkg/yield_usdb.move::buffer";
217
- var Buffer2 = new MoveStruct({ name: `${$moduleName6}::Buffer`, fields: {
218
- balance: Balance,
219
- flow_rate: Double,
220
- timestamp: import_bcs6.bcs.u64()
221
- } });
222
-
223
- // src/generated/yield_usdb/deps/sui/vec_set.ts
224
- var import_bcs7 = require("@mysten/sui/bcs");
225
- var $moduleName7 = "0x2::vec_set";
226
- function VecSet(...typeParameters) {
227
- return new MoveStruct({ name: `${$moduleName7}::VecSet<${typeParameters[0].name}>`, fields: {
228
- contents: import_bcs7.bcs.vector(typeParameters[0])
229
- } });
230
- }
231
-
232
- // src/generated/yield_usdb/yield_usdb.ts
233
- var $moduleName8 = "@local-pkg/yield_usdb.move::yield_usdb";
234
- var Created = new MoveStruct({ name: `${$moduleName8}::Created`, fields: {
235
- vault_id: import_bcs8.bcs.Address,
236
- max_lp_supply: import_bcs8.bcs.u64(),
237
- abstract_address: import_bcs8.bcs.Address
238
- } });
239
- var MaxSupplyUpdated = new MoveStruct({ name: `${$moduleName8}::MaxSupplyUpdated`, fields: {
240
- vault_id: import_bcs8.bcs.Address,
241
- previous_max_lp_supply: import_bcs8.bcs.u64(),
242
- current_max_lp_supply: import_bcs8.bcs.u64()
243
- } });
244
- var Minted = new MoveStruct({ name: `${$moduleName8}::Minted`, fields: {
245
- vault_id: import_bcs8.bcs.Address,
246
- usdb_amount: import_bcs8.bcs.u64(),
247
- lp_amount: import_bcs8.bcs.u64()
248
- } });
249
- var Burned = new MoveStruct({ name: `${$moduleName8}::Burned`, fields: {
250
- vault_id: import_bcs8.bcs.Address,
251
- lp_amount: import_bcs8.bcs.u64(),
252
- usdb_amount: import_bcs8.bcs.u64()
253
- } });
254
- var Claimed = new MoveStruct({ name: `${$moduleName8}::Claimed`, fields: {
255
- vault_id: import_bcs8.bcs.Address,
256
- reward_type: import_bcs8.bcs.string(),
257
- reward_amount: import_bcs8.bcs.u64()
258
- } });
259
- var Collected = new MoveStruct({ name: `${$moduleName8}::Collected`, fields: {
260
- vault_id: import_bcs8.bcs.Address,
261
- usdb_amount: import_bcs8.bcs.u64()
262
- } });
263
- var YieldVault = new MoveStruct({ name: `${$moduleName8}::YieldVault`, fields: {
264
- id: UID,
265
- max_lp_supply: import_bcs8.bcs.u64(),
266
- lp_treasury_cap: TreasuryCap,
267
- abstract_account: Account,
268
- buffer: Buffer2,
269
- managers: VecSet(import_bcs8.bcs.Address),
270
- versions: VecSet(import_bcs8.bcs.u16())
271
- } });
272
- function release(options) {
273
- const packageAddress = options.package ?? "@local-pkg/yield_usdb.move";
274
- const argumentsTypes = [
275
- `${packageAddress}::yield_usdb::YieldVault<${options.typeArguments[0]}, ${options.typeArguments[1]}>`,
276
- `${packageAddress}::usdb::Treasury`,
277
- `${packageAddress}::saving::SavingPool<${options.typeArguments[1]}>`,
278
- "0x0000000000000000000000000000000000000000000000000000000000000002::clock::Clock"
279
- ];
280
- const parameterNames = ["vault", "treasury", "savingPool"];
281
- return (tx) => tx.moveCall({
282
- package: packageAddress,
283
- module: "yield_usdb",
284
- function: "release",
285
- arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
286
- typeArguments: options.typeArguments
287
- });
288
- }
289
-
290
152
  // src/generated/stable_layer/stable_layer.ts
291
- var import_bcs15 = require("@mysten/sui/bcs");
153
+ var import_bcs8 = require("@mysten/sui/bcs");
292
154
 
293
155
  // src/generated/stable_layer/deps/std/type_name.ts
294
- var import_bcs9 = require("@mysten/sui/bcs");
295
- var $moduleName9 = "std::type_name";
296
- var TypeName = new MoveStruct({ name: `${$moduleName9}::TypeName`, fields: {
156
+ var import_bcs2 = require("@mysten/sui/bcs");
157
+ var $moduleName = "std::type_name";
158
+ var TypeName = new MoveStruct({ name: `${$moduleName}::TypeName`, fields: {
297
159
  /**
298
160
  * String representation of the type. All types are represented using their source
299
161
  * syntax: "u8", "u64", "bool", "address", "vector", and so on for primitive types.
@@ -303,115 +165,115 @@ var TypeName = new MoveStruct({ name: `${$moduleName9}::TypeName`, fields: {
303
165
  * Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or
304
166
  * 32 depending on the Move platform)
305
167
  */
306
- name: import_bcs9.bcs.string()
168
+ name: import_bcs2.bcs.string()
307
169
  } });
308
170
 
309
171
  // src/generated/stable_layer/deps/sui/vec_map.ts
310
- var import_bcs10 = require("@mysten/sui/bcs");
311
- var $moduleName10 = "0x2::vec_map";
172
+ var import_bcs3 = require("@mysten/sui/bcs");
173
+ var $moduleName2 = "0x2::vec_map";
312
174
  function Entry(...typeParameters) {
313
- return new MoveStruct({ name: `${$moduleName10}::Entry<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
175
+ return new MoveStruct({ name: `${$moduleName2}::Entry<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
314
176
  key: typeParameters[0],
315
177
  value: typeParameters[1]
316
178
  } });
317
179
  }
318
180
  function VecMap(...typeParameters) {
319
- return new MoveStruct({ name: `${$moduleName10}::VecMap<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
320
- contents: import_bcs10.bcs.vector(Entry(typeParameters[0], typeParameters[1]))
181
+ return new MoveStruct({ name: `${$moduleName2}::VecMap<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
182
+ contents: import_bcs3.bcs.vector(Entry(typeParameters[0], typeParameters[1]))
321
183
  } });
322
184
  }
323
185
 
324
186
  // src/generated/stable_layer/deps/bucket_v2_framework/liability.ts
325
- var import_bcs11 = require("@mysten/sui/bcs");
326
- var $moduleName11 = "bucket_v2_framework::liability";
327
- var Credit = new MoveStruct({ name: `${$moduleName11}::Credit`, fields: {
328
- value: import_bcs11.bcs.u64()
187
+ var import_bcs4 = require("@mysten/sui/bcs");
188
+ var $moduleName3 = "bucket_v2_framework::liability";
189
+ var Credit = new MoveStruct({ name: `${$moduleName3}::Credit`, fields: {
190
+ value: import_bcs4.bcs.u64()
329
191
  } });
330
- var Debt = new MoveStruct({ name: `${$moduleName11}::Debt`, fields: {
331
- value: import_bcs11.bcs.u64()
192
+ var Debt = new MoveStruct({ name: `${$moduleName3}::Debt`, fields: {
193
+ value: import_bcs4.bcs.u64()
332
194
  } });
333
195
 
334
196
  // src/generated/stable_layer/deps/sui/vec_set.ts
335
- var import_bcs12 = require("@mysten/sui/bcs");
336
- var $moduleName12 = "0x2::vec_set";
337
- function VecSet2(...typeParameters) {
338
- return new MoveStruct({ name: `${$moduleName12}::VecSet<${typeParameters[0].name}>`, fields: {
339
- contents: import_bcs12.bcs.vector(typeParameters[0])
197
+ var import_bcs5 = require("@mysten/sui/bcs");
198
+ var $moduleName4 = "0x2::vec_set";
199
+ function VecSet(...typeParameters) {
200
+ return new MoveStruct({ name: `${$moduleName4}::VecSet<${typeParameters[0].name}>`, fields: {
201
+ contents: import_bcs5.bcs.vector(typeParameters[0])
340
202
  } });
341
203
  }
342
204
 
343
205
  // src/generated/stable_layer/deps/bucket_v2_framework/sheet.ts
344
- var $moduleName13 = "bucket_v2_framework::sheet";
345
- var Entity = new MoveTuple({ name: `${$moduleName13}::Entity`, fields: [TypeName] });
346
- var Sheet = new MoveStruct({ name: `${$moduleName13}::Sheet`, fields: {
206
+ var $moduleName5 = "bucket_v2_framework::sheet";
207
+ var Entity = new MoveTuple({ name: `${$moduleName5}::Entity`, fields: [TypeName] });
208
+ var Sheet = new MoveStruct({ name: `${$moduleName5}::Sheet`, fields: {
347
209
  credits: VecMap(Entity, Credit),
348
210
  debts: VecMap(Entity, Debt),
349
- blacklist: VecSet2(Entity)
211
+ blacklist: VecSet(Entity)
350
212
  } });
351
213
 
352
214
  // src/generated/stable_layer/deps/sui/object.ts
353
- var import_bcs13 = require("@mysten/sui/bcs");
354
- var $moduleName14 = "0x2::object";
355
- var UID2 = new MoveStruct({ name: `${$moduleName14}::UID`, fields: {
356
- id: import_bcs13.bcs.Address
215
+ var import_bcs6 = require("@mysten/sui/bcs");
216
+ var $moduleName6 = "0x2::object";
217
+ var UID = new MoveStruct({ name: `${$moduleName6}::UID`, fields: {
218
+ id: import_bcs6.bcs.Address
357
219
  } });
358
220
 
359
221
  // src/generated/stable_layer/deps/sui/balance.ts
360
- var import_bcs14 = require("@mysten/sui/bcs");
361
- var $moduleName15 = "0x2::balance";
362
- var Supply2 = new MoveStruct({ name: `${$moduleName15}::Supply`, fields: {
363
- value: import_bcs14.bcs.u64()
222
+ var import_bcs7 = require("@mysten/sui/bcs");
223
+ var $moduleName7 = "0x2::balance";
224
+ var Supply = new MoveStruct({ name: `${$moduleName7}::Supply`, fields: {
225
+ value: import_bcs7.bcs.u64()
364
226
  } });
365
227
 
366
228
  // src/generated/stable_layer/deps/sui/coin.ts
367
- var $moduleName16 = "0x2::coin";
368
- var TreasuryCap2 = new MoveStruct({ name: `${$moduleName16}::TreasuryCap`, fields: {
369
- id: UID2,
370
- total_supply: Supply2
229
+ var $moduleName8 = "0x2::coin";
230
+ var TreasuryCap = new MoveStruct({ name: `${$moduleName8}::TreasuryCap`, fields: {
231
+ id: UID,
232
+ total_supply: Supply
371
233
  } });
372
234
 
373
235
  // src/generated/stable_layer/stable_layer.ts
374
- var $moduleName17 = "@local-pkg/stable_factory.move::stable_layer";
375
- var NewStable = new MoveStruct({ name: `${$moduleName17}::NewStable`, fields: {
376
- u_type: import_bcs15.bcs.string(),
377
- stable_type: import_bcs15.bcs.string(),
378
- factory_id: import_bcs15.bcs.Address,
379
- factory_cap_id: import_bcs15.bcs.Address
380
- } });
381
- var Mint = new MoveStruct({ name: `${$moduleName17}::Mint`, fields: {
382
- u_type: import_bcs15.bcs.string(),
383
- stable_type: import_bcs15.bcs.string(),
384
- mint_amount: import_bcs15.bcs.u64(),
385
- farm_type: import_bcs15.bcs.string()
386
- } });
387
- var Burn = new MoveStruct({ name: `${$moduleName17}::Burn`, fields: {
388
- u_type: import_bcs15.bcs.string(),
389
- stable_type: import_bcs15.bcs.string(),
390
- burn_amount: import_bcs15.bcs.u64(),
391
- farm_types: import_bcs15.bcs.vector(Entity),
392
- repayment_amounts: import_bcs15.bcs.vector(import_bcs15.bcs.u64())
393
- } });
394
- var StableFactoryEntity = new MoveStruct({ name: `${$moduleName17}::StableFactoryEntity`, fields: {
395
- dummy_field: import_bcs15.bcs.bool()
396
- } });
397
- var StableRegistry = new MoveStruct({ name: `${$moduleName17}::StableRegistry`, fields: {
398
- id: UID2,
399
- versions: VecSet2(import_bcs15.bcs.u16()),
400
- total_supply: import_bcs15.bcs.u64()
236
+ var $moduleName9 = "@local-pkg/stable_factory.move::stable_layer";
237
+ var NewStable = new MoveStruct({ name: `${$moduleName9}::NewStable`, fields: {
238
+ u_type: import_bcs8.bcs.string(),
239
+ stable_type: import_bcs8.bcs.string(),
240
+ factory_id: import_bcs8.bcs.Address,
241
+ factory_cap_id: import_bcs8.bcs.Address
242
+ } });
243
+ var Mint = new MoveStruct({ name: `${$moduleName9}::Mint`, fields: {
244
+ u_type: import_bcs8.bcs.string(),
245
+ stable_type: import_bcs8.bcs.string(),
246
+ mint_amount: import_bcs8.bcs.u64(),
247
+ farm_type: import_bcs8.bcs.string()
248
+ } });
249
+ var Burn = new MoveStruct({ name: `${$moduleName9}::Burn`, fields: {
250
+ u_type: import_bcs8.bcs.string(),
251
+ stable_type: import_bcs8.bcs.string(),
252
+ burn_amount: import_bcs8.bcs.u64(),
253
+ farm_types: import_bcs8.bcs.vector(Entity),
254
+ repayment_amounts: import_bcs8.bcs.vector(import_bcs8.bcs.u64())
255
+ } });
256
+ var StableFactoryEntity = new MoveStruct({ name: `${$moduleName9}::StableFactoryEntity`, fields: {
257
+ dummy_field: import_bcs8.bcs.bool()
258
+ } });
259
+ var StableRegistry = new MoveStruct({ name: `${$moduleName9}::StableRegistry`, fields: {
260
+ id: UID,
261
+ versions: VecSet(import_bcs8.bcs.u16()),
262
+ total_supply: import_bcs8.bcs.u64()
401
263
  } });
402
- var AdminCap = new MoveStruct({ name: `${$moduleName17}::AdminCap`, fields: {
403
- id: UID2
264
+ var AdminCap = new MoveStruct({ name: `${$moduleName9}::AdminCap`, fields: {
265
+ id: UID
404
266
  } });
405
- var StableFactory = new MoveStruct({ name: `${$moduleName17}::StableFactory`, fields: {
406
- id: UID2,
407
- treasury_cap: TreasuryCap2,
408
- max_supply: import_bcs15.bcs.u64(),
267
+ var StableFactory = new MoveStruct({ name: `${$moduleName9}::StableFactory`, fields: {
268
+ id: UID,
269
+ treasury_cap: TreasuryCap,
270
+ max_supply: import_bcs8.bcs.u64(),
409
271
  sheet: Sheet,
410
- managers: VecSet2(import_bcs15.bcs.Address)
272
+ managers: VecSet(import_bcs8.bcs.Address)
411
273
  } });
412
- var FactoryCap = new MoveStruct({ name: `${$moduleName17}::FactoryCap`, fields: {
413
- id: UID2,
414
- factory_id: import_bcs15.bcs.Address
274
+ var FactoryCap = new MoveStruct({ name: `${$moduleName9}::FactoryCap`, fields: {
275
+ id: UID,
276
+ factory_id: import_bcs8.bcs.Address
415
277
  } });
416
278
  function mint(options) {
417
279
  const packageAddress = options.package ?? "@local-pkg/stable_factory.move";
@@ -460,19 +322,19 @@ function fulfillBurn(options) {
460
322
  }
461
323
 
462
324
  // src/generated/stable_vault_farm/stable_vault_farm.ts
463
- var import_bcs23 = require("@mysten/sui/bcs");
325
+ var import_bcs16 = require("@mysten/sui/bcs");
464
326
 
465
327
  // src/generated/stable_vault_farm/deps/sui/object.ts
466
- var import_bcs16 = require("@mysten/sui/bcs");
467
- var $moduleName18 = "0x2::object";
468
- var UID3 = new MoveStruct({ name: `${$moduleName18}::UID`, fields: {
469
- id: import_bcs16.bcs.Address
328
+ var import_bcs9 = require("@mysten/sui/bcs");
329
+ var $moduleName10 = "0x2::object";
330
+ var UID2 = new MoveStruct({ name: `${$moduleName10}::UID`, fields: {
331
+ id: import_bcs9.bcs.Address
470
332
  } });
471
333
 
472
334
  // src/generated/stable_vault_farm/deps/std/type_name.ts
473
- var import_bcs17 = require("@mysten/sui/bcs");
474
- var $moduleName19 = "std::type_name";
475
- var TypeName2 = new MoveStruct({ name: `${$moduleName19}::TypeName`, fields: {
335
+ var import_bcs10 = require("@mysten/sui/bcs");
336
+ var $moduleName11 = "std::type_name";
337
+ var TypeName2 = new MoveStruct({ name: `${$moduleName11}::TypeName`, fields: {
476
338
  /**
477
339
  * String representation of the type. All types are represented using their source
478
340
  * syntax: "u8", "u64", "bool", "address", "vector", and so on for primitive types.
@@ -482,90 +344,90 @@ var TypeName2 = new MoveStruct({ name: `${$moduleName19}::TypeName`, fields: {
482
344
  * Addresses are hex-encoded lowercase values of length ADDRESS_LENGTH (16, 20, or
483
345
  * 32 depending on the Move platform)
484
346
  */
485
- name: import_bcs17.bcs.string()
347
+ name: import_bcs10.bcs.string()
486
348
  } });
487
349
 
488
350
  // src/generated/stable_vault_farm/deps/sui/vec_map.ts
489
- var import_bcs18 = require("@mysten/sui/bcs");
490
- var $moduleName20 = "0x2::vec_map";
351
+ var import_bcs11 = require("@mysten/sui/bcs");
352
+ var $moduleName12 = "0x2::vec_map";
491
353
  function Entry2(...typeParameters) {
492
- return new MoveStruct({ name: `${$moduleName20}::Entry<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
354
+ return new MoveStruct({ name: `${$moduleName12}::Entry<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
493
355
  key: typeParameters[0],
494
356
  value: typeParameters[1]
495
357
  } });
496
358
  }
497
359
  function VecMap2(...typeParameters) {
498
- return new MoveStruct({ name: `${$moduleName20}::VecMap<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
499
- contents: import_bcs18.bcs.vector(Entry2(typeParameters[0], typeParameters[1]))
360
+ return new MoveStruct({ name: `${$moduleName12}::VecMap<${typeParameters[0].name}, ${typeParameters[1].name}>`, fields: {
361
+ contents: import_bcs11.bcs.vector(Entry2(typeParameters[0], typeParameters[1]))
500
362
  } });
501
363
  }
502
364
 
503
365
  // src/generated/stable_vault_farm/deps/bucket_v2_framework/liability.ts
504
- var import_bcs19 = require("@mysten/sui/bcs");
505
- var $moduleName21 = "bucket_v2_framework::liability";
506
- var Credit2 = new MoveStruct({ name: `${$moduleName21}::Credit`, fields: {
507
- value: import_bcs19.bcs.u64()
366
+ var import_bcs12 = require("@mysten/sui/bcs");
367
+ var $moduleName13 = "bucket_v2_framework::liability";
368
+ var Credit2 = new MoveStruct({ name: `${$moduleName13}::Credit`, fields: {
369
+ value: import_bcs12.bcs.u64()
508
370
  } });
509
- var Debt2 = new MoveStruct({ name: `${$moduleName21}::Debt`, fields: {
510
- value: import_bcs19.bcs.u64()
371
+ var Debt2 = new MoveStruct({ name: `${$moduleName13}::Debt`, fields: {
372
+ value: import_bcs12.bcs.u64()
511
373
  } });
512
374
 
513
375
  // src/generated/stable_vault_farm/deps/sui/vec_set.ts
514
- var import_bcs20 = require("@mysten/sui/bcs");
515
- var $moduleName22 = "0x2::vec_set";
516
- function VecSet3(...typeParameters) {
517
- return new MoveStruct({ name: `${$moduleName22}::VecSet<${typeParameters[0].name}>`, fields: {
518
- contents: import_bcs20.bcs.vector(typeParameters[0])
376
+ var import_bcs13 = require("@mysten/sui/bcs");
377
+ var $moduleName14 = "0x2::vec_set";
378
+ function VecSet2(...typeParameters) {
379
+ return new MoveStruct({ name: `${$moduleName14}::VecSet<${typeParameters[0].name}>`, fields: {
380
+ contents: import_bcs13.bcs.vector(typeParameters[0])
519
381
  } });
520
382
  }
521
383
 
522
384
  // src/generated/stable_vault_farm/deps/bucket_v2_framework/sheet.ts
523
- var $moduleName23 = "bucket_v2_framework::sheet";
524
- var Entity2 = new MoveTuple({ name: `${$moduleName23}::Entity`, fields: [TypeName2] });
525
- var Sheet2 = new MoveStruct({ name: `${$moduleName23}::Sheet`, fields: {
385
+ var $moduleName15 = "bucket_v2_framework::sheet";
386
+ var Entity2 = new MoveTuple({ name: `${$moduleName15}::Entity`, fields: [TypeName2] });
387
+ var Sheet2 = new MoveStruct({ name: `${$moduleName15}::Sheet`, fields: {
526
388
  credits: VecMap2(Entity2, Credit2),
527
389
  debts: VecMap2(Entity2, Debt2),
528
- blacklist: VecSet3(Entity2)
390
+ blacklist: VecSet2(Entity2)
529
391
  } });
530
392
 
531
393
  // src/generated/stable_vault_farm/deps/sui/table.ts
532
- var import_bcs21 = require("@mysten/sui/bcs");
533
- var $moduleName24 = "0x2::table";
534
- var Table = new MoveStruct({ name: `${$moduleName24}::Table`, fields: {
394
+ var import_bcs14 = require("@mysten/sui/bcs");
395
+ var $moduleName16 = "0x2::table";
396
+ var Table = new MoveStruct({ name: `${$moduleName16}::Table`, fields: {
535
397
  /** the ID of this table */
536
- id: UID3,
398
+ id: UID2,
537
399
  /** the number of key-value pairs in the table */
538
- size: import_bcs21.bcs.u64()
400
+ size: import_bcs14.bcs.u64()
539
401
  } });
540
402
 
541
403
  // src/generated/stable_vault_farm/deps/sui/balance.ts
542
- var import_bcs22 = require("@mysten/sui/bcs");
543
- var $moduleName25 = "0x2::balance";
544
- var Balance2 = new MoveStruct({ name: `${$moduleName25}::Balance`, fields: {
545
- value: import_bcs22.bcs.u64()
404
+ var import_bcs15 = require("@mysten/sui/bcs");
405
+ var $moduleName17 = "0x2::balance";
406
+ var Balance = new MoveStruct({ name: `${$moduleName17}::Balance`, fields: {
407
+ value: import_bcs15.bcs.u64()
546
408
  } });
547
409
 
548
410
  // src/generated/stable_vault_farm/stable_vault_farm.ts
549
- var $moduleName26 = "@local-pkg/stable_vault_farm.move::stable_vault_farm";
550
- var Claim = new MoveStruct({ name: `${$moduleName26}::Claim`, fields: {
551
- reward_type: import_bcs23.bcs.string(),
552
- amount: import_bcs23.bcs.u64(),
553
- claimer: import_bcs23.bcs.Address
411
+ var $moduleName18 = "@local-pkg/stable_vault_farm.move::stable_vault_farm";
412
+ var Claim = new MoveStruct({ name: `${$moduleName18}::Claim`, fields: {
413
+ reward_type: import_bcs16.bcs.string(),
414
+ amount: import_bcs16.bcs.u64(),
415
+ claimer: import_bcs16.bcs.Address
554
416
  } });
555
- var StableVaultFarmEntity = new MoveStruct({ name: `${$moduleName26}::StableVaultFarmEntity`, fields: {
556
- dummy_field: import_bcs23.bcs.bool()
417
+ var StableVaultFarmEntity = new MoveStruct({ name: `${$moduleName18}::StableVaultFarmEntity`, fields: {
418
+ dummy_field: import_bcs16.bcs.bool()
557
419
  } });
558
- var StableVaultFarmWitness = new MoveStruct({ name: `${$moduleName26}::StableVaultFarmWitness`, fields: {
559
- dummy_field: import_bcs23.bcs.bool()
420
+ var StableVaultFarmWitness = new MoveStruct({ name: `${$moduleName18}::StableVaultFarmWitness`, fields: {
421
+ dummy_field: import_bcs16.bcs.bool()
560
422
  } });
561
- var StableVaultFarm = new MoveStruct({ name: `${$moduleName26}::StableVaultFarm`, fields: {
562
- id: UID3,
423
+ var StableVaultFarm = new MoveStruct({ name: `${$moduleName18}::StableVaultFarm`, fields: {
424
+ id: UID2,
563
425
  sheet: Sheet2,
564
426
  yield_table: Table,
565
- u_surplus: Balance2
427
+ u_surplus: Balance
566
428
  } });
567
- var AdminCap2 = new MoveStruct({ name: `${$moduleName26}::AdminCap`, fields: {
568
- id: UID3
429
+ var AdminCap2 = new MoveStruct({ name: `${$moduleName18}::AdminCap`, fields: {
430
+ id: UID2
569
431
  } });
570
432
  function receive(options) {
571
433
  const packageAddress = options.package ?? "@local-pkg/stable_vault_farm.move";
@@ -632,17 +494,153 @@ function claim(options) {
632
494
  });
633
495
  }
634
496
 
497
+ // src/generated/yield_usdb/yield_usdb.ts
498
+ var import_bcs23 = require("@mysten/sui/bcs");
499
+
500
+ // src/generated/yield_usdb/deps/sui/object.ts
501
+ var import_bcs17 = require("@mysten/sui/bcs");
502
+ var $moduleName19 = "0x2::object";
503
+ var UID3 = new MoveStruct({ name: `${$moduleName19}::UID`, fields: {
504
+ id: import_bcs17.bcs.Address
505
+ } });
506
+
507
+ // src/generated/yield_usdb/deps/sui/balance.ts
508
+ var import_bcs18 = require("@mysten/sui/bcs");
509
+ var $moduleName20 = "0x2::balance";
510
+ var Balance2 = new MoveStruct({ name: `${$moduleName20}::Balance`, fields: {
511
+ value: import_bcs18.bcs.u64()
512
+ } });
513
+ var Supply2 = new MoveStruct({ name: `${$moduleName20}::Supply`, fields: {
514
+ value: import_bcs18.bcs.u64()
515
+ } });
516
+
517
+ // src/generated/yield_usdb/deps/sui/coin.ts
518
+ var $moduleName21 = "0x2::coin";
519
+ var TreasuryCap2 = new MoveStruct({ name: `${$moduleName21}::TreasuryCap`, fields: {
520
+ id: UID3,
521
+ total_supply: Supply2
522
+ } });
523
+
524
+ // src/generated/yield_usdb/deps/bucket_v2_framework/account.ts
525
+ var import_bcs19 = require("@mysten/sui/bcs");
526
+ var $moduleName22 = "bucket_v2_framework::account";
527
+ var Account = new MoveStruct({ name: `${$moduleName22}::Account`, fields: {
528
+ id: UID3,
529
+ alias: import_bcs19.bcs.option(import_bcs19.bcs.string())
530
+ } });
531
+
532
+ // src/generated/yield_usdb/buffer.ts
533
+ var import_bcs21 = require("@mysten/sui/bcs");
534
+
535
+ // src/generated/yield_usdb/deps/bucket_v2_framework/double.ts
536
+ var import_bcs20 = require("@mysten/sui/bcs");
537
+ var $moduleName23 = "bucket_v2_framework::double";
538
+ var Double = new MoveStruct({ name: `${$moduleName23}::Double`, fields: {
539
+ value: import_bcs20.bcs.u256()
540
+ } });
541
+
542
+ // src/generated/yield_usdb/buffer.ts
543
+ var $moduleName24 = "@local-pkg/yield_usdb.move::buffer";
544
+ var Buffer2 = new MoveStruct({ name: `${$moduleName24}::Buffer`, fields: {
545
+ balance: Balance2,
546
+ flow_rate: Double,
547
+ timestamp: import_bcs21.bcs.u64()
548
+ } });
549
+
550
+ // src/generated/yield_usdb/deps/sui/vec_set.ts
551
+ var import_bcs22 = require("@mysten/sui/bcs");
552
+ var $moduleName25 = "0x2::vec_set";
553
+ function VecSet3(...typeParameters) {
554
+ return new MoveStruct({ name: `${$moduleName25}::VecSet<${typeParameters[0].name}>`, fields: {
555
+ contents: import_bcs22.bcs.vector(typeParameters[0])
556
+ } });
557
+ }
558
+
559
+ // src/generated/yield_usdb/yield_usdb.ts
560
+ var $moduleName26 = "@local-pkg/yield_usdb.move::yield_usdb";
561
+ var Created = new MoveStruct({ name: `${$moduleName26}::Created`, fields: {
562
+ vault_id: import_bcs23.bcs.Address,
563
+ max_lp_supply: import_bcs23.bcs.u64(),
564
+ abstract_address: import_bcs23.bcs.Address
565
+ } });
566
+ var MaxSupplyUpdated = new MoveStruct({ name: `${$moduleName26}::MaxSupplyUpdated`, fields: {
567
+ vault_id: import_bcs23.bcs.Address,
568
+ previous_max_lp_supply: import_bcs23.bcs.u64(),
569
+ current_max_lp_supply: import_bcs23.bcs.u64()
570
+ } });
571
+ var Minted = new MoveStruct({ name: `${$moduleName26}::Minted`, fields: {
572
+ vault_id: import_bcs23.bcs.Address,
573
+ usdb_amount: import_bcs23.bcs.u64(),
574
+ lp_amount: import_bcs23.bcs.u64()
575
+ } });
576
+ var Burned = new MoveStruct({ name: `${$moduleName26}::Burned`, fields: {
577
+ vault_id: import_bcs23.bcs.Address,
578
+ lp_amount: import_bcs23.bcs.u64(),
579
+ usdb_amount: import_bcs23.bcs.u64()
580
+ } });
581
+ var Claimed = new MoveStruct({ name: `${$moduleName26}::Claimed`, fields: {
582
+ vault_id: import_bcs23.bcs.Address,
583
+ reward_type: import_bcs23.bcs.string(),
584
+ reward_amount: import_bcs23.bcs.u64()
585
+ } });
586
+ var Collected = new MoveStruct({ name: `${$moduleName26}::Collected`, fields: {
587
+ vault_id: import_bcs23.bcs.Address,
588
+ usdb_amount: import_bcs23.bcs.u64()
589
+ } });
590
+ var YieldVault = new MoveStruct({ name: `${$moduleName26}::YieldVault`, fields: {
591
+ id: UID3,
592
+ max_lp_supply: import_bcs23.bcs.u64(),
593
+ lp_treasury_cap: TreasuryCap2,
594
+ abstract_account: Account,
595
+ buffer: Buffer2,
596
+ managers: VecSet3(import_bcs23.bcs.Address),
597
+ versions: VecSet3(import_bcs23.bcs.u16())
598
+ } });
599
+ function release(options) {
600
+ const packageAddress = options.package ?? "@local-pkg/yield_usdb.move";
601
+ const argumentsTypes = [
602
+ `${packageAddress}::yield_usdb::YieldVault<${options.typeArguments[0]}, ${options.typeArguments[1]}>`,
603
+ `${packageAddress}::usdb::Treasury`,
604
+ `${packageAddress}::saving::SavingPool<${options.typeArguments[1]}>`,
605
+ "0x0000000000000000000000000000000000000000000000000000000000000002::clock::Clock"
606
+ ];
607
+ const parameterNames = ["vault", "treasury", "savingPool"];
608
+ return (tx) => tx.moveCall({
609
+ package: packageAddress,
610
+ module: "yield_usdb",
611
+ function: "release",
612
+ arguments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),
613
+ typeArguments: options.typeArguments
614
+ });
615
+ }
616
+
617
+ // src/libs/constants.ts
618
+ var STABLE_VAULT = "0x65f38160110cd6859d05f338ff54b4f462883bb6f87c667a65c0fb0e537410a7";
619
+ var USDC_TYPE = "0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC";
620
+ var STABLE_LP_TYPE = "0xb75744fadcbfc174627567ca29645d0af8f6e6fd01b6f57c75a08cd3fb97c567::lake_usdc::LakeUSDC";
621
+ var YUSDB_TYPE = "0xac718b4b672d7f461fe7e86847166ff9c23cadba217397f0848a95bdea1f1051::yesusdb::YesUSDB";
622
+ var STABLE_LAYER_PACKAGE_ID = "0xa4a78d8d3d1df62fb81d10068142e79b0d30ad4e3f578060487e36ed9ea764da";
623
+ var STABLE_VAULT_FARM_PACKAGE_ID = "0x00d31ddaa73a56abcc3e2d885ac1e1d90f9ae0e38bbef2ba2923550c8250de4d";
624
+ var SAVING_TYPE = "0x38f61c75fa8407140294c84167dd57684580b55c3066883b48dedc344b1cde1e::susdb::SUSDB";
625
+ var YIELD_VAULT = "0x0a7f6325253157cd437812fea0ceee9a6b96f2ec5eac410da6df39558ff3a4d1";
626
+ var STABLE_REGISTRY = "0x213f4d584c0770f455bb98c94a4ee5ea9ddbc3d4ebb98a0ad6d093eb6da41642";
627
+ var STABLE_VAULT_FARM_ENTITY_TYPE = `0xc1025fe014b03d33b207b5afb0ba04293be87fab438c1418a26a75c2fe05c223::stable_vault_farm::StableVaultFarmEntity<${STABLE_LP_TYPE}, ${USDC_TYPE}>`;
628
+ var STABLE_VAULT_FARM = "0xe958b7d102b33bf3c09addb0e2cdff102ff2c93afe407ec5c2a541e8959a650c";
629
+ var YIELD_USDB_PACKAGE_ID = "0x3dcbf82f7e3b80ed65cee596612602a6c7e78c71fd40f6455b40ad033ed04786";
630
+
635
631
  // src/index.ts
636
- var import_sdk = require("@bucket-protocol/sdk");
637
632
  var StableLayerClient = class {
638
633
  constructor(config) {
639
634
  this.bucketClient = new import_sdk.BucketClient({ network: config.network });
640
- this.suiClient = new import_client.SuiClient({ url: (0, import_client.getFullnodeUrl)(config.network) });
635
+ this.suiClient = new import_grpc.SuiGrpcClient({
636
+ network: config.network,
637
+ baseUrl: `https://fullnode.${config.network}.sui.io:443`
638
+ });
641
639
  this.sender = config.sender;
642
640
  }
643
641
  async buildMintTx({
644
642
  tx,
645
- lpToken,
643
+ stableCoinType,
646
644
  usdcCoin,
647
645
  sender,
648
646
  autoTransfer = true
@@ -654,11 +652,7 @@ var StableLayerClient = class {
654
652
  registry: STABLE_REGISTRY,
655
653
  uCoin: usdcCoin
656
654
  },
657
- typeArguments: [
658
- STABLE_COIN_TYPES[lpToken],
659
- USDC_TYPE,
660
- STABLE_VAULT_FARM_ENTITY_TYPE
661
- ]
655
+ typeArguments: [stableCoinType, USDC_TYPE, STABLE_VAULT_FARM_ENTITY_TYPE]
662
656
  })(tx);
663
657
  const [uPrice] = await this.bucketClient.aggregatePrices(tx, {
664
658
  coinTypes: [USDC_TYPE]
@@ -668,7 +662,7 @@ var StableLayerClient = class {
668
662
  typeArguments: [
669
663
  STABLE_LP_TYPE,
670
664
  USDC_TYPE,
671
- STABLE_COIN_TYPES[lpToken],
665
+ stableCoinType,
672
666
  YUSDB_TYPE,
673
667
  SAVING_TYPE
674
668
  ],
@@ -693,7 +687,7 @@ var StableLayerClient = class {
693
687
  }
694
688
  async buildBurnTx({
695
689
  tx,
696
- lpToken,
690
+ stableCoinType,
697
691
  amount,
698
692
  all,
699
693
  sender,
@@ -707,10 +701,10 @@ var StableLayerClient = class {
707
701
  balance: all ? BigInt(
708
702
  (await this.suiClient.getBalance({
709
703
  owner: sender ?? this.sender,
710
- coinType: STABLE_COIN_TYPES[lpToken]
711
- })).totalBalance
704
+ coinType: stableCoinType
705
+ })).balance.balance
712
706
  ) : amount,
713
- type: STABLE_COIN_TYPES[lpToken]
707
+ type: stableCoinType
714
708
  });
715
709
  this.releaseRewards(tx);
716
710
  const burnRequest = requestBurn({
@@ -719,10 +713,7 @@ var StableLayerClient = class {
719
713
  registry: STABLE_REGISTRY,
720
714
  stableCoin: btcUsdCoin
721
715
  },
722
- typeArguments: [
723
- STABLE_COIN_TYPES[lpToken],
724
- USDC_TYPE
725
- ]
716
+ typeArguments: [stableCoinType, USDC_TYPE]
726
717
  })(tx);
727
718
  const [uPrice] = await this.bucketClient.aggregatePrices(tx, {
728
719
  coinTypes: [USDC_TYPE]
@@ -742,7 +733,7 @@ var StableLayerClient = class {
742
733
  typeArguments: [
743
734
  STABLE_LP_TYPE,
744
735
  USDC_TYPE,
745
- STABLE_COIN_TYPES[lpToken],
736
+ stableCoinType,
746
737
  YUSDB_TYPE,
747
738
  SAVING_TYPE
748
739
  ]
@@ -754,10 +745,7 @@ var StableLayerClient = class {
754
745
  registry: STABLE_REGISTRY,
755
746
  burnRequest
756
747
  },
757
- typeArguments: [
758
- STABLE_COIN_TYPES[lpToken],
759
- USDC_TYPE
760
- ]
748
+ typeArguments: [stableCoinType, USDC_TYPE]
761
749
  })(tx);
762
750
  if (autoTransfer) {
763
751
  tx.transferObjects([usdcCoin], sender ?? this.sender);
@@ -768,7 +756,7 @@ var StableLayerClient = class {
768
756
  }
769
757
  async buildClaimTx({
770
758
  tx,
771
- lpToken,
759
+ stableCoinType,
772
760
  sender,
773
761
  autoTransfer = true
774
762
  }) {
@@ -787,7 +775,7 @@ var StableLayerClient = class {
787
775
  typeArguments: [
788
776
  STABLE_LP_TYPE,
789
777
  USDC_TYPE,
790
- STABLE_COIN_TYPES[lpToken],
778
+ stableCoinType,
791
779
  YUSDB_TYPE,
792
780
  SAVING_TYPE
793
781
  ]
@@ -802,24 +790,25 @@ var StableLayerClient = class {
802
790
  }
803
791
  async getTotalSupply() {
804
792
  const result = await this.suiClient.getObject({
805
- id: STABLE_REGISTRY,
806
- options: {
807
- showContent: true
808
- }
793
+ objectId: STABLE_REGISTRY,
794
+ include: { json: true }
809
795
  });
810
- const content = result.data?.content;
811
- return content?.fields?.total_supply;
796
+ const json = result.object?.json;
797
+ return json?.total_supply ?? void 0;
812
798
  }
813
- async getTotalSupplyByCoinName(coinName) {
814
- const result = await this.suiClient.getDynamicFieldObject({
799
+ async getTotalSupplyByCoinType(stableCoinType) {
800
+ const TypeName3 = import_bcs24.bcs.struct("TypeName", { name: import_bcs24.bcs.string() });
801
+ const nameBcs = TypeName3.serialize({ name: stableCoinType.slice(2) }).toBytes();
802
+ const result = await this.suiClient.core.getDynamicObjectField({
815
803
  parentId: STABLE_REGISTRY,
816
804
  name: {
817
805
  type: "0x1::type_name::TypeName",
818
- value: STABLE_COIN_TYPES[coinName]
819
- }
806
+ bcs: nameBcs
807
+ },
808
+ include: { json: true }
820
809
  });
821
- const content = result.data?.content;
822
- return content?.fields?.treasury_cap?.fields?.total_supply?.fields?.value;
810
+ const json = result.object?.json;
811
+ return json?.treasury_cap?.total_supply?.value ?? void 0;
823
812
  }
824
813
  getBucketSavingPool(tx) {
825
814
  return this.bucketClient.savingPoolObj(tx, {