@folks-finance/xchain-sdk 0.0.8 → 0.0.9

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.
@@ -158,13 +158,23 @@ export async function getUserLoans(provider, network, loanIds) {
158
158
  contracts: getUserLoansCall,
159
159
  allowFailure: false,
160
160
  }));
161
- return new Map(loanIds.map((loanId, i) => [loanId, userLoans[i]]));
161
+ return new Map(loanIds.map((loanId, i) => [
162
+ loanId,
163
+ {
164
+ accountId: userLoans[i][0],
165
+ loanTypeId: userLoans[i][1],
166
+ colPools: Array.from(userLoans[i][2]),
167
+ borPools: Array.from(userLoans[i][3]),
168
+ userLoanCollateral: Array.from(userLoans[i][4]),
169
+ userLoanBorrow: Array.from(userLoans[i][5]),
170
+ },
171
+ ]));
162
172
  }
163
173
  export function getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oraclePrices) {
164
174
  const poolIdToFolksTokenId = new Map(Object.values(poolsInfo).map(({ folksTokenId, poolId }) => [poolId, folksTokenId]));
165
175
  const userLoansInfo = {};
166
176
  for (const [loanId, userLoan] of userLoansMap.entries()) {
167
- const [accountId, loanTypeId, colPools, borPools, cols, bors] = userLoan;
177
+ const { accountId, loanTypeId, colPools, borPools, userLoanCollateral, userLoanBorrow } = userLoan;
168
178
  const loanTypeInfo = loanTypesInfo[loanTypeId];
169
179
  if (!loanTypeInfo)
170
180
  throw new Error(`Unknown loan type id ${loanTypeId}`);
@@ -175,7 +185,7 @@ export function getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oracleP
175
185
  const collaterals = {};
176
186
  let totalCollateralBalanceValue = dn.from(0, 8);
177
187
  let totalEffectiveCollateralBalanceValue = dn.from(0, 8);
178
- for (const [j, { balance: fTokenBalance }] of cols.entries()) {
188
+ for (const [j, { balance: fTokenBalance }] of userLoanCollateral.entries()) {
179
189
  const poolId = colPools[j];
180
190
  const folksTokenId = poolIdToFolksTokenId.get(poolId);
181
191
  if (!folksTokenId)
@@ -214,7 +224,7 @@ export function getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oracleP
214
224
  let totalBorrowedAmountValue = dn.from(0, 8);
215
225
  let totalBorrowBalanceValue = dn.from(0, 8);
216
226
  let totalEffectiveBorrowBalanceValue = dn.from(0, 8);
217
- for (const [j, { amount: borrowedAmount, balance: oldBorrowBalance, lastInterestIndex: lii, stableInterestRate: sbir, lastStableUpdateTimestamp, },] of bors.entries()) {
227
+ for (const [j, { amount: borrowedAmount, balance: oldBorrowBalance, lastInterestIndex: lii, stableInterestRate: sbir, lastStableUpdateTimestamp, },] of userLoanBorrow.entries()) {
218
228
  const poolId = borPools[j];
219
229
  const lastBorrowInterestIndex = [lii, 18];
220
230
  const stableBorrowInterestRate = [sbir, 18];
@@ -274,7 +284,7 @@ export function getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oracleP
274
284
  userLoansInfo[loanId] = {
275
285
  loanId,
276
286
  loanTypeId,
277
- accountId: accountId,
287
+ accountId,
278
288
  collaterals,
279
289
  borrows,
280
290
  netRate,
@@ -292,12 +302,7 @@ export function getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oracleP
292
302
  return userLoansInfo;
293
303
  }
294
304
  export function simulateLoanChanges(loan, changes) {
295
- const [accountId, loanType, oldColPools, oldBorPools, oldCollaterals, oldBorrows] = loan;
296
- // make copy which can update
297
- const colPools = [...structuredClone(oldColPools)];
298
- const borPools = [...structuredClone(oldBorPools)];
299
- const collaterals = [...structuredClone(oldCollaterals)];
300
- const borrows = [...structuredClone(oldBorrows)];
305
+ const { accountId, loanTypeId, colPools, borPools, userLoanCollateral, userLoanBorrow } = structuredClone(loan);
301
306
  // simulate changes
302
307
  for (const change of changes) {
303
308
  const { type: changeType, poolInfo } = change;
@@ -308,11 +313,11 @@ export function simulateLoanChanges(loan, changes) {
308
313
  if (colIndex === -1) {
309
314
  // new collateral
310
315
  colPools.push(poolInfo.poolId);
311
- collaterals.push({ balance: fTokenAmount, rewardIndex: 0n });
316
+ userLoanCollateral.push({ balance: fTokenAmount, rewardIndex: 0n });
312
317
  }
313
318
  else {
314
319
  // existing collateral
315
- collaterals[colIndex].balance += fTokenAmount;
320
+ userLoanCollateral[colIndex].balance += fTokenAmount;
316
321
  }
317
322
  break;
318
323
  }
@@ -321,13 +326,13 @@ export function simulateLoanChanges(loan, changes) {
321
326
  if (colIndex === -1)
322
327
  throw Error(`Cannot find collateral for pool ${poolInfo.poolId}`);
323
328
  const { fTokenAmount } = change;
324
- const collateral = collaterals[colIndex];
329
+ const collateral = userLoanCollateral[colIndex];
325
330
  collateral.balance -= fTokenAmount;
326
331
  if (collateral.balance < 0)
327
332
  throw Error(`Insufficient collateral for pool ${poolInfo.poolId}`);
328
333
  if (collateral.balance === 0n) {
329
334
  colPools.splice(colIndex, 1);
330
- collaterals.splice(colIndex, 1);
335
+ userLoanCollateral.splice(colIndex, 1);
331
336
  }
332
337
  break;
333
338
  }
@@ -340,11 +345,11 @@ export function simulateLoanChanges(loan, changes) {
340
345
  const borrow = initLoanBorrowInterests(isStable, poolInfo);
341
346
  borrow.amount = tokenAmount;
342
347
  borrow.balance = tokenAmount;
343
- borrows.push(borrow);
348
+ userLoanBorrow.push(borrow);
344
349
  }
345
350
  else {
346
351
  // existing borrow
347
- const borrow = borrows[borIndex];
352
+ const borrow = userLoanBorrow[borIndex];
348
353
  if (isStable !== borrow.stableInterestRate > 0)
349
354
  throw Error(`Borrow type mismatch for pool ${poolInfo.poolId}`);
350
355
  updateLoanBorrowInterests(borrow, tokenAmount, poolInfo, true);
@@ -358,7 +363,7 @@ export function simulateLoanChanges(loan, changes) {
358
363
  if (borIndex === -1)
359
364
  throw Error(`Cannot find borrow for pool ${poolInfo.poolId}`);
360
365
  const { tokenAmount } = change;
361
- const borrow = borrows[borIndex];
366
+ const borrow = userLoanBorrow[borIndex];
362
367
  updateLoanBorrowInterests(borrow, tokenAmount, poolInfo, false);
363
368
  const balance = borrow.balance;
364
369
  const interest = balance - borrow.amount;
@@ -369,7 +374,7 @@ export function simulateLoanChanges(loan, changes) {
369
374
  borrow.balance -= principalPaid + interestPaid;
370
375
  if (borrow.balance === 0n) {
371
376
  borPools.splice(borIndex, 1);
372
- borrows.splice(borIndex, 1);
377
+ userLoanBorrow.splice(borIndex, 1);
373
378
  }
374
379
  break;
375
380
  }
@@ -378,13 +383,13 @@ export function simulateLoanChanges(loan, changes) {
378
383
  if (borIndex === -1)
379
384
  throw Error(`Cannot find borrow for pool ${poolInfo.poolId}`);
380
385
  const { isSwitchingToStable } = change;
381
- if (isSwitchingToStable === borrows[borIndex].stableInterestRate > 0)
386
+ if (isSwitchingToStable === userLoanBorrow[borIndex].stableInterestRate > 0)
382
387
  throw Error(`Borrow type mismatch for pool ${poolInfo.poolId}`);
383
- const { amount, balance } = updateLoanBorrowInterests(borrows[borIndex], 0n, poolInfo, false);
388
+ const { amount, balance } = updateLoanBorrowInterests(userLoanBorrow[borIndex], 0n, poolInfo, false);
384
389
  const borrow = initLoanBorrowInterests(isSwitchingToStable, poolInfo);
385
390
  borrow.amount = amount;
386
391
  borrow.balance = balance;
387
- borrows[borIndex] = borrow;
392
+ userLoanBorrow[borIndex] = borrow;
388
393
  break;
389
394
  }
390
395
  default:
@@ -392,6 +397,6 @@ export function simulateLoanChanges(loan, changes) {
392
397
  break;
393
398
  }
394
399
  }
395
- return [accountId, loanType, colPools, borPools, collaterals, borrows];
400
+ return { accountId, loanTypeId, colPools, borPools, userLoanCollateral, userLoanBorrow };
396
401
  }
397
402
  //# sourceMappingURL=folks-hub-loan.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"folks-hub-loan.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/modules/folks-hub-loan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"folks-hub-loan.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/modules/folks-hub-loan.ts"],"names":[],"mappings":"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"}
@@ -88,8 +88,17 @@ export type DeleteUserLoanEventParams = GetEventParams & {
88
88
  loanManager: GetReadContractReturnType<typeof LoanManagerAbi>;
89
89
  accountId: AccountId;
90
90
  };
91
- export type LoanManagerUserLoan = ReadContractReturnType<typeof LoanManagerAbi, "getUserLoan">;
92
- export type LoanManagerUserLoanBorrow = LoanManagerUserLoan[5][0];
91
+ export type LoanManagerUserLoanAbi = ReadContractReturnType<typeof LoanManagerAbi, "getUserLoan">;
92
+ export type LoanManagerUserLoanCollateral = LoanManagerUserLoanAbi[4][0];
93
+ export type LoanManagerUserLoanBorrow = LoanManagerUserLoanAbi[5][0];
94
+ export type LoanManagerUserLoan = {
95
+ accountId: AccountId;
96
+ loanTypeId: LoanTypeId;
97
+ colPools: Array<number>;
98
+ borPools: Array<number>;
99
+ userLoanCollateral: Array<LoanManagerUserLoanCollateral>;
100
+ userLoanBorrow: Array<LoanManagerUserLoanBorrow>;
101
+ };
93
102
  export declare enum LoanChangeType {
94
103
  AddCollateral = 0,
95
104
  ReduceCollateral = 1,
@@ -1 +1 @@
1
- {"version":3,"file":"loan.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/types/loan.ts"],"names":[],"mappings":"AAsGA,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,qEAAa,CAAA;IACb,2EAAgB,CAAA;IAChB,uDAAM,CAAA;IACN,qDAAK,CAAA;IACL,2EAAgB,CAAA;AAClB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB"}
1
+ {"version":3,"file":"loan.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/types/loan.ts"],"names":[],"mappings":"AAgHA,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,qEAAa,CAAA;IACb,2EAAgB,CAAA;IAChB,uDAAM,CAAA;IACN,qDAAK,CAAA;IACL,2EAAgB,CAAA;AAClB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB"}
@@ -44,36 +44,6 @@ export declare const read: {
44
44
  };
45
45
  export declare const util: {
46
46
  userLoansInfo(userLoansMap: Map<LoanId, LoanManagerUserLoan>, poolsInfo: Partial<Record<FolksTokenId, PoolInfo>>, loanTypesInfo: Partial<Record<LoanTypeId, LoanTypeInfo>>, oraclePrices: OraclePrices): Record<LoanId, UserLoanInfo>;
47
- emptyLoanForSimulate(accountId: AccountId, loanType: LoanTypeId): readonly [`0x${string}`, number, readonly number[], readonly number[], readonly {
48
- balance: bigint;
49
- rewardIndex: bigint;
50
- }[], readonly {
51
- amount: bigint;
52
- balance: bigint;
53
- lastInterestIndex: bigint;
54
- stableInterestRate: bigint;
55
- lastStableUpdateTimestamp: bigint;
56
- rewardIndex: bigint;
57
- }[]];
58
- simulateLoanChanges(loan: readonly [`0x${string}`, number, readonly number[], readonly number[], readonly {
59
- balance: bigint;
60
- rewardIndex: bigint;
61
- }[], readonly {
62
- amount: bigint;
63
- balance: bigint;
64
- lastInterestIndex: bigint;
65
- stableInterestRate: bigint;
66
- lastStableUpdateTimestamp: bigint;
67
- rewardIndex: bigint;
68
- }[]], changes: Array<LoanChange>): readonly [`0x${string}`, number, readonly number[], readonly number[], readonly {
69
- balance: bigint;
70
- rewardIndex: bigint;
71
- }[], readonly {
72
- amount: bigint;
73
- balance: bigint;
74
- lastInterestIndex: bigint;
75
- stableInterestRate: bigint;
76
- lastStableUpdateTimestamp: bigint;
77
- rewardIndex: bigint;
78
- }[]];
47
+ emptyLoanForSimulate(accountId: AccountId, loanTypeId: LoanTypeId): LoanManagerUserLoan;
48
+ simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<LoanChange>): LoanManagerUserLoan;
79
49
  };
@@ -591,8 +591,8 @@ export const util = {
591
591
  // get info of each user loan
592
592
  return FolksHubLoan.getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oraclePrices);
593
593
  },
594
- emptyLoanForSimulate(accountId, loanType) {
595
- return [accountId, loanType, [], [], [], []];
594
+ emptyLoanForSimulate(accountId, loanTypeId) {
595
+ return { accountId, loanTypeId, colPools: [], borPools: [], userLoanCollateral: [], userLoanBorrow: [] };
596
596
  },
597
597
  simulateLoanChanges(loan, changes) {
598
598
  return FolksHubLoan.simulateLoanChanges(loan, changes);
@@ -1 +1 @@
1
- {"version":3,"file":"folks-loan.js","sourceRoot":"","sources":["../../../src/xchain/modules/folks-loan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"folks-loan.js","sourceRoot":"","sources":["../../../src/xchain/modules/folks-loan.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@folks-finance/xchain-sdk",
3
3
  "description": "The official JavaScript SDK for the Folks Finance Cross-Chain Lending Protocol",
4
- "version": "0.0.8",
4
+ "version": "0.0.9",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -53,6 +53,7 @@ import type { HubChain } from "../types/chain.js";
53
53
  import type {
54
54
  LoanChange,
55
55
  LoanManagerUserLoan,
56
+ LoanManagerUserLoanAbi,
56
57
  LoanPoolInfo,
57
58
  LoanTypeInfo,
58
59
  UserLoanInfo,
@@ -303,12 +304,24 @@ export async function getUserLoans(
303
304
  args: [loanId],
304
305
  }));
305
306
 
306
- const userLoans: Array<LoanManagerUserLoan> = (await multicall(provider, {
307
+ const userLoans: Array<LoanManagerUserLoanAbi> = (await multicall(provider, {
307
308
  contracts: getUserLoansCall,
308
309
  allowFailure: false,
309
- })) as Array<LoanManagerUserLoan>;
310
+ })) as Array<LoanManagerUserLoanAbi>;
310
311
 
311
- return new Map(loanIds.map((loanId, i) => [loanId, userLoans[i]]));
312
+ return new Map(
313
+ loanIds.map((loanId, i) => [
314
+ loanId,
315
+ {
316
+ accountId: userLoans[i][0] as AccountId,
317
+ loanTypeId: userLoans[i][1] as LoanTypeId,
318
+ colPools: Array.from(userLoans[i][2]),
319
+ borPools: Array.from(userLoans[i][3]),
320
+ userLoanCollateral: Array.from(userLoans[i][4]),
321
+ userLoanBorrow: Array.from(userLoans[i][5]),
322
+ } satisfies LoanManagerUserLoan,
323
+ ]),
324
+ );
312
325
  }
313
326
 
314
327
  export function getUserLoansInfo(
@@ -324,9 +337,9 @@ export function getUserLoansInfo(
324
337
  const userLoansInfo: Record<LoanId, UserLoanInfo> = {};
325
338
 
326
339
  for (const [loanId, userLoan] of userLoansMap.entries()) {
327
- const [accountId, loanTypeId, colPools, borPools, cols, bors] = userLoan;
340
+ const { accountId, loanTypeId, colPools, borPools, userLoanCollateral, userLoanBorrow } = userLoan;
328
341
 
329
- const loanTypeInfo = loanTypesInfo[loanTypeId as LoanTypeId];
342
+ const loanTypeInfo = loanTypesInfo[loanTypeId];
330
343
  if (!loanTypeInfo) throw new Error(`Unknown loan type id ${loanTypeId}`);
331
344
 
332
345
  // common to collaterals and borrows
@@ -337,7 +350,7 @@ export function getUserLoansInfo(
337
350
  const collaterals: Partial<Record<FolksTokenId, UserLoanInfoCollateral>> = {};
338
351
  let totalCollateralBalanceValue: Dnum = dn.from(0, 8);
339
352
  let totalEffectiveCollateralBalanceValue: Dnum = dn.from(0, 8);
340
- for (const [j, { balance: fTokenBalance }] of cols.entries()) {
353
+ for (const [j, { balance: fTokenBalance }] of userLoanCollateral.entries()) {
341
354
  const poolId = colPools[j];
342
355
 
343
356
  const folksTokenId = poolIdToFolksTokenId.get(poolId);
@@ -395,7 +408,7 @@ export function getUserLoansInfo(
395
408
  stableInterestRate: sbir,
396
409
  lastStableUpdateTimestamp,
397
410
  },
398
- ] of bors.entries()) {
411
+ ] of userLoanBorrow.entries()) {
399
412
  const poolId = borPools[j];
400
413
 
401
414
  const lastBorrowInterestIndex: Dnum = [lii, 18];
@@ -475,7 +488,7 @@ export function getUserLoansInfo(
475
488
  userLoansInfo[loanId] = {
476
489
  loanId,
477
490
  loanTypeId,
478
- accountId: accountId as AccountId,
491
+ accountId,
479
492
  collaterals,
480
493
  borrows,
481
494
  netRate,
@@ -495,13 +508,7 @@ export function getUserLoansInfo(
495
508
  }
496
509
 
497
510
  export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<LoanChange>): LoanManagerUserLoan {
498
- const [accountId, loanType, oldColPools, oldBorPools, oldCollaterals, oldBorrows] = loan;
499
-
500
- // make copy which can update
501
- const colPools = [...structuredClone(oldColPools)];
502
- const borPools = [...structuredClone(oldBorPools)];
503
- const collaterals = [...structuredClone(oldCollaterals)];
504
- const borrows = [...structuredClone(oldBorrows)];
511
+ const { accountId, loanTypeId, colPools, borPools, userLoanCollateral, userLoanBorrow } = structuredClone(loan);
505
512
 
506
513
  // simulate changes
507
514
  for (const change of changes) {
@@ -514,10 +521,10 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
514
521
  if (colIndex === -1) {
515
522
  // new collateral
516
523
  colPools.push(poolInfo.poolId);
517
- collaterals.push({ balance: fTokenAmount, rewardIndex: 0n });
524
+ userLoanCollateral.push({ balance: fTokenAmount, rewardIndex: 0n });
518
525
  } else {
519
526
  // existing collateral
520
- collaterals[colIndex].balance += fTokenAmount;
527
+ userLoanCollateral[colIndex].balance += fTokenAmount;
521
528
  }
522
529
  break;
523
530
  }
@@ -526,12 +533,12 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
526
533
  if (colIndex === -1) throw Error(`Cannot find collateral for pool ${poolInfo.poolId}`);
527
534
  const { fTokenAmount } = change;
528
535
 
529
- const collateral = collaterals[colIndex];
536
+ const collateral = userLoanCollateral[colIndex];
530
537
  collateral.balance -= fTokenAmount;
531
538
  if (collateral.balance < 0) throw Error(`Insufficient collateral for pool ${poolInfo.poolId}`);
532
539
  if (collateral.balance === 0n) {
533
540
  colPools.splice(colIndex, 1);
534
- collaterals.splice(colIndex, 1);
541
+ userLoanCollateral.splice(colIndex, 1);
535
542
  }
536
543
  break;
537
544
  }
@@ -546,10 +553,10 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
546
553
  const borrow = initLoanBorrowInterests(isStable, poolInfo);
547
554
  borrow.amount = tokenAmount;
548
555
  borrow.balance = tokenAmount;
549
- borrows.push(borrow);
556
+ userLoanBorrow.push(borrow);
550
557
  } else {
551
558
  // existing borrow
552
- const borrow = borrows[borIndex];
559
+ const borrow = userLoanBorrow[borIndex];
553
560
  if (isStable !== borrow.stableInterestRate > 0)
554
561
  throw Error(`Borrow type mismatch for pool ${poolInfo.poolId}`);
555
562
 
@@ -564,7 +571,7 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
564
571
  if (borIndex === -1) throw Error(`Cannot find borrow for pool ${poolInfo.poolId}`);
565
572
  const { tokenAmount } = change;
566
573
 
567
- const borrow = borrows[borIndex];
574
+ const borrow = userLoanBorrow[borIndex];
568
575
  updateLoanBorrowInterests(borrow, tokenAmount, poolInfo, false);
569
576
  const balance = borrow.balance;
570
577
  const interest = balance - borrow.amount;
@@ -575,7 +582,7 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
575
582
  borrow.balance -= principalPaid + interestPaid;
576
583
  if (borrow.balance === 0n) {
577
584
  borPools.splice(borIndex, 1);
578
- borrows.splice(borIndex, 1);
585
+ userLoanBorrow.splice(borIndex, 1);
579
586
  }
580
587
  break;
581
588
  }
@@ -583,14 +590,14 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
583
590
  const borIndex = borPools.findIndex((poolId) => poolId === poolInfo.poolId);
584
591
  if (borIndex === -1) throw Error(`Cannot find borrow for pool ${poolInfo.poolId}`);
585
592
  const { isSwitchingToStable } = change;
586
- if (isSwitchingToStable === borrows[borIndex].stableInterestRate > 0)
593
+ if (isSwitchingToStable === userLoanBorrow[borIndex].stableInterestRate > 0)
587
594
  throw Error(`Borrow type mismatch for pool ${poolInfo.poolId}`);
588
595
 
589
- const { amount, balance } = updateLoanBorrowInterests(borrows[borIndex], 0n, poolInfo, false);
596
+ const { amount, balance } = updateLoanBorrowInterests(userLoanBorrow[borIndex], 0n, poolInfo, false);
590
597
  const borrow = initLoanBorrowInterests(isSwitchingToStable, poolInfo);
591
598
  borrow.amount = amount;
592
599
  borrow.balance = balance;
593
- borrows[borIndex] = borrow;
600
+ userLoanBorrow[borIndex] = borrow;
594
601
  break;
595
602
  }
596
603
  default:
@@ -599,5 +606,5 @@ export function simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<Lo
599
606
  }
600
607
  }
601
608
 
602
- return [accountId, loanType, colPools, borPools, collaterals, borrows];
609
+ return { accountId, loanTypeId, colPools, borPools, userLoanCollateral, userLoanBorrow };
603
610
  }
@@ -96,9 +96,19 @@ export type DeleteUserLoanEventParams = GetEventParams & {
96
96
  accountId: AccountId;
97
97
  };
98
98
 
99
- export type LoanManagerUserLoan = ReadContractReturnType<typeof LoanManagerAbi, "getUserLoan">;
99
+ export type LoanManagerUserLoanAbi = ReadContractReturnType<typeof LoanManagerAbi, "getUserLoan">;
100
100
 
101
- export type LoanManagerUserLoanBorrow = LoanManagerUserLoan[5][0];
101
+ export type LoanManagerUserLoanCollateral = LoanManagerUserLoanAbi[4][0];
102
+ export type LoanManagerUserLoanBorrow = LoanManagerUserLoanAbi[5][0];
103
+
104
+ export type LoanManagerUserLoan = {
105
+ accountId: AccountId;
106
+ loanTypeId: LoanTypeId;
107
+ colPools: Array<number>;
108
+ borPools: Array<number>;
109
+ userLoanCollateral: Array<LoanManagerUserLoanCollateral>;
110
+ userLoanBorrow: Array<LoanManagerUserLoanBorrow>;
111
+ };
102
112
 
103
113
  export enum LoanChangeType {
104
114
  AddCollateral,
@@ -1169,8 +1169,8 @@ export const util = {
1169
1169
  return FolksHubLoan.getUserLoansInfo(userLoansMap, poolsInfo, loanTypesInfo, oraclePrices);
1170
1170
  },
1171
1171
 
1172
- emptyLoanForSimulate(accountId: AccountId, loanType: LoanTypeId): LoanManagerUserLoan {
1173
- return [accountId, loanType, [], [], [], []];
1172
+ emptyLoanForSimulate(accountId: AccountId, loanTypeId: LoanTypeId): LoanManagerUserLoan {
1173
+ return { accountId, loanTypeId, colPools: [], borPools: [], userLoanCollateral: [], userLoanBorrow: [] };
1174
1174
  },
1175
1175
 
1176
1176
  simulateLoanChanges(loan: LoanManagerUserLoan, changes: Array<LoanChange>): LoanManagerUserLoan {