@ember-finance/sdk 2.5.0 → 2.6.0-pre.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.
Files changed (77) hide show
  1. package/dist/src/abis/AtomicLiquidity.json +4050 -0
  2. package/dist/src/abis/ERC20Token.json +2 -2
  3. package/dist/src/abis/EmberETHVault.json +279 -5
  4. package/dist/src/abis/EmberProtocolConfig.json +170 -2
  5. package/dist/src/abis/EmberVault.json +2 -2
  6. package/dist/src/abis/EmberVaultMintBurnOFTAdapter.json +43 -2
  7. package/dist/src/api/v2/apis/accounts-api.d.ts +5 -0
  8. package/dist/src/api/v2/apis/accounts-api.js +6 -1
  9. package/dist/src/api/v2/apis/vaults-api.d.ts +16 -4
  10. package/dist/src/api/v2/apis/vaults-api.js +21 -7
  11. package/dist/src/api/v2/models/account-transaction-transaction-data.d.ts +5 -1
  12. package/dist/src/api/v2/models/account-transaction.d.ts +5 -0
  13. package/dist/src/api/v2/models/account-transaction.js +6 -1
  14. package/dist/src/api/v2/models/chain-vault-details.d.ts +14 -0
  15. package/dist/src/api/v2/models/escrow-claim-transaction.d.ts +56 -0
  16. package/dist/src/api/v2/models/escrow-claim-transaction.js +14 -0
  17. package/dist/src/api/v2/models/evm-atomic-liquidity-lib.d.ts +48 -0
  18. package/dist/src/api/v2/models/evm-atomic-liquidity-lib.js +14 -0
  19. package/dist/src/api/v2/models/evm-atomic-vault.d.ts +102 -0
  20. package/dist/src/api/v2/models/evm-atomic-vault.js +14 -0
  21. package/dist/src/api/v2/models/evm-contracts.d.ts +16 -0
  22. package/dist/src/api/v2/models/fee-multiplier-tier.d.ts +30 -0
  23. package/dist/src/api/v2/models/fee-multiplier-tier.js +14 -0
  24. package/dist/src/api/v2/models/holdback-release-transaction.d.ts +56 -0
  25. package/dist/src/api/v2/models/holdback-release-transaction.js +14 -0
  26. package/dist/src/api/v2/models/index.d.ts +9 -0
  27. package/dist/src/api/v2/models/index.js +9 -0
  28. package/dist/src/api/v2/models/instant-withdraw-config.d.ts +109 -0
  29. package/dist/src/api/v2/models/instant-withdraw-config.js +14 -0
  30. package/dist/src/api/v2/models/instant-withdraw-transaction.d.ts +74 -0
  31. package/dist/src/api/v2/models/instant-withdraw-transaction.js +14 -0
  32. package/dist/src/api/v2/models/instant-withdraw-via-swap-transaction.d.ts +74 -0
  33. package/dist/src/api/v2/models/instant-withdraw-via-swap-transaction.js +14 -0
  34. package/dist/src/api/v2/models/supported-ember-vault.d.ts +42 -0
  35. package/dist/src/api/v2/models/supported-ember-vault.js +14 -0
  36. package/dist/src/api/v2/models/vault-detail.d.ts +11 -0
  37. package/dist/src/api/v2/models/vault-detail.js +4 -0
  38. package/dist/src/atomic/instant-withdraw.d.ts +125 -0
  39. package/dist/src/atomic/instant-withdraw.js +122 -0
  40. package/dist/src/ember-vaults.d.ts +2 -1
  41. package/dist/src/evm-vaults/on-chain-calls/atomic-liquidity.d.ts +98 -0
  42. package/dist/src/evm-vaults/on-chain-calls/atomic-liquidity.js +212 -0
  43. package/dist/src/evm-vaults/on-chain-calls/index.d.ts +1 -0
  44. package/dist/src/evm-vaults/on-chain-calls/index.js +1 -0
  45. package/dist/src/evm-vaults/on-chain-calls/operator.d.ts +10 -0
  46. package/dist/src/evm-vaults/on-chain-calls/operator.js +28 -0
  47. package/dist/src/evm-vaults/on-chain-calls/tx-builder.d.ts +109 -0
  48. package/dist/src/evm-vaults/on-chain-calls/tx-builder.js +281 -0
  49. package/dist/src/evm-vaults/on-chain-calls/user.d.ts +50 -0
  50. package/dist/src/evm-vaults/on-chain-calls/user.js +75 -0
  51. package/dist/src/evm-vaults/on-chain-calls/vault-admin.d.ts +55 -0
  52. package/dist/src/evm-vaults/on-chain-calls/vault-admin.js +122 -0
  53. package/dist/src/evm-vaults/on-chain-calls/vault-reader.d.ts +6 -0
  54. package/dist/src/evm-vaults/on-chain-calls/vault-reader.js +9 -0
  55. package/dist/src/evm-vaults/utils/deployment-parser.d.ts +8 -0
  56. package/dist/src/evm-vaults/utils/deployment-parser.js +11 -0
  57. package/dist/src/sui-vaults/interfaces/index.d.ts +15 -0
  58. package/dist/src/sui-vaults/on-chain-calls/admin.d.ts +37 -1
  59. package/dist/src/sui-vaults/on-chain-calls/admin.js +56 -0
  60. package/dist/src/sui-vaults/on-chain-calls/atomic-liquidity.d.ts +62 -0
  61. package/dist/src/sui-vaults/on-chain-calls/atomic-liquidity.js +174 -0
  62. package/dist/src/sui-vaults/on-chain-calls/index.d.ts +1 -0
  63. package/dist/src/sui-vaults/on-chain-calls/index.js +1 -0
  64. package/dist/src/sui-vaults/on-chain-calls/onchain-calls.d.ts +2 -1
  65. package/dist/src/sui-vaults/on-chain-calls/operator.d.ts +129 -1
  66. package/dist/src/sui-vaults/on-chain-calls/operator.js +210 -0
  67. package/dist/src/sui-vaults/on-chain-calls/tx-builder.d.ts +482 -0
  68. package/dist/src/sui-vaults/on-chain-calls/tx-builder.js +1430 -0
  69. package/dist/src/sui-vaults/on-chain-calls/user.d.ts +107 -1
  70. package/dist/src/sui-vaults/on-chain-calls/user.js +190 -0
  71. package/dist/src/sui-vaults/on-chain-calls/vault-admin.d.ts +229 -1
  72. package/dist/src/sui-vaults/on-chain-calls/vault-admin.js +391 -0
  73. package/dist/src/sui-vaults/on-chain-calls/vault.d.ts +2 -1
  74. package/dist/src/sui-vaults/utils/common.d.ts +2 -1
  75. package/dist/src/sui-vaults/utils/deployment-parser.d.ts +12 -0
  76. package/dist/src/sui-vaults/utils/deployment-parser.js +24 -0
  77. package/package.json +3 -2
@@ -1,6 +1,7 @@
1
+ import { BaseClient as SuiClient } from "@mysten/sui/client";
1
2
  import { OnChainCalls } from "./onchain-calls.js";
2
3
  import { ISuiDeployment, IVaultOptionalParams } from "../interfaces/index.js";
3
- import { OnChainCallResponse, Signer, SuiAddress, SuiClient, SuiTransactionBlockResponseOptions } from "@firefly-exchange/library-sui";
4
+ import { OnChainCallResponse, Signer, SuiAddress, SuiTransactionBlockResponseOptions } from "@firefly-exchange/library-sui";
4
5
  import { NumStr } from "@firefly-exchange/library-sui";
5
6
  export declare class OperatorCalls extends OnChainCalls {
6
7
  constructor(_network: string, _suiClient: SuiClient, _deployment: ISuiDeployment, _signer?: Signer, _walletAddress?: string);
@@ -100,4 +101,131 @@ export declare class OperatorCalls extends OnChainCalls {
100
101
  * @returns OnChainCallResponse
101
102
  */
102
103
  setFeeExemptionList(vaultId: string, user: SuiAddress, status: boolean, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
104
+ /**
105
+ * Process pending withdrawal requests of an atomic vault
106
+ * @param vaultId The id of the atomic vault
107
+ * @param maxRequests The maximum number of withdrawal requests to process
108
+ * @param options Optional tx execution params
109
+ * @returns OnChainCallResponse
110
+ */
111
+ atomicProcessWithdrawalRequests(vaultId: string, maxRequests: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
112
+ /**
113
+ * Process pending withdrawal requests of an atomic vault up to a timestamp
114
+ * @param vaultId The id of the atomic vault
115
+ * @param timestamp The timestamp to process withdrawal requests up to
116
+ * @param options Optional tx execution params
117
+ * @returns OnChainCallResponse
118
+ */
119
+ atomicProcessWithdrawalRequestsUpToTimestamp(vaultId: string, timestamp: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
120
+ /**
121
+ * Collect the platform fee of an atomic vault
122
+ * @param vaultId The id of the atomic vault
123
+ * @param loss The reported loss amount
124
+ * @param options Optional tx execution params
125
+ * @returns OnChainCallResponse
126
+ */
127
+ atomicCollectPlatformFee(vaultId: string, loss: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
128
+ /**
129
+ * Supply collateral from an atomic vault into the Suilend strategy
130
+ * @param vaultId The id of the atomic vault
131
+ * @param poolCoinType The Suilend pool coin type (P)
132
+ * @param lendingMarketId Object id of the Suilend LendingMarket<P>
133
+ * @param amount The amount to supply
134
+ * @param options Optional tx execution params
135
+ * @returns OnChainCallResponse
136
+ */
137
+ atomicSupplyToSuilendStrategy(vaultId: string, poolCoinType: string, lendingMarketId: string, amount: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
138
+ /**
139
+ * Supply collateral from an atomic vault into the AlphaLend strategy
140
+ * @param vaultId The id of the atomic vault
141
+ * @param lendingProtocolId Object id of the AlphaLend LendingProtocol
142
+ * @param amount The amount to supply
143
+ * @param options Optional tx execution params
144
+ * @returns OnChainCallResponse
145
+ */
146
+ atomicSupplyToAlphalendStrategy(vaultId: string, lendingProtocolId: string, amount: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
147
+ /**
148
+ * Withdraw collateral from the Suilend strategy back into an atomic vault
149
+ * @param vaultId The id of the atomic vault
150
+ * @param poolCoinType The Suilend pool coin type (P)
151
+ * @param lendingMarketId Object id of the Suilend LendingMarket<P>
152
+ * @param amount The amount to withdraw
153
+ * @param options Optional tx execution params
154
+ * @returns OnChainCallResponse
155
+ */
156
+ atomicWithdrawFromSuilendStrategy(vaultId: string, poolCoinType: string, lendingMarketId: string, amount: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
157
+ /**
158
+ * Withdraw collateral from the AlphaLend strategy back into an atomic vault
159
+ * @param vaultId The id of the atomic vault
160
+ * @param lendingProtocolId Object id of the AlphaLend LendingProtocol
161
+ * @param amount The amount to withdraw
162
+ * @param options Optional tx execution params
163
+ * @returns OnChainCallResponse
164
+ */
165
+ atomicWithdrawFromAlphalendStrategy(vaultId: string, lendingProtocolId: string, amount: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
166
+ /**
167
+ * Supply collateral from an atomic vault to one of its sub accounts
168
+ * @param vaultId The id of the atomic vault
169
+ * @param subAccount The sub account address
170
+ * @param amount The amount to supply
171
+ * @param options Optional tx execution params
172
+ * @returns OnChainCallResponse
173
+ */
174
+ atomicSupplyToSubAccount(vaultId: string, subAccount: string, amount: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
175
+ /**
176
+ * Deposit collateral back into an atomic vault from a sub account
177
+ * @param vaultId The id of the atomic vault
178
+ * @param tokenId Object id of the Receiving<Coin<T>> payment to claim
179
+ * @param subAccount The sub account address
180
+ * @param options Optional tx execution params
181
+ * @returns OnChainCallResponse
182
+ */
183
+ atomicDepositFromSubAccount(vaultId: string, tokenId: string, subAccount: string, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
184
+ /**
185
+ * Redeem collected ember shares from an atomic vault against a source vault
186
+ * @param vaultId The id of the atomic vault
187
+ * @param sourceReceiptType The receipt coin type of the source vault (R)
188
+ * @param sourceVaultId Object id of the source Vault<T, R>
189
+ * @param amount The amount of shares to redeem
190
+ * @param options Optional tx execution params
191
+ * @returns OnChainCallResponse
192
+ */
193
+ atomicRedeemCollectedEmberShares(vaultId: string, sourceReceiptType: string, sourceVaultId: string, amount: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
194
+ /**
195
+ * Release users' holdback for an ember share source vault
196
+ * @param vaultId The id of the atomic vault
197
+ * @param shareVaultId Id of the source ember share vault
198
+ * @param unwindingPercentage The unwinding percentage
199
+ * @param maxEntries The max entries to process
200
+ * @param options Optional tx execution params
201
+ * @returns OnChainCallResponse
202
+ */
203
+ atomicReleaseUsersHoldback(vaultId: string, shareVaultId: string, unwindingPercentage: NumStr, maxEntries: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
204
+ /**
205
+ * Claim received collateral (a Receiving<Coin<T>>) for an atomic vault
206
+ * @param vaultId The id of the atomic vault
207
+ * @param tokenId Object id of the Receiving<Coin<T>> payment to claim
208
+ * @param options Optional tx execution params
209
+ * @returns OnChainCallResponse
210
+ */
211
+ atomicClaimReceivedCollateral(vaultId: string, tokenId: string, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
212
+ /**
213
+ * Claim returned ember shares (a Receiving<Coin<R>>) for an atomic vault
214
+ * @param vaultId The id of the atomic vault
215
+ * @param sourceReceiptType The receipt coin type of the source vault (R)
216
+ * @param sourceVaultId Id of the source vault the shares belong to
217
+ * @param tokenId Object id of the Receiving<Coin<R>> payment to claim
218
+ * @param options Optional tx execution params
219
+ * @returns OnChainCallResponse
220
+ */
221
+ atomicClaimReturnedEmberShares(vaultId: string, sourceReceiptType: string, sourceVaultId: string, tokenId: string, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
222
+ /**
223
+ * Update the rate of an atomic vault (rate manager role; uses operator class
224
+ * to mirror the receipt-vault `updateVaultRate` placement)
225
+ * @param vaultId The id of the atomic vault
226
+ * @param newRate The new rate to set for the vault
227
+ * @param options Optional tx execution params
228
+ * @returns OnChainCallResponse
229
+ */
230
+ atomicUpdateVaultRate(vaultId: string, newRate: NumStr, options?: IVaultOptionalParams & SuiTransactionBlockResponseOptions): Promise<OnChainCallResponse>;
103
231
  }
@@ -177,4 +177,214 @@ export class OperatorCalls extends OnChainCalls {
177
177
  });
178
178
  return this.execCall(txb, options);
179
179
  }
180
+ // ============================================================================
181
+ // Atomic Liquidity Vault (BFE-818) — operator / rate-manager methods
182
+ // ============================================================================
183
+ /**
184
+ * Process pending withdrawal requests of an atomic vault
185
+ * @param vaultId The id of the atomic vault
186
+ * @param maxRequests The maximum number of withdrawal requests to process
187
+ * @param options Optional tx execution params
188
+ * @returns OnChainCallResponse
189
+ */
190
+ async atomicProcessWithdrawalRequests(vaultId, maxRequests, options) {
191
+ const txb = options?.txBlock || new TransactionBlock();
192
+ this.txBuilder.atomicProcessWithdrawalRequests(vaultId, maxRequests, {
193
+ ...options,
194
+ txBlock: txb
195
+ });
196
+ return this.execCall(txb, options);
197
+ }
198
+ /**
199
+ * Process pending withdrawal requests of an atomic vault up to a timestamp
200
+ * @param vaultId The id of the atomic vault
201
+ * @param timestamp The timestamp to process withdrawal requests up to
202
+ * @param options Optional tx execution params
203
+ * @returns OnChainCallResponse
204
+ */
205
+ async atomicProcessWithdrawalRequestsUpToTimestamp(vaultId, timestamp, options) {
206
+ const txb = options?.txBlock || new TransactionBlock();
207
+ this.txBuilder.atomicProcessWithdrawalRequestsUpToTimestamp(vaultId, timestamp, {
208
+ ...options,
209
+ txBlock: txb
210
+ });
211
+ return this.execCall(txb, options);
212
+ }
213
+ /**
214
+ * Collect the platform fee of an atomic vault
215
+ * @param vaultId The id of the atomic vault
216
+ * @param loss The reported loss amount
217
+ * @param options Optional tx execution params
218
+ * @returns OnChainCallResponse
219
+ */
220
+ async atomicCollectPlatformFee(vaultId, loss, options) {
221
+ const txb = options?.txBlock || new TransactionBlock();
222
+ this.txBuilder.atomicCollectPlatformFee(vaultId, loss, {
223
+ ...options,
224
+ txBlock: txb
225
+ });
226
+ return this.execCall(txb, options);
227
+ }
228
+ /**
229
+ * Supply collateral from an atomic vault into the Suilend strategy
230
+ * @param vaultId The id of the atomic vault
231
+ * @param poolCoinType The Suilend pool coin type (P)
232
+ * @param lendingMarketId Object id of the Suilend LendingMarket<P>
233
+ * @param amount The amount to supply
234
+ * @param options Optional tx execution params
235
+ * @returns OnChainCallResponse
236
+ */
237
+ async atomicSupplyToSuilendStrategy(vaultId, poolCoinType, lendingMarketId, amount, options) {
238
+ const txb = options?.txBlock || new TransactionBlock();
239
+ this.txBuilder.atomicSupplyToSuilendStrategy(vaultId, poolCoinType, lendingMarketId, amount, { ...options, txBlock: txb });
240
+ return this.execCall(txb, options);
241
+ }
242
+ /**
243
+ * Supply collateral from an atomic vault into the AlphaLend strategy
244
+ * @param vaultId The id of the atomic vault
245
+ * @param lendingProtocolId Object id of the AlphaLend LendingProtocol
246
+ * @param amount The amount to supply
247
+ * @param options Optional tx execution params
248
+ * @returns OnChainCallResponse
249
+ */
250
+ async atomicSupplyToAlphalendStrategy(vaultId, lendingProtocolId, amount, options) {
251
+ const txb = options?.txBlock || new TransactionBlock();
252
+ this.txBuilder.atomicSupplyToAlphalendStrategy(vaultId, lendingProtocolId, amount, {
253
+ ...options,
254
+ txBlock: txb
255
+ });
256
+ return this.execCall(txb, options);
257
+ }
258
+ /**
259
+ * Withdraw collateral from the Suilend strategy back into an atomic vault
260
+ * @param vaultId The id of the atomic vault
261
+ * @param poolCoinType The Suilend pool coin type (P)
262
+ * @param lendingMarketId Object id of the Suilend LendingMarket<P>
263
+ * @param amount The amount to withdraw
264
+ * @param options Optional tx execution params
265
+ * @returns OnChainCallResponse
266
+ */
267
+ async atomicWithdrawFromSuilendStrategy(vaultId, poolCoinType, lendingMarketId, amount, options) {
268
+ const txb = options?.txBlock || new TransactionBlock();
269
+ this.txBuilder.atomicWithdrawFromSuilendStrategy(vaultId, poolCoinType, lendingMarketId, amount, { ...options, txBlock: txb });
270
+ return this.execCall(txb, options);
271
+ }
272
+ /**
273
+ * Withdraw collateral from the AlphaLend strategy back into an atomic vault
274
+ * @param vaultId The id of the atomic vault
275
+ * @param lendingProtocolId Object id of the AlphaLend LendingProtocol
276
+ * @param amount The amount to withdraw
277
+ * @param options Optional tx execution params
278
+ * @returns OnChainCallResponse
279
+ */
280
+ async atomicWithdrawFromAlphalendStrategy(vaultId, lendingProtocolId, amount, options) {
281
+ const txb = options?.txBlock || new TransactionBlock();
282
+ this.txBuilder.atomicWithdrawFromAlphalendStrategy(vaultId, lendingProtocolId, amount, { ...options, txBlock: txb });
283
+ return this.execCall(txb, options);
284
+ }
285
+ /**
286
+ * Supply collateral from an atomic vault to one of its sub accounts
287
+ * @param vaultId The id of the atomic vault
288
+ * @param subAccount The sub account address
289
+ * @param amount The amount to supply
290
+ * @param options Optional tx execution params
291
+ * @returns OnChainCallResponse
292
+ */
293
+ async atomicSupplyToSubAccount(vaultId, subAccount, amount, options) {
294
+ const txb = options?.txBlock || new TransactionBlock();
295
+ this.txBuilder.atomicSupplyToSubAccount(vaultId, subAccount, amount, {
296
+ ...options,
297
+ txBlock: txb
298
+ });
299
+ return this.execCall(txb, options);
300
+ }
301
+ /**
302
+ * Deposit collateral back into an atomic vault from a sub account
303
+ * @param vaultId The id of the atomic vault
304
+ * @param tokenId Object id of the Receiving<Coin<T>> payment to claim
305
+ * @param subAccount The sub account address
306
+ * @param options Optional tx execution params
307
+ * @returns OnChainCallResponse
308
+ */
309
+ async atomicDepositFromSubAccount(vaultId, tokenId, subAccount, options) {
310
+ const txb = options?.txBlock || new TransactionBlock();
311
+ this.txBuilder.atomicDepositFromSubAccount(vaultId, tokenId, subAccount, {
312
+ ...options,
313
+ txBlock: txb
314
+ });
315
+ return this.execCall(txb, options);
316
+ }
317
+ /**
318
+ * Redeem collected ember shares from an atomic vault against a source vault
319
+ * @param vaultId The id of the atomic vault
320
+ * @param sourceReceiptType The receipt coin type of the source vault (R)
321
+ * @param sourceVaultId Object id of the source Vault<T, R>
322
+ * @param amount The amount of shares to redeem
323
+ * @param options Optional tx execution params
324
+ * @returns OnChainCallResponse
325
+ */
326
+ async atomicRedeemCollectedEmberShares(vaultId, sourceReceiptType, sourceVaultId, amount, options) {
327
+ const txb = options?.txBlock || new TransactionBlock();
328
+ this.txBuilder.atomicRedeemCollectedEmberShares(vaultId, sourceReceiptType, sourceVaultId, amount, { ...options, txBlock: txb });
329
+ return this.execCall(txb, options);
330
+ }
331
+ /**
332
+ * Release users' holdback for an ember share source vault
333
+ * @param vaultId The id of the atomic vault
334
+ * @param shareVaultId Id of the source ember share vault
335
+ * @param unwindingPercentage The unwinding percentage
336
+ * @param maxEntries The max entries to process
337
+ * @param options Optional tx execution params
338
+ * @returns OnChainCallResponse
339
+ */
340
+ async atomicReleaseUsersHoldback(vaultId, shareVaultId, unwindingPercentage, maxEntries, options) {
341
+ const txb = options?.txBlock || new TransactionBlock();
342
+ this.txBuilder.atomicReleaseUsersHoldback(vaultId, shareVaultId, unwindingPercentage, maxEntries, { ...options, txBlock: txb });
343
+ return this.execCall(txb, options);
344
+ }
345
+ /**
346
+ * Claim received collateral (a Receiving<Coin<T>>) for an atomic vault
347
+ * @param vaultId The id of the atomic vault
348
+ * @param tokenId Object id of the Receiving<Coin<T>> payment to claim
349
+ * @param options Optional tx execution params
350
+ * @returns OnChainCallResponse
351
+ */
352
+ async atomicClaimReceivedCollateral(vaultId, tokenId, options) {
353
+ const txb = options?.txBlock || new TransactionBlock();
354
+ this.txBuilder.atomicClaimReceivedCollateral(vaultId, tokenId, {
355
+ ...options,
356
+ txBlock: txb
357
+ });
358
+ return this.execCall(txb, options);
359
+ }
360
+ /**
361
+ * Claim returned ember shares (a Receiving<Coin<R>>) for an atomic vault
362
+ * @param vaultId The id of the atomic vault
363
+ * @param sourceReceiptType The receipt coin type of the source vault (R)
364
+ * @param sourceVaultId Id of the source vault the shares belong to
365
+ * @param tokenId Object id of the Receiving<Coin<R>> payment to claim
366
+ * @param options Optional tx execution params
367
+ * @returns OnChainCallResponse
368
+ */
369
+ async atomicClaimReturnedEmberShares(vaultId, sourceReceiptType, sourceVaultId, tokenId, options) {
370
+ const txb = options?.txBlock || new TransactionBlock();
371
+ this.txBuilder.atomicClaimReturnedEmberShares(vaultId, sourceReceiptType, sourceVaultId, tokenId, { ...options, txBlock: txb });
372
+ return this.execCall(txb, options);
373
+ }
374
+ /**
375
+ * Update the rate of an atomic vault (rate manager role; uses operator class
376
+ * to mirror the receipt-vault `updateVaultRate` placement)
377
+ * @param vaultId The id of the atomic vault
378
+ * @param newRate The new rate to set for the vault
379
+ * @param options Optional tx execution params
380
+ * @returns OnChainCallResponse
381
+ */
382
+ async atomicUpdateVaultRate(vaultId, newRate, options) {
383
+ const txb = options?.txBlock || new TransactionBlock();
384
+ this.txBuilder.atomicUpdateVaultRate(vaultId, newRate, {
385
+ ...options,
386
+ txBlock: txb
387
+ });
388
+ return this.execCall(txb, options);
389
+ }
180
390
  }