@huma-finance/soroban-sdk 0.0.15-beta.31 → 0.0.15-beta.35

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 (39) hide show
  1. package/API.md +0 -18
  2. package/dist/cjs/helpers/CreditContractHelper.d.ts +1 -11
  3. package/dist/cjs/helpers/CreditContractHelper.js +115 -89
  4. package/dist/cjs/helpers/CreditContractHelper.js.map +1 -1
  5. package/dist/cjs/services/StellarWallet.d.ts +3 -1
  6. package/dist/cjs/services/StellarWallet.js +10 -3
  7. package/dist/cjs/services/StellarWallet.js.map +1 -1
  8. package/dist/cjs/utils/client.d.ts +12 -3
  9. package/dist/cjs/utils/client.js +57 -3
  10. package/dist/cjs/utils/client.js.map +1 -1
  11. package/dist/cjs/utils/common.d.ts +11 -1
  12. package/dist/cjs/utils/common.js +32 -1
  13. package/dist/cjs/utils/common.js.map +1 -1
  14. package/dist/cjs/utils/network.d.ts +2 -0
  15. package/dist/cjs/utils/network.js +35 -9
  16. package/dist/cjs/utils/network.js.map +1 -1
  17. package/dist/cjs/utils/transaction.d.ts +25 -0
  18. package/dist/cjs/utils/transaction.js +127 -0
  19. package/dist/cjs/utils/transaction.js.map +1 -0
  20. package/dist/helpers/CreditContractHelper.d.ts +1 -11
  21. package/dist/helpers/CreditContractHelper.js +115 -88
  22. package/dist/helpers/CreditContractHelper.js.map +1 -1
  23. package/dist/services/StellarWallet.d.ts +3 -1
  24. package/dist/services/StellarWallet.js +10 -3
  25. package/dist/services/StellarWallet.js.map +1 -1
  26. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  27. package/dist/utils/client.d.ts +12 -3
  28. package/dist/utils/client.js +55 -2
  29. package/dist/utils/client.js.map +1 -1
  30. package/dist/utils/common.d.ts +11 -1
  31. package/dist/utils/common.js +31 -1
  32. package/dist/utils/common.js.map +1 -1
  33. package/dist/utils/network.d.ts +2 -0
  34. package/dist/utils/network.js +35 -9
  35. package/dist/utils/network.js.map +1 -1
  36. package/dist/utils/transaction.d.ts +25 -0
  37. package/dist/utils/transaction.js +119 -0
  38. package/dist/utils/transaction.js.map +1 -0
  39. package/package.json +11 -11
package/API.md CHANGED
@@ -1,9 +1,6 @@
1
1
  ## Functions
2
2
 
3
3
  <dl>
4
- <dt><a href="#getCreditLineClient">getCreditLineClient(poolName, network, wallet)</a> ⇒ <code>PoolCreditClient</code> | <code>undefined</code></dt>
5
- <dd><p>Returns an soroban contract client instance for the credit line contract
6
- associated with the given pool name on the current chain.</p></dd>
7
4
  <dt><a href="#getAvailableBalanceForPool">getAvailableBalanceForPool(poolName, network, wallet)</a></dt>
8
5
  <dd><p>Returns the current pool balance available for borrowing</p></dd>
9
6
  <dt><a href="#getCreditRecordForPool">getCreditRecordForPool(poolName, network, wallet, borrower)</a></dt>
@@ -26,21 +23,6 @@ associated with the given pool name on the current chain.</p></dd>
26
23
  Allowance is required to do certain actions on the Huma protocol (e.g. makePayment for Autopay)</p></dd>
27
24
  </dl>
28
25
 
29
- <a name="getCreditLineClient"></a>
30
-
31
- ## getCreditLineClient(poolName, network, wallet) ⇒ <code>PoolCreditClient</code> \| <code>undefined</code>
32
- <p>Returns an soroban contract client instance for the credit line contract
33
- associated with the given pool name on the current chain.</p>
34
-
35
- **Kind**: global function
36
- **Returns**: <code>PoolCreditClient</code> \| <code>undefined</code> - <p>A contract client instance for the CreditLine contract or undefined if it could not be found.</p>
37
-
38
- | Param | Type | Description |
39
- | --- | --- | --- |
40
- | poolName | <code>POOL\_NAME</code> | <p>The name of the credit pool to get the contract instance for.</p> |
41
- | network | <code>StellarNetwork</code> | <p>The stellar network.</p> |
42
- | wallet | <code>StellarWallet</code> | <p>The stellar wallet.</p> |
43
-
44
26
  <a name="getAvailableBalanceForPool"></a>
45
27
 
46
28
  ## getAvailableBalanceForPool(poolName, network, wallet)
@@ -1,17 +1,7 @@
1
- import { Client as PoolCreditClient, CreditRecord } from '@huma-finance/soroban-pool-credit';
1
+ import { CreditRecord } from '@huma-finance/soroban-pool-credit';
2
2
  import { SentTransaction } from '@stellar/stellar-sdk/lib/contract';
3
3
  import { StellarWallet } from '../services/StellarWallet';
4
4
  import { POOL_NAME, StellarNetwork } from '../utils/network';
5
- /**
6
- * Returns an soroban contract client instance for the credit line contract
7
- * associated with the given pool name on the current chain.
8
- *
9
- * @param {POOL_NAME} poolName - The name of the credit pool to get the contract instance for.
10
- * @param {StellarNetwork} network - The stellar network.
11
- * @param {StellarWallet} wallet - The stellar wallet.
12
- * @returns {PoolCreditClient | undefined} A contract client instance for the CreditLine contract or undefined if it could not be found.
13
- */
14
- export declare function getCreditLineClient(poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet): PoolCreditClient | undefined;
15
5
  /**
16
6
  * Returns the current pool balance available for borrowing
17
7
  *
@@ -1,21 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makePayment = exports.drawdown = exports.approveAllowanceForSentinel = exports.getTotalDue = exports.getAvailableCreditForPool = exports.getCreditRecordForPool = exports.getAvailableBalanceForPool = exports.getCreditLineClient = void 0;
3
+ exports.makePayment = exports.drawdown = exports.approveAllowanceForSentinel = exports.getTotalDue = exports.getAvailableCreditForPool = exports.getCreditRecordForPool = exports.getAvailableBalanceForPool = void 0;
4
4
  const client_1 = require("../utils/client");
5
+ const common_1 = require("../utils/common");
6
+ const transaction_1 = require("../utils/transaction");
5
7
  const Sep41ContractHelper_1 = require("./Sep41ContractHelper");
6
- /**
7
- * Returns an soroban contract client instance for the credit line contract
8
- * associated with the given pool name on the current chain.
9
- *
10
- * @param {POOL_NAME} poolName - The name of the credit pool to get the contract instance for.
11
- * @param {StellarNetwork} network - The stellar network.
12
- * @param {StellarWallet} wallet - The stellar wallet.
13
- * @returns {PoolCreditClient | undefined} A contract client instance for the CreditLine contract or undefined if it could not be found.
14
- */
15
- function getCreditLineClient(poolName, network, wallet) {
16
- return (0, client_1.getPoolCreditClient)(poolName, network, wallet);
17
- }
18
- exports.getCreditLineClient = getCreditLineClient;
19
8
  /**
20
9
  * Returns the current pool balance available for borrowing
21
10
  *
@@ -24,11 +13,11 @@ exports.getCreditLineClient = getCreditLineClient;
24
13
  * @param {StellarWallet} wallet - The stellar wallet.
25
14
  */
26
15
  async function getAvailableBalanceForPool(poolName, network, wallet) {
27
- const poolStorageClient = (0, client_1.getPoolStorageClient)(poolName, network, wallet);
28
- if (!poolStorageClient) {
29
- throw new Error('Could not find credit contract for pool');
30
- }
31
- const { result } = await poolStorageClient.get_available_balance();
16
+ const poolStorageContext = new client_1.TransactionContext(poolName, network, wallet, 'poolStorage');
17
+ const { result } = await (0, transaction_1.sendTransaction)({
18
+ context: poolStorageContext,
19
+ method: 'get_available_balance',
20
+ });
32
21
  return result;
33
22
  }
34
23
  exports.getAvailableBalanceForPool = getAvailableBalanceForPool;
@@ -41,18 +30,31 @@ exports.getAvailableBalanceForPool = getAvailableBalanceForPool;
41
30
  * @param {string} borrower - The address of the borrower to check the credit record for.
42
31
  */
43
32
  async function getCreditRecordForPool(poolName, network, wallet, borrower) {
44
- const creditStorageClient = (0, client_1.getCreditStorageClient)(poolName, network, wallet);
45
- if (!creditStorageClient) {
46
- throw new Error('Could not find credit storage contract for pool');
47
- }
48
- const { result: creditHash } = await creditStorageClient.get_credit_hash({
49
- borrower,
33
+ const creditStorageContext = new client_1.TransactionContext(poolName, network, wallet, 'creditStorage');
34
+ const { result: creditHash } = await (0, transaction_1.sendTransaction)({
35
+ context: creditStorageContext,
36
+ method: 'get_credit_hash',
37
+ params: [
38
+ {
39
+ name: 'borrower',
40
+ type: common_1.ScValType.address,
41
+ value: borrower,
42
+ },
43
+ ],
50
44
  });
51
45
  if (!creditHash) {
52
46
  throw new Error('Could not find credit hash');
53
47
  }
54
- const { result: creditRecord } = await creditStorageClient.get_credit_record({
55
- credit_hash: creditHash,
48
+ const { result: creditRecord } = await (0, transaction_1.sendTransaction)({
49
+ context: creditStorageContext,
50
+ method: 'get_credit_record',
51
+ params: [
52
+ {
53
+ name: 'credit_hash',
54
+ type: common_1.ScValType.buffer,
55
+ value: creditHash,
56
+ },
57
+ ],
56
58
  });
57
59
  if (!creditRecord) {
58
60
  throw new Error('Could not find credit record');
@@ -71,24 +73,36 @@ exports.getCreditRecordForPool = getCreditRecordForPool;
71
73
  * @param {string} borrower - The address of the borrower to check the available credit for.
72
74
  */
73
75
  async function getAvailableCreditForPool(poolName, network, wallet, borrower) {
74
- const creditStorageClient = (0, client_1.getCreditStorageClient)(poolName, network, wallet);
75
- if (!creditStorageClient) {
76
- throw new Error('Could not find credit storage contract for pool');
77
- }
78
- const { result: creditHash } = await creditStorageClient.get_credit_hash({
79
- borrower,
76
+ const creditStorageContext = new client_1.TransactionContext(poolName, network, wallet, 'creditStorage');
77
+ const { result: creditHash } = await (0, transaction_1.sendTransaction)({
78
+ context: creditStorageContext,
79
+ method: 'get_credit_hash',
80
+ params: [
81
+ {
82
+ name: 'borrower',
83
+ type: common_1.ScValType.address,
84
+ value: borrower,
85
+ },
86
+ ],
80
87
  });
81
88
  if (!creditHash) {
82
89
  throw new Error('Could not find credit hash');
83
90
  }
84
- const [{ result: creditConfig }, { result: creditRecord }] = await Promise.all([
85
- creditStorageClient.get_credit_config({
86
- credit_hash: creditHash,
87
- }),
88
- creditStorageClient.get_credit_record({
89
- credit_hash: creditHash,
90
- }),
91
- ]);
91
+ const creditHashParam = {
92
+ name: 'credit_hash',
93
+ type: common_1.ScValType.buffer,
94
+ value: creditHash,
95
+ };
96
+ const { result: creditConfig } = await (0, transaction_1.sendTransaction)({
97
+ context: creditStorageContext,
98
+ method: 'get_credit_config',
99
+ params: [creditHashParam],
100
+ });
101
+ const { result: creditRecord } = await (0, transaction_1.sendTransaction)({
102
+ context: creditStorageContext,
103
+ method: 'get_credit_record',
104
+ params: [creditHashParam],
105
+ });
92
106
  if (!creditConfig || !creditRecord) {
93
107
  throw new Error('Could not find credit config or credit record');
94
108
  }
@@ -128,14 +142,15 @@ async function approveAllowanceForSentinel(poolName, network, wallet) {
128
142
  if (totalDue === null) {
129
143
  throw new Error('Could not find total due');
130
144
  }
131
- const poolStorageClient = (0, client_1.getPoolStorageClient)(poolName, network, wallet);
132
- if (!poolStorageClient) {
133
- throw new Error('Could not find pool storage contract for pool');
134
- }
135
- const [{ result: underlyingToken }, { result: sentinel }] = await Promise.all([
136
- poolStorageClient.get_underlying_token(),
137
- poolStorageClient.get_sentinel(),
138
- ]);
145
+ const poolStorageContext = new client_1.TransactionContext(poolName, network, wallet, 'poolStorage');
146
+ const { result: underlyingToken } = await (0, transaction_1.sendTransaction)({
147
+ context: poolStorageContext,
148
+ method: 'get_underlying_token',
149
+ });
150
+ const { result: sentinel } = await (0, transaction_1.sendTransaction)({
151
+ context: poolStorageContext,
152
+ method: 'get_sentinel',
153
+ });
139
154
  const tx = await (0, Sep41ContractHelper_1.approveSep41AllowanceIfInsufficient)(network, wallet, underlyingToken, sentinel, totalDue);
140
155
  return tx;
141
156
  }
@@ -152,18 +167,25 @@ exports.approveAllowanceForSentinel = approveAllowanceForSentinel;
152
167
  * @returns {Promise<SentTransaction>} - A Promise of the SentTransaction.
153
168
  */
154
169
  async function drawdown(poolName, network, wallet, drawdownAmount) {
155
- const poolCreditClient = (0, client_1.getPoolCreditClient)(poolName, network, wallet);
156
- if (!poolCreditClient) {
157
- throw new Error('Could not find credit contract for pool');
158
- }
159
170
  await approveAllowanceForSentinel(poolName, network, wallet);
160
- const tx = await poolCreditClient.drawdown({
161
- borrower: wallet.userInfo.publicKey,
162
- amount: drawdownAmount,
163
- }, {
164
- timeoutInSeconds: 30,
171
+ const poolCreditContext = new client_1.TransactionContext(poolName, network, wallet, 'poolCredit');
172
+ const result = await (0, transaction_1.sendTransaction)({
173
+ context: poolCreditContext,
174
+ method: 'drawdown',
175
+ params: [
176
+ {
177
+ name: 'borrower',
178
+ type: common_1.ScValType.address,
179
+ value: wallet.userInfo.publicKey,
180
+ },
181
+ {
182
+ name: 'amount',
183
+ type: common_1.ScValType.u128,
184
+ value: drawdownAmount,
185
+ },
186
+ ],
187
+ shouldSignTransaction: true,
165
188
  });
166
- const result = await tx.signAndSend();
167
189
  return result;
168
190
  }
169
191
  exports.drawdown = drawdown;
@@ -180,39 +202,43 @@ exports.drawdown = drawdown;
180
202
  * @returns {Promise<SentTransaction>} - A Promise of the SentTransaction.
181
203
  */
182
204
  async function makePayment(poolName, network, wallet, paymentAmount, principalOnly) {
183
- const poolCreditClient = (0, client_1.getPoolCreditClient)(poolName, network, wallet);
184
- if (!poolCreditClient) {
185
- throw new Error('Could not find credit contract for pool');
186
- }
187
- const poolStorageClient = (0, client_1.getPoolStorageClient)(poolName, network, wallet);
188
- if (!poolStorageClient) {
189
- throw new Error('Could not find pool storage contract for pool');
190
- }
191
205
  await approveAllowanceForSentinel(poolName, network, wallet);
192
- const [{ result: underlyingToken }, { result: sentinel }] = await Promise.all([
193
- poolStorageClient.get_underlying_token(),
194
- poolStorageClient.get_sentinel(),
195
- ]);
196
- let tx;
197
- tx = await (0, Sep41ContractHelper_1.approveSep41AllowanceIfInsufficient)(network, wallet, underlyingToken, sentinel, paymentAmount);
198
- if (principalOnly) {
199
- tx = await poolCreditClient.make_principal_payment({
200
- borrower: wallet.userInfo.publicKey,
201
- amount: paymentAmount,
202
- }, {
203
- timeoutInSeconds: 30,
204
- });
205
- }
206
- else {
207
- tx = await poolCreditClient.make_payment({
208
- caller: wallet.userInfo.publicKey,
209
- borrower: wallet.userInfo.publicKey,
210
- amount: paymentAmount,
211
- }, {
212
- timeoutInSeconds: 30,
206
+ const poolStorageContext = new client_1.TransactionContext(poolName, network, wallet, 'poolStorage');
207
+ const { result: underlyingToken } = await (0, transaction_1.sendTransaction)({
208
+ context: poolStorageContext,
209
+ method: 'get_underlying_token',
210
+ });
211
+ const { result: sentinel } = await (0, transaction_1.sendTransaction)({
212
+ context: poolStorageContext,
213
+ method: 'get_sentinel',
214
+ });
215
+ await (0, Sep41ContractHelper_1.approveSep41AllowanceIfInsufficient)(network, wallet, underlyingToken, sentinel, paymentAmount);
216
+ const poolCreditContext = new client_1.TransactionContext(poolName, network, wallet, 'poolCredit');
217
+ const params = [
218
+ {
219
+ name: 'borrower',
220
+ type: common_1.ScValType.address,
221
+ value: wallet.userInfo.publicKey,
222
+ },
223
+ {
224
+ name: 'amount',
225
+ type: common_1.ScValType.u128,
226
+ value: paymentAmount,
227
+ },
228
+ ];
229
+ if (!principalOnly) {
230
+ params.unshift({
231
+ name: 'caller',
232
+ type: common_1.ScValType.address,
233
+ value: wallet.userInfo.publicKey,
213
234
  });
214
235
  }
215
- const result = await tx.signAndSend();
236
+ const result = await (0, transaction_1.sendTransaction)({
237
+ context: poolCreditContext,
238
+ method: principalOnly ? 'make_principal_payment' : 'make_payment',
239
+ params: params,
240
+ shouldSignTransaction: true,
241
+ });
216
242
  return result;
217
243
  }
218
244
  exports.makePayment = makePayment;
@@ -1 +1 @@
1
- {"version":3,"file":"CreditContractHelper.js","sourceRoot":"","sources":["../../../src/helpers/CreditContractHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CreditContractHelper.js","sourceRoot":"","sources":["../../../src/helpers/CreditContractHelper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
+ import { Keypair } from '@stellar/stellar-sdk';
1
2
  export declare class StellarWallet {
2
- private sourceKeypair;
3
+ #private;
3
4
  constructor(secretKey: string);
5
+ get keypair(): Keypair;
4
6
  get userInfo(): {
5
7
  publicKey: string;
6
8
  };
@@ -1,22 +1,29 @@
1
1
  "use strict";
2
+ var _StellarWallet_sourceKeypair;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.StellarWallet = void 0;
5
+ const tslib_1 = require("tslib");
4
6
  const stellar_sdk_1 = require("@stellar/stellar-sdk");
5
7
  class StellarWallet {
6
8
  constructor(secretKey) {
7
- this.sourceKeypair = stellar_sdk_1.Keypair.fromSecret(secretKey);
9
+ _StellarWallet_sourceKeypair.set(this, void 0);
10
+ tslib_1.__classPrivateFieldSet(this, _StellarWallet_sourceKeypair, stellar_sdk_1.Keypair.fromSecret(secretKey), "f");
11
+ }
12
+ get keypair() {
13
+ return tslib_1.__classPrivateFieldGet(this, _StellarWallet_sourceKeypair, "f");
8
14
  }
9
15
  get userInfo() {
10
16
  return {
11
- publicKey: this.sourceKeypair.publicKey(),
17
+ publicKey: tslib_1.__classPrivateFieldGet(this, _StellarWallet_sourceKeypair, "f").publicKey(),
12
18
  };
13
19
  }
14
20
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
21
  async signTransaction(tx, opts) {
16
22
  const txFromXDR = new stellar_sdk_1.Transaction(tx, opts.networkPassphrase);
17
- txFromXDR.sign(this.sourceKeypair);
23
+ txFromXDR.sign(tslib_1.__classPrivateFieldGet(this, _StellarWallet_sourceKeypair, "f"));
18
24
  return txFromXDR.toXDR();
19
25
  }
20
26
  }
21
27
  exports.StellarWallet = StellarWallet;
28
+ _StellarWallet_sourceKeypair = new WeakMap();
22
29
  //# sourceMappingURL=StellarWallet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StellarWallet.js","sourceRoot":"","sources":["../../../src/services/StellarWallet.ts"],"names":[],"mappings":";;;AAAA,sDAA2D;AAE3D,MAAa,aAAa;IAGxB,YAAY,SAAiB;QAC3B,IAAI,CAAC,aAAa,GAAG,qBAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IACpD,CAAC;IAED,IAAI,QAAQ;QACV,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE;SAC1C,CAAA;IACH,CAAC;IAED,8DAA8D;IACvD,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,IAAS;QAChD,MAAM,SAAS,GAAG,IAAI,yBAAW,CAAC,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC7D,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QAClC,OAAO,SAAS,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;CACF;AAnBD,sCAmBC"}
1
+ {"version":3,"file":"StellarWallet.js","sourceRoot":"","sources":["../../../src/services/StellarWallet.ts"],"names":[],"mappings":";;;;;AAAA,sDAA2D;AAE3D,MAAa,aAAa;IAGxB,YAAY,SAAiB;QAF7B,+CAAuB;QAGrB,+BAAA,IAAI,gCAAkB,qBAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAA,CAAA;IACrD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,+BAAA,IAAI,oCAAe,CAAA;IAC5B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO;YACL,SAAS,EAAE,+BAAA,IAAI,oCAAe,CAAC,SAAS,EAAE;SAC3C,CAAA;IACH,CAAC;IAED,8DAA8D;IACvD,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,IAAS;QAChD,MAAM,SAAS,GAAG,IAAI,yBAAW,CAAC,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC7D,SAAS,CAAC,IAAI,CAAC,+BAAA,IAAI,oCAAe,CAAC,CAAA;QACnC,OAAO,SAAS,CAAC,KAAK,EAAE,CAAA;IAC1B,CAAC;CACF;AAvBD,sCAuBC"}
@@ -1,12 +1,13 @@
1
- import { Client as CreditStorageClient } from '@huma-finance/soroban-credit-storage';
2
1
  import { Client as CreditManagerClient } from '@huma-finance/soroban-credit-manager';
2
+ import { Client as CreditStorageClient } from '@huma-finance/soroban-credit-storage';
3
3
  import { Client as PoolClient } from '@huma-finance/soroban-pool';
4
4
  import { Client as PoolCreditClient } from '@huma-finance/soroban-pool-credit';
5
5
  import { Client as PoolStorageClient } from '@huma-finance/soroban-pool-storage';
6
- import { Client as TrancheVaultClient } from '@huma-finance/soroban-tranche-vault';
7
6
  import { Client as Sep41Client } from '@huma-finance/soroban-sep41';
7
+ import { Client as TrancheVaultClient } from '@huma-finance/soroban-tranche-vault';
8
8
  import { StellarWallet } from '../services/StellarWallet';
9
- import { POOL_NAME, StellarNetwork } from './network';
9
+ import { ContractType, POOL_NAME, StellarNetwork } from './network';
10
+ export type Client = PoolCreditClient | CreditStorageClient | CreditManagerClient | PoolClient | PoolStorageClient | TrancheVaultClient | Sep41Client;
10
11
  export declare const getPoolClient: (poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet) => PoolClient | undefined;
11
12
  export declare const getPoolStorageClient: (poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet) => PoolStorageClient | undefined;
12
13
  export declare const getPoolCreditClient: (poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet) => PoolCreditClient | undefined;
@@ -14,3 +15,11 @@ export declare const getCreditStorageClient: (poolName: POOL_NAME, network: Stel
14
15
  export declare const getCreditManagerClient: (poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet) => CreditManagerClient | undefined;
15
16
  export declare const getTrancheVaultClient: (poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet, tranche: 'senior' | 'junior') => TrancheVaultClient | undefined;
16
17
  export declare const getUnderlyingTokenClient: (tokenAddress: string, network: StellarNetwork, wallet: StellarWallet) => Sep41Client;
18
+ export declare class TransactionContext {
19
+ #private;
20
+ constructor(poolName: POOL_NAME, network: StellarNetwork, wallet: StellarWallet, contractType: ContractType);
21
+ get client(): Client;
22
+ get wallet(): StellarWallet;
23
+ get network(): StellarNetwork;
24
+ get contractId(): string;
25
+ }
@@ -1,15 +1,27 @@
1
1
  "use strict";
2
+ var _TransactionContext_client, _TransactionContext_wallet, _TransactionContext_network, _TransactionContext_contractId;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUnderlyingTokenClient = exports.getTrancheVaultClient = exports.getCreditManagerClient = exports.getCreditStorageClient = exports.getPoolCreditClient = exports.getPoolStorageClient = exports.getPoolClient = void 0;
4
- const soroban_credit_storage_1 = require("@huma-finance/soroban-credit-storage");
4
+ exports.TransactionContext = exports.getUnderlyingTokenClient = exports.getTrancheVaultClient = exports.getCreditManagerClient = exports.getCreditStorageClient = exports.getPoolCreditClient = exports.getPoolStorageClient = exports.getPoolClient = void 0;
5
+ const tslib_1 = require("tslib");
5
6
  const soroban_credit_manager_1 = require("@huma-finance/soroban-credit-manager");
7
+ const soroban_credit_storage_1 = require("@huma-finance/soroban-credit-storage");
6
8
  const soroban_pool_1 = require("@huma-finance/soroban-pool");
7
9
  const soroban_pool_credit_1 = require("@huma-finance/soroban-pool-credit");
8
10
  const soroban_pool_storage_1 = require("@huma-finance/soroban-pool-storage");
9
- const soroban_tranche_vault_1 = require("@huma-finance/soroban-tranche-vault");
10
11
  const soroban_sep41_1 = require("@huma-finance/soroban-sep41");
12
+ const soroban_tranche_vault_1 = require("@huma-finance/soroban-tranche-vault");
11
13
  const common_1 = require("./common");
12
14
  const network_1 = require("./network");
15
+ const ClientMap = {
16
+ poolCredit: soroban_pool_credit_1.Client,
17
+ creditStorage: soroban_credit_storage_1.Client,
18
+ creditManager: soroban_credit_manager_1.Client,
19
+ pool: soroban_pool_1.Client,
20
+ poolStorage: soroban_pool_storage_1.Client,
21
+ juniorTranche: soroban_tranche_vault_1.Client,
22
+ seniorTranche: soroban_tranche_vault_1.Client,
23
+ underlyingToken: soroban_sep41_1.Client,
24
+ };
13
25
  const getCommonProps = (network, wallet) => {
14
26
  return {
15
27
  publicKey: wallet.userInfo.publicKey,
@@ -92,4 +104,46 @@ const getUnderlyingTokenClient = (tokenAddress, network, wallet) => {
92
104
  });
93
105
  };
94
106
  exports.getUnderlyingTokenClient = getUnderlyingTokenClient;
107
+ class TransactionContext {
108
+ constructor(poolName, network, wallet, contractType) {
109
+ _TransactionContext_client.set(this, void 0);
110
+ _TransactionContext_wallet.set(this, void 0);
111
+ _TransactionContext_network.set(this, void 0);
112
+ _TransactionContext_contractId.set(this, void 0);
113
+ const poolMetadata = (0, common_1.findPoolMetadata)(network, poolName);
114
+ if (!poolMetadata) {
115
+ throw new Error(`Could not find pool metadata by pool name: ${poolName}`);
116
+ }
117
+ if (!poolMetadata.contracts[contractType]) {
118
+ throw new Error(`Could not find contract by contract type: ${contractType}`);
119
+ }
120
+ // @ts-ignore
121
+ const clientClass = ClientMap[contractType];
122
+ if (!clientClass) {
123
+ throw new Error(`Could not find client by contract type: ${contractType}`);
124
+ }
125
+ const client = new clientClass({
126
+ contractId: poolMetadata.contracts[contractType],
127
+ ...getCommonProps(network, wallet),
128
+ });
129
+ tslib_1.__classPrivateFieldSet(this, _TransactionContext_client, client, "f");
130
+ tslib_1.__classPrivateFieldSet(this, _TransactionContext_wallet, wallet, "f");
131
+ tslib_1.__classPrivateFieldSet(this, _TransactionContext_network, network, "f");
132
+ tslib_1.__classPrivateFieldSet(this, _TransactionContext_contractId, client.options.contractId, "f");
133
+ }
134
+ get client() {
135
+ return tslib_1.__classPrivateFieldGet(this, _TransactionContext_client, "f");
136
+ }
137
+ get wallet() {
138
+ return tslib_1.__classPrivateFieldGet(this, _TransactionContext_wallet, "f");
139
+ }
140
+ get network() {
141
+ return tslib_1.__classPrivateFieldGet(this, _TransactionContext_network, "f");
142
+ }
143
+ get contractId() {
144
+ return tslib_1.__classPrivateFieldGet(this, _TransactionContext_contractId, "f");
145
+ }
146
+ }
147
+ exports.TransactionContext = TransactionContext;
148
+ _TransactionContext_client = new WeakMap(), _TransactionContext_wallet = new WeakMap(), _TransactionContext_network = new WeakMap(), _TransactionContext_contractId = new WeakMap();
95
149
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/utils/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/utils/client.ts"],"names":[],"mappings":";;;;;AAAA,iFAAoF;AACpF,iFAAoF;AACpF,6DAAiE;AACjE,2EAA8E;AAC9E,6EAAgF;AAChF,+DAAmE;AACnE,+EAAkF;AAGlF,qCAA2C;AAC3C,uCAMkB;AAWlB,MAAM,SAAS,GAAG;IAChB,UAAU,EAAE,4BAAgB;IAC5B,aAAa,EAAE,+BAAmB;IAClC,aAAa,EAAE,+BAAmB;IAClC,IAAI,EAAE,qBAAU;IAChB,WAAW,EAAE,6BAAiB;IAC9B,aAAa,EAAE,8BAAkB;IACjC,aAAa,EAAE,8BAAkB;IACjC,eAAe,EAAE,sBAAW;CAC7B,CAAA;AAED,MAAM,cAAc,GAAG,CAAC,OAAuB,EAAE,MAAqB,EAAE,EAAE;IACxE,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS;QACpC,iBAAiB,EAAE,kCAAwB,CAAC,OAAO,CAAC;QACpD,MAAM,EAAE,6BAAmB,CAAC,OAAO,CAAC;QACpC,SAAS,EAAE,6BAAmB,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7D,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;KACrD,CAAA;AACH,CAAC,CAAA;AAEM,MAAM,aAAa,GAAG,CAC3B,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,qBAAU,CAAC;QACpB,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI;QACvC,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AAdY,QAAA,aAAa,iBAczB;AAEM,MAAM,oBAAoB,GAAG,CAClC,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,6BAAiB,CAAC;QAC3B,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,WAAW;QAC9C,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AAdY,QAAA,oBAAoB,wBAchC;AAEM,MAAM,mBAAmB,GAAG,CACjC,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,4BAAgB,CAAC;QAC1B,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,UAAU;QAC7C,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AAdY,QAAA,mBAAmB,uBAc/B;AAEM,MAAM,sBAAsB,GAAG,CACpC,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,+BAAmB,CAAC;QAC7B,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,aAAa;QAChD,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AAdY,QAAA,sBAAsB,0BAclC;AAEM,MAAM,sBAAsB,GAAG,CACpC,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,+BAAmB,CAAC;QAC7B,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,aAAa;QAChD,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AAdY,QAAA,sBAAsB,0BAclC;AAEM,MAAM,qBAAqB,GAAG,CACnC,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,OAA4B,EAC5B,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,OAAO,SAAS,CAAC,EAAE;QACjE,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,8BAAkB,CAAC;QAC5B,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,GAAG,OAAO,SAAS,CAAE;QACxD,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AAfY,QAAA,qBAAqB,yBAejC;AAEM,MAAM,wBAAwB,GAAG,CACtC,YAAoB,EACpB,OAAuB,EACvB,MAAqB,EACrB,EAAE;IACF,OAAO,IAAI,sBAAW,CAAC;QACrB,UAAU,EAAE,YAAY;QACxB,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;KACnC,CAAC,CAAA;AACJ,CAAC,CAAA;AATY,QAAA,wBAAwB,4BASpC;AAED,MAAa,kBAAkB;IAM7B,YACE,QAAmB,EACnB,OAAuB,EACvB,MAAqB,EACrB,YAA0B;QAT5B,6CAAe;QACf,6CAAsB;QACtB,8CAAwB;QACxB,iDAAmB;QAQjB,MAAM,YAAY,GAAG,IAAA,yBAAgB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACxD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,8CAA8C,QAAQ,EAAE,CAAC,CAAA;SAC1E;QACD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE;YACzC,MAAM,IAAI,KAAK,CACb,6CAA6C,YAAY,EAAE,CAC5D,CAAA;SACF;QACD,aAAa;QACb,MAAM,WAAW,GAAG,SAAS,CAAC,YAAY,CAAC,CAAA;QAC3C,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,2CAA2C,YAAY,EAAE,CAAC,CAAA;SAC3E;QACD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;YAC7B,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC;YAChD,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC;SACnC,CAAC,CAAA;QAEF,+BAAA,IAAI,8BAAW,MAAM,MAAA,CAAA;QACrB,+BAAA,IAAI,8BAAW,MAAM,MAAA,CAAA;QACrB,+BAAA,IAAI,+BAAY,OAAO,MAAA,CAAA;QACvB,+BAAA,IAAI,kCAAe,MAAM,CAAC,OAAO,CAAC,UAAU,MAAA,CAAA;IAC9C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,+BAAA,IAAI,kCAAQ,CAAA;IACrB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,+BAAA,IAAI,kCAAQ,CAAA;IACrB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,+BAAA,IAAI,mCAAS,CAAA;IACtB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,+BAAA,IAAI,sCAAY,CAAA;IACzB,CAAC;CACF;AApDD,gDAoDC"}
@@ -1,4 +1,14 @@
1
- import { SorobanRpc } from '@stellar/stellar-sdk';
1
+ import { SorobanRpc, xdr } from '@stellar/stellar-sdk';
2
2
  import { StellarNetwork } from './network';
3
+ export declare enum ScValType {
4
+ address = "address",
5
+ u128 = "u128",
6
+ u64 = "u64",
7
+ u32 = "u32",
8
+ bool = "bool",
9
+ enum = "enum",
10
+ buffer = "buffer"
11
+ }
12
+ export declare const toScVal: (value: any, type: ScValType) => xdr.ScVal;
3
13
  export declare const findPoolMetadata: (network: StellarNetwork, poolName: string) => import("./network").PoolMetadata | undefined;
4
14
  export declare const getLatestLedger: (network: StellarNetwork) => Promise<SorobanRpc.Api.GetLatestLedgerResponse>;
@@ -1,8 +1,39 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLatestLedger = exports.findPoolMetadata = void 0;
3
+ exports.getLatestLedger = exports.findPoolMetadata = exports.toScVal = exports.ScValType = void 0;
4
4
  const stellar_sdk_1 = require("@stellar/stellar-sdk");
5
5
  const network_1 = require("./network");
6
+ var ScValType;
7
+ (function (ScValType) {
8
+ ScValType["address"] = "address";
9
+ ScValType["u128"] = "u128";
10
+ ScValType["u64"] = "u64";
11
+ ScValType["u32"] = "u32";
12
+ ScValType["bool"] = "bool";
13
+ ScValType["enum"] = "enum";
14
+ ScValType["buffer"] = "buffer";
15
+ })(ScValType = exports.ScValType || (exports.ScValType = {}));
16
+ const toScVal = (
17
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
+ value, type) => {
19
+ switch (type) {
20
+ case ScValType.address:
21
+ return stellar_sdk_1.Address.fromString(value).toScVal();
22
+ case ScValType.u128:
23
+ return (0, stellar_sdk_1.nativeToScVal)(value, { type: ScValType.u128 });
24
+ case ScValType.u64:
25
+ return (0, stellar_sdk_1.nativeToScVal)(value, { type: ScValType.u64 });
26
+ case ScValType.u32:
27
+ return (0, stellar_sdk_1.nativeToScVal)(value, { type: ScValType.u32 });
28
+ case ScValType.bool:
29
+ return stellar_sdk_1.xdr.ScVal.scvBool(value);
30
+ case ScValType.enum:
31
+ return stellar_sdk_1.xdr.ScVal.scvVec([stellar_sdk_1.xdr.ScVal.scvSymbol(value)]);
32
+ case ScValType.buffer:
33
+ return stellar_sdk_1.xdr.ScVal.scvBytes(value);
34
+ }
35
+ };
36
+ exports.toScVal = toScVal;
6
37
  const findPoolMetadata = (network, poolName) => {
7
38
  const selectedNetworkMetadata = network_1.NetworkMetadatas.find((metadata) => metadata.network === network);
8
39
  if (selectedNetworkMetadata) {
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":";;;AAAA,sDAAiD;AACjD,uCAIkB;AAEX,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAE,QAAgB,EAAE,EAAE;IAC5E,MAAM,uBAAuB,GAAG,0BAAgB,CAAC,IAAI,CACnD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,KAAK,OAAO,CAC3C,CAAA;IACD,IAAI,uBAAuB,EAAE;QAC3B,OAAO,uBAAuB,CAAC,KAAK,CAAC,IAAI,CACvC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CACrC,CAAA;KACF;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAVY,QAAA,gBAAgB,oBAU5B;AAEM,MAAM,eAAe,GAAG,KAAK,EAAE,OAAuB,EAAE,EAAE;IAC/D,MAAM,MAAM,GAAG,IAAI,wBAAU,CAAC,MAAM,CAAC,6BAAmB,CAAC,OAAO,CAAC,EAAE;QACjE,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,eAAe,EAAE,CAAA;AACjC,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":";;;AAAA,sDAA8E;AAC9E,uCAIkB;AAElB,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,0BAAa,CAAA;IACb,wBAAW,CAAA;IACX,wBAAW,CAAA;IACX,0BAAa,CAAA;IACb,0BAAa,CAAA;IACb,8BAAiB,CAAA;AACnB,CAAC,EARW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAQpB;AAEM,MAAM,OAAO,GAAG;AACrB,8DAA8D;AAC9D,KAAU,EACV,IAAe,EACf,EAAE;IACF,QAAQ,IAAI,EAAE;QACZ,KAAK,SAAS,CAAC,OAAO;YACpB,OAAO,qBAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;QAE5C,KAAK,SAAS,CAAC,IAAI;YACjB,OAAO,IAAA,2BAAa,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;QAEvD,KAAK,SAAS,CAAC,GAAG;YAChB,OAAO,IAAA,2BAAa,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAA;QAEtD,KAAK,SAAS,CAAC,GAAG;YAChB,OAAO,IAAA,2BAAa,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAA;QAEtD,KAAK,SAAS,CAAC,IAAI;YACjB,OAAO,iBAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAEjC,KAAK,SAAS,CAAC,IAAI;YACjB,OAAO,iBAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,iBAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEvD,KAAK,SAAS,CAAC,MAAM;YACnB,OAAO,iBAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;KACnC;AACH,CAAC,CAAA;AA3BY,QAAA,OAAO,WA2BnB;AAEM,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAE,QAAgB,EAAE,EAAE;IAC5E,MAAM,uBAAuB,GAAG,0BAAgB,CAAC,IAAI,CACnD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,KAAK,OAAO,CAC3C,CAAA;IACD,IAAI,uBAAuB,EAAE;QAC3B,OAAO,uBAAuB,CAAC,KAAK,CAAC,IAAI,CACvC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CACrC,CAAA;KACF;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAVY,QAAA,gBAAgB,oBAU5B;AAEM,MAAM,eAAe,GAAG,KAAK,EAAE,OAAuB,EAAE,EAAE;IAC/D,MAAM,MAAM,GAAG,IAAI,wBAAU,CAAC,MAAM,CAAC,6BAAmB,CAAC,OAAO,CAAC,EAAE;QACjE,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,eAAe,EAAE,CAAA;AACjC,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B"}
@@ -39,7 +39,9 @@ export type PoolMetadata = {
39
39
  juniorTranche: string;
40
40
  seniorTranche?: string;
41
41
  };
42
+ borrowers: string[];
42
43
  };
44
+ export type ContractType = keyof PoolMetadata['contracts'];
43
45
  export type NetworkMetadata = {
44
46
  network: StellarNetwork;
45
47
  networkPassphrase: StellarNetworkPassphrase;