@elemental-stv-core/sdk 0.5.0 → 0.7.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 (155) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +250 -0
  3. package/dist/common/ata.d.ts +14 -0
  4. package/dist/common/ata.js +21 -0
  5. package/dist/common/buffer.d.ts +0 -1
  6. package/dist/common/buffer.js +16 -1
  7. package/dist/common/connection.d.ts +13 -0
  8. package/dist/common/connection.js +2 -0
  9. package/dist/common/constants.d.ts +6 -1
  10. package/dist/common/constants.js +21 -2
  11. package/dist/common/index.d.ts +3 -2
  12. package/dist/common/index.js +6 -2
  13. package/dist/common/strategy-interface.d.ts +35 -5
  14. package/dist/common/strategy-interface.js +7 -5
  15. package/dist/elemental-lend/accounts.d.ts +53 -9
  16. package/dist/elemental-lend/accounts.js +66 -8
  17. package/dist/elemental-lend/constants.d.ts +4 -5
  18. package/dist/elemental-lend/constants.js +11 -10
  19. package/dist/elemental-lend/index.d.ts +0 -1
  20. package/dist/elemental-lend/index.js +0 -1
  21. package/dist/elemental-lend/instructions.d.ts +0 -1
  22. package/dist/elemental-lend/instructions.js +0 -1
  23. package/dist/elemental-lend/jupiter-lend.d.ts +0 -1
  24. package/dist/elemental-lend/jupiter-lend.js +2 -3
  25. package/dist/elemental-lend/kamino-vault.d.ts +6 -6
  26. package/dist/elemental-lend/kamino-vault.js +49 -26
  27. package/dist/elemental-lend/pda.d.ts +9 -2
  28. package/dist/elemental-lend/pda.js +10 -3
  29. package/dist/elemental-lend/protocol-actions.d.ts +6 -5
  30. package/dist/elemental-lend/protocol-actions.js +22 -17
  31. package/dist/elemental-lend/types.d.ts +0 -1
  32. package/dist/elemental-lend/types.js +0 -1
  33. package/dist/index.d.ts +0 -1
  34. package/dist/index.js +0 -1
  35. package/dist/jlpd-strategy/accounts.d.ts +64 -11
  36. package/dist/jlpd-strategy/accounts.js +66 -7
  37. package/dist/jlpd-strategy/adapter.d.ts +1 -2
  38. package/dist/jlpd-strategy/adapter.js +1 -2
  39. package/dist/jlpd-strategy/constants.d.ts +21 -13
  40. package/dist/jlpd-strategy/constants.js +31 -27
  41. package/dist/jlpd-strategy/index.d.ts +0 -1
  42. package/dist/jlpd-strategy/index.js +0 -1
  43. package/dist/jlpd-strategy/instructions.d.ts +0 -1
  44. package/dist/jlpd-strategy/instructions.js +0 -1
  45. package/dist/jlpd-strategy/jlp-borrow.d.ts +29 -1
  46. package/dist/jlpd-strategy/jlp-borrow.js +29 -1
  47. package/dist/jlpd-strategy/jlp-data.d.ts +4 -4
  48. package/dist/jlpd-strategy/jlp-data.js +0 -1
  49. package/dist/jlpd-strategy/jupusd-earn.d.ts +31 -6
  50. package/dist/jlpd-strategy/jupusd-earn.js +40 -26
  51. package/dist/jlpd-strategy/pda.d.ts +9 -4
  52. package/dist/jlpd-strategy/pda.js +10 -6
  53. package/dist/jlpd-strategy/settle-yield.d.ts +12 -45
  54. package/dist/jlpd-strategy/settle-yield.js +14 -19
  55. package/dist/jlpd-strategy/swap-jlp.d.ts +4 -4
  56. package/dist/jlpd-strategy/swap-jlp.js +36 -29
  57. package/dist/jlpd-strategy/types.d.ts +5 -4
  58. package/dist/jlpd-strategy/types.js +0 -1
  59. package/dist/p-stv-core/accounts.d.ts +84 -11
  60. package/dist/p-stv-core/accounts.js +108 -30
  61. package/dist/p-stv-core/constants.d.ts +13 -3
  62. package/dist/p-stv-core/constants.js +22 -12
  63. package/dist/p-stv-core/events.d.ts +0 -1
  64. package/dist/p-stv-core/events.js +51 -2
  65. package/dist/p-stv-core/index.d.ts +0 -1
  66. package/dist/p-stv-core/index.js +0 -1
  67. package/dist/p-stv-core/instructions.d.ts +49 -4
  68. package/dist/p-stv-core/instructions.js +46 -14
  69. package/dist/p-stv-core/pda.d.ts +9 -2
  70. package/dist/p-stv-core/pda.js +10 -3
  71. package/dist/p-stv-core/prices.d.ts +0 -1
  72. package/dist/p-stv-core/prices.js +0 -1
  73. package/dist/p-stv-core/remaining-accounts.d.ts +15 -18
  74. package/dist/p-stv-core/remaining-accounts.js +66 -75
  75. package/dist/p-stv-core/send-tx.d.ts +21 -7
  76. package/dist/p-stv-core/send-tx.js +16 -25
  77. package/dist/p-stv-core/sol-wrap.d.ts +0 -1
  78. package/dist/p-stv-core/sol-wrap.js +5 -6
  79. package/dist/p-stv-core/types.d.ts +12 -5
  80. package/dist/p-stv-core/types.js +0 -1
  81. package/package.json +17 -1
  82. package/dist/common/buffer.d.ts.map +0 -1
  83. package/dist/common/buffer.js.map +0 -1
  84. package/dist/common/constants.d.ts.map +0 -1
  85. package/dist/common/constants.js.map +0 -1
  86. package/dist/common/index.d.ts.map +0 -1
  87. package/dist/common/index.js.map +0 -1
  88. package/dist/common/strategy-interface.d.ts.map +0 -1
  89. package/dist/common/strategy-interface.js.map +0 -1
  90. package/dist/elemental-lend/accounts.d.ts.map +0 -1
  91. package/dist/elemental-lend/accounts.js.map +0 -1
  92. package/dist/elemental-lend/constants.d.ts.map +0 -1
  93. package/dist/elemental-lend/constants.js.map +0 -1
  94. package/dist/elemental-lend/index.d.ts.map +0 -1
  95. package/dist/elemental-lend/index.js.map +0 -1
  96. package/dist/elemental-lend/instructions.d.ts.map +0 -1
  97. package/dist/elemental-lend/instructions.js.map +0 -1
  98. package/dist/elemental-lend/jupiter-lend.d.ts.map +0 -1
  99. package/dist/elemental-lend/jupiter-lend.js.map +0 -1
  100. package/dist/elemental-lend/kamino-vault.d.ts.map +0 -1
  101. package/dist/elemental-lend/kamino-vault.js.map +0 -1
  102. package/dist/elemental-lend/pda.d.ts.map +0 -1
  103. package/dist/elemental-lend/pda.js.map +0 -1
  104. package/dist/elemental-lend/protocol-actions.d.ts.map +0 -1
  105. package/dist/elemental-lend/protocol-actions.js.map +0 -1
  106. package/dist/elemental-lend/types.d.ts.map +0 -1
  107. package/dist/elemental-lend/types.js.map +0 -1
  108. package/dist/index.d.ts.map +0 -1
  109. package/dist/index.js.map +0 -1
  110. package/dist/jlpd-strategy/accounts.d.ts.map +0 -1
  111. package/dist/jlpd-strategy/accounts.js.map +0 -1
  112. package/dist/jlpd-strategy/adapter.d.ts.map +0 -1
  113. package/dist/jlpd-strategy/adapter.js.map +0 -1
  114. package/dist/jlpd-strategy/constants.d.ts.map +0 -1
  115. package/dist/jlpd-strategy/constants.js.map +0 -1
  116. package/dist/jlpd-strategy/index.d.ts.map +0 -1
  117. package/dist/jlpd-strategy/index.js.map +0 -1
  118. package/dist/jlpd-strategy/instructions.d.ts.map +0 -1
  119. package/dist/jlpd-strategy/instructions.js.map +0 -1
  120. package/dist/jlpd-strategy/jlp-borrow.d.ts.map +0 -1
  121. package/dist/jlpd-strategy/jlp-borrow.js.map +0 -1
  122. package/dist/jlpd-strategy/jlp-data.d.ts.map +0 -1
  123. package/dist/jlpd-strategy/jlp-data.js.map +0 -1
  124. package/dist/jlpd-strategy/jupusd-earn.d.ts.map +0 -1
  125. package/dist/jlpd-strategy/jupusd-earn.js.map +0 -1
  126. package/dist/jlpd-strategy/pda.d.ts.map +0 -1
  127. package/dist/jlpd-strategy/pda.js.map +0 -1
  128. package/dist/jlpd-strategy/settle-yield.d.ts.map +0 -1
  129. package/dist/jlpd-strategy/settle-yield.js.map +0 -1
  130. package/dist/jlpd-strategy/swap-jlp.d.ts.map +0 -1
  131. package/dist/jlpd-strategy/swap-jlp.js.map +0 -1
  132. package/dist/jlpd-strategy/types.d.ts.map +0 -1
  133. package/dist/jlpd-strategy/types.js.map +0 -1
  134. package/dist/p-stv-core/accounts.d.ts.map +0 -1
  135. package/dist/p-stv-core/accounts.js.map +0 -1
  136. package/dist/p-stv-core/constants.d.ts.map +0 -1
  137. package/dist/p-stv-core/constants.js.map +0 -1
  138. package/dist/p-stv-core/events.d.ts.map +0 -1
  139. package/dist/p-stv-core/events.js.map +0 -1
  140. package/dist/p-stv-core/index.d.ts.map +0 -1
  141. package/dist/p-stv-core/index.js.map +0 -1
  142. package/dist/p-stv-core/instructions.d.ts.map +0 -1
  143. package/dist/p-stv-core/instructions.js.map +0 -1
  144. package/dist/p-stv-core/pda.d.ts.map +0 -1
  145. package/dist/p-stv-core/pda.js.map +0 -1
  146. package/dist/p-stv-core/prices.d.ts.map +0 -1
  147. package/dist/p-stv-core/prices.js.map +0 -1
  148. package/dist/p-stv-core/remaining-accounts.d.ts.map +0 -1
  149. package/dist/p-stv-core/remaining-accounts.js.map +0 -1
  150. package/dist/p-stv-core/send-tx.d.ts.map +0 -1
  151. package/dist/p-stv-core/send-tx.js.map +0 -1
  152. package/dist/p-stv-core/sol-wrap.d.ts.map +0 -1
  153. package/dist/p-stv-core/sol-wrap.js.map +0 -1
  154. package/dist/p-stv-core/types.d.ts.map +0 -1
  155. package/dist/p-stv-core/types.js.map +0 -1
@@ -17,30 +17,24 @@ const pda_1 = require("../elemental-lend/pda");
17
17
  const accounts_1 = require("../elemental-lend/accounts");
18
18
  const jupiter_lend_1 = require("../elemental-lend/jupiter-lend");
19
19
  const kamino_vault_1 = require("../elemental-lend/kamino-vault");
20
- const spl_token_1 = require("@solana/spl-token");
20
+ const ata_1 = require("../common/ata");
21
21
  // ---------------------------------------------------------------------------
22
22
  // Helpers
23
23
  // ---------------------------------------------------------------------------
24
24
  const DEFAULT_PUBKEY = web3_js_1.PublicKey.default;
25
25
  const TOKEN_PROGRAM = new web3_js_1.PublicKey("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");
26
- const USDC_MINT = new web3_js_1.PublicKey("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v");
27
26
  const STRATEGY_STATE_SEED = Buffer.from("strategy_state");
28
27
  const POSITION_SEED = Buffer.from("position");
29
28
  function isDefault(pubkey) {
30
29
  return pubkey.equals(DEFAULT_PUBKEY);
31
30
  }
32
- /** Derive the ATA address (same logic as @solana/spl-token getAssociatedTokenAddressSync) */
33
- function findAta(mint, owner, tokenProgram) {
34
- const [ata] = web3_js_1.PublicKey.findProgramAddressSync([owner.toBuffer(), tokenProgram.toBuffer(), mint.toBuffer()], spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID);
35
- return ata;
36
- }
37
31
  /**
38
32
  * Build the 4 fixed lend accounts: [lendProgram, lendStrategyState, lendPosition, lendBaseAta]
39
33
  */
40
34
  function buildFixedLendAccounts(lendProgram, baseMint, stvAddress) {
41
35
  const [lendStrategyState] = (0, pda_1.findStrategyStatePda)(baseMint, lendProgram);
42
36
  const [lendPosition] = (0, pda_1.findStvPositionPda)(stvAddress, lendProgram);
43
- const lendBaseAta = findAta(baseMint, lendStrategyState, TOKEN_PROGRAM);
37
+ const lendBaseAta = (0, ata_1.findAta)(baseMint, lendStrategyState, TOKEN_PROGRAM);
44
38
  return {
45
39
  lendStrategyState,
46
40
  accounts: [
@@ -53,24 +47,17 @@ function buildFixedLendAccounts(lendProgram, baseMint, stvAddress) {
53
47
  }
54
48
  /**
55
49
  * Build strategy pair accounts for NAV computation.
56
- * For each active strategy: [strategy_state, stv_position, strategy_program (deduplicated)]
50
+ * Strategy-locked vaults have a single strategy: [strategy_state, stv_position].
57
51
  */
58
52
  function buildStrategyPairAccounts(vault) {
59
- const accounts = [];
60
- if (vault.strategyCount === 0)
61
- return accounts;
62
- for (let i = 0; i < vault.strategyCount; i++) {
63
- const strategyProgram = vault.strategies[i];
64
- if (isDefault(strategyProgram))
65
- continue;
66
- const [stratState] = web3_js_1.PublicKey.findProgramAddressSync([STRATEGY_STATE_SEED, vault.baseMint.toBuffer()], strategyProgram);
67
- const [stratPos] = web3_js_1.PublicKey.findProgramAddressSync([POSITION_SEED, vault.address.toBuffer()], strategyProgram);
68
- accounts.push({ pubkey: stratState, isSigner: false, isWritable: true }, { pubkey: stratPos, isSigner: false, isWritable: true });
69
- // Note: strategy program is NOT added to remaining_accounts.
70
- // The on-chain code expects exactly 2 accounts per strategy (state + position).
71
- // The strategy program resolves from the transaction's account list via invoke_signed.
72
- }
73
- return accounts;
53
+ if (isDefault(vault.strategy))
54
+ return [];
55
+ const [stratState] = web3_js_1.PublicKey.findProgramAddressSync([STRATEGY_STATE_SEED, vault.baseMint.toBuffer()], vault.strategy);
56
+ const [stratPos] = web3_js_1.PublicKey.findProgramAddressSync([POSITION_SEED, vault.address.toBuffer()], vault.strategy);
57
+ return [
58
+ { pubkey: stratState, isSigner: false, isWritable: true },
59
+ { pubkey: stratPos, isSigner: false, isWritable: true },
60
+ ];
74
61
  }
75
62
  /**
76
63
  */
@@ -95,32 +82,30 @@ async function buildDepositContext(connection, vault, payer) {
95
82
  if (!isDefault(vault.lendProgram)) {
96
83
  const { accounts: lendAccounts, lendStrategyState } = buildFixedLendAccounts(vault.lendProgram, vault.baseMint, vault.address);
97
84
  remainingAccounts.push(...lendAccounts);
98
- // Protocol AUM accounts
99
- const conn = connection;
100
- try {
101
- const lendState = await (0, accounts_1.fetchLendStrategyState)(conn, vault.baseMint, vault.lendProgram);
102
- const protocolAccounts = await (0, accounts_1.buildProtocolAccountsForAum)(conn, lendState, lendStrategyState, TOKEN_PROGRAM);
103
- protocolAumCount = protocolAccounts.length;
104
- remainingAccounts.push(...protocolAccounts);
105
- }
106
- catch {
107
- // If strategy state not found, skip protocol accounts
108
- }
109
- // Check kVault staleness prepend invest ix if stale
110
- try {
111
- const conn = connection;
112
- const lendState = await (0, accounts_1.fetchLendStrategyState)(conn, vault.baseMint, vault.lendProgram).catch(() => null);
113
- if (lendState) {
85
+ // Single fetch of LendStrategyState — used for both protocol AUM
86
+ // accounts and kVault staleness check.
87
+ const lendState = await (0, accounts_1.fetchLendStrategyState)(connection, vault.baseMint, vault.lendProgram).catch(() => null);
88
+ if (lendState) {
89
+ // Protocol AUM accounts
90
+ try {
91
+ const protocolAccounts = await (0, accounts_1.buildProtocolAccountsForAum)(connection, lendState, lendStrategyState, TOKEN_PROGRAM);
92
+ protocolAumCount = protocolAccounts.length;
93
+ remainingAccounts.push(...protocolAccounts);
94
+ }
95
+ catch {
96
+ // If protocol resolution fails, skip protocol accounts
97
+ }
98
+ // Check kVault staleness — prepend invest ix if stale
99
+ try {
114
100
  const protocolKeys = lendState.protocols
115
101
  .filter((p) => !isDefault(p));
116
102
  // Need a payer for the invest ix — will be set by the caller
117
- // Use PublicKey.default as placeholder; the caller replaces it
118
- const investIxs = payer ? await (0, kamino_vault_1.buildKaminoInvestIxsIfStale)(conn, payer, vault.baseMint, protocolKeys) : [];
103
+ const investIxs = payer ? await (0, kamino_vault_1.buildKaminoInvestIxsIfStale)(connection, payer, vault.baseMint, protocolKeys) : [];
119
104
  preInstructions.push(...investIxs);
120
105
  }
121
- }
122
- catch {
123
- // Skip if staleness check fails
106
+ catch {
107
+ // Skip if staleness check fails
108
+ }
124
109
  }
125
110
  }
126
111
  // 2. Strategy pair accounts (2 per strategy: state + position)
@@ -132,8 +117,8 @@ async function buildDepositContext(connection, vault, payer) {
132
117
  if (!isDefault(vault.lendProgram) && jupPool) {
133
118
  try {
134
119
  const [lendSS] = (0, pda_1.findStrategyStatePda)(vault.baseMint, vault.lendProgram);
135
- const strategyBaseAta = findAta(vault.baseMint, lendSS, TOKEN_PROGRAM);
136
- const strategyFtokenAta = findAta(jupPool.fTokenMint, lendSS, TOKEN_PROGRAM);
120
+ const strategyBaseAta = (0, ata_1.findAta)(vault.baseMint, lendSS, TOKEN_PROGRAM);
121
+ const strategyFtokenAta = (0, ata_1.findAta)(jupPool.fTokenMint, lendSS, TOKEN_PROGRAM);
137
122
  const autoRouteAccounts = (0, jupiter_lend_1.buildJupLendAutoRouteAccounts)(jupPool, lendSS, strategyBaseAta, strategyFtokenAta);
138
123
  autoRouteCount = autoRouteAccounts.length;
139
124
  for (const acc of autoRouteAccounts) {
@@ -144,19 +129,10 @@ async function buildDepositContext(connection, vault, payer) {
144
129
  // Skip auto-route if account resolution fails
145
130
  }
146
131
  }
147
- // 4. Strategy programs (after auto-route, for CPI resolution)
148
- // These must be in the transaction but are NOT counted as auto-route or strategy pairs.
149
- // The on-chain code uses auto_route_count to bound the auto-route slice.
150
- const seenPrograms = new Set();
151
- for (let i = 0; i < vault.strategyCount; i++) {
152
- const prog = vault.strategies[i];
153
- if (isDefault(prog))
154
- continue;
155
- const key = prog.toBase58();
156
- if (!seenPrograms.has(key)) {
157
- seenPrograms.add(key);
158
- remainingAccounts.push({ pubkey: prog, isSigner: false, isWritable: false });
159
- }
132
+ // 4. Strategy program (after auto-route, for CPI resolution)
133
+ // Must be in the transaction but NOT counted as auto-route or strategy pairs.
134
+ if (!isDefault(vault.strategy)) {
135
+ remainingAccounts.push({ pubkey: vault.strategy, isSigner: false, isWritable: false });
160
136
  }
161
137
  return { remainingAccounts, protocolAumCount, autoRouteCount, preInstructions };
162
138
  }
@@ -168,7 +144,7 @@ async function buildDepositContext(connection, vault, payer) {
168
144
  * - If lend is active, derives lend PDAs
169
145
  * - If USDC + Jupiter Lend, appends auto-unroute accounts
170
146
  */
171
- async function buildClaimWithdrawContext(connection, vault) {
147
+ async function buildClaimWithdrawContext(vault) {
172
148
  const remainingAccounts = [];
173
149
  const preInstructions = [];
174
150
  let autoUnrouteCount = 0;
@@ -179,8 +155,8 @@ async function buildClaimWithdrawContext(connection, vault) {
179
155
  const jupPoolForUnroute = jupiter_lend_1.JUP_LEND_POOLS[vault.baseMint.toBase58()];
180
156
  if (jupPoolForUnroute) {
181
157
  try {
182
- const lendBaseAta = findAta(vault.baseMint, lendStrategyState, TOKEN_PROGRAM);
183
- const strategyFtokenAta = findAta(jupPoolForUnroute.fTokenMint, lendStrategyState, TOKEN_PROGRAM);
158
+ const lendBaseAta = (0, ata_1.findAta)(vault.baseMint, lendStrategyState, TOKEN_PROGRAM);
159
+ const strategyFtokenAta = (0, ata_1.findAta)(jupPoolForUnroute.fTokenMint, lendStrategyState, TOKEN_PROGRAM);
184
160
  const autoUnrouteAccounts = (0, jupiter_lend_1.buildJupLendAutoUnrouteAccounts)(jupPoolForUnroute, lendStrategyState, strategyFtokenAta, lendBaseAta);
185
161
  autoUnrouteCount = autoUnrouteAccounts.length;
186
162
  remainingAccounts.push(...autoUnrouteAccounts.map(a => ({ ...a, isSigner: false })));
@@ -195,26 +171,43 @@ async function buildClaimWithdrawContext(connection, vault) {
195
171
  /**
196
172
  * Build the complete remaining_accounts for a deposit_to_strategy instruction.
197
173
  *
198
- * Layout: [4 lend, K auto_unroute]
174
+ * Layout: [4 fixed lend, N protocol_aum, K auto_unroute]
199
175
  *
200
- * Same as claim_withdraw: if lend is active, derives lend PDAs.
201
- * If USDC + Jupiter Lend, appends auto-unroute accounts for unsweep.
176
+ * - Fixed lend accounts (if lend is active)
177
+ * - Protocol AUM accounts: required by the on-chain handler to refresh lend
178
+ * valuation via update_lend_aum before the reserved_base liquidity lock check
179
+ * - Auto-unroute accounts: forwarded to the lend withdraw CPI for unsweep
202
180
  *
203
- * Note: no Kamino invest pre-instructions here deposit_to_strategy unsweeps
204
- * from the active protocol (Jupiter Lend for USDC), not Kamino.
181
+ * The `connection` parameter is required to fetch LendStrategyState and
182
+ * resolve protocol AUM accounts.
205
183
  */
206
184
  async function buildDepositToStrategyContext(connection, vault) {
207
185
  const remainingAccounts = [];
186
+ let protocolAumCount = 0;
208
187
  let autoUnrouteCount = 0;
209
188
  if (!isDefault(vault.lendProgram)) {
210
189
  const { accounts: lendAccounts, lendStrategyState } = buildFixedLendAccounts(vault.lendProgram, vault.baseMint, vault.address);
211
190
  remainingAccounts.push(...lendAccounts);
191
+ // Fetch LendStrategyState once — used for protocol AUM resolution.
192
+ const lendState = await (0, accounts_1.fetchLendStrategyState)(connection, vault.baseMint, vault.lendProgram).catch(() => null);
193
+ if (lendState) {
194
+ // Protocol AUM accounts (kVault: 2/protocol, Jupiter Lend: 3/protocol)
195
+ try {
196
+ const protocolAccounts = await (0, accounts_1.buildProtocolAccountsForAum)(connection, lendState, lendStrategyState, TOKEN_PROGRAM);
197
+ protocolAumCount = protocolAccounts.length;
198
+ remainingAccounts.push(...protocolAccounts);
199
+ }
200
+ catch {
201
+ // Skip protocol accounts if resolution fails — on-chain update_lend_aum
202
+ // will then reject if protocols are active.
203
+ }
204
+ }
212
205
  // Auto-unroute from Jupiter Lend (for any asset with a configured pool)
213
206
  const jupPoolForUnroute = jupiter_lend_1.JUP_LEND_POOLS[vault.baseMint.toBase58()];
214
207
  if (jupPoolForUnroute) {
215
208
  try {
216
- const lendBaseAta = findAta(vault.baseMint, lendStrategyState, TOKEN_PROGRAM);
217
- const strategyFtokenAta = findAta(jupPoolForUnroute.fTokenMint, lendStrategyState, TOKEN_PROGRAM);
209
+ const lendBaseAta = (0, ata_1.findAta)(vault.baseMint, lendStrategyState, TOKEN_PROGRAM);
210
+ const strategyFtokenAta = (0, ata_1.findAta)(jupPoolForUnroute.fTokenMint, lendStrategyState, TOKEN_PROGRAM);
218
211
  const autoUnrouteAccounts = (0, jupiter_lend_1.buildJupLendAutoUnrouteAccounts)(jupPoolForUnroute, lendStrategyState, strategyFtokenAta, lendBaseAta);
219
212
  autoUnrouteCount = autoUnrouteAccounts.length;
220
213
  remainingAccounts.push(...autoUnrouteAccounts.map(a => ({ ...a, isSigner: false })));
@@ -224,7 +217,7 @@ async function buildDepositToStrategyContext(connection, vault) {
224
217
  }
225
218
  }
226
219
  }
227
- return { remainingAccounts, autoUnrouteCount, preInstructions: [] };
220
+ return { remainingAccounts, protocolAumCount, autoUnrouteCount, preInstructions: [] };
228
221
  }
229
222
  /**
230
223
  * Build the complete remaining_accounts for a process_epoch instruction.
@@ -243,10 +236,9 @@ async function buildProcessEpochContext(connection, vault, phase) {
243
236
  if (!isDefault(vault.lendProgram)) {
244
237
  const { accounts: lendAccounts, lendStrategyState } = buildFixedLendAccounts(vault.lendProgram, vault.baseMint, vault.address);
245
238
  remainingAccounts.push(...lendAccounts);
246
- const conn = connection;
247
239
  try {
248
- const lendState = await (0, accounts_1.fetchLendStrategyState)(conn, vault.baseMint, vault.lendProgram);
249
- const protocolAccounts = await (0, accounts_1.buildProtocolAccountsForAum)(conn, lendState, lendStrategyState, TOKEN_PROGRAM);
240
+ const lendState = await (0, accounts_1.fetchLendStrategyState)(connection, vault.baseMint, vault.lendProgram);
241
+ const protocolAccounts = await (0, accounts_1.buildProtocolAccountsForAum)(connection, lendState, lendStrategyState, TOKEN_PROGRAM);
250
242
  protocolAumCount = protocolAccounts.length;
251
243
  remainingAccounts.push(...protocolAccounts);
252
244
  }
@@ -259,4 +251,3 @@ async function buildProcessEpochContext(connection, vault, phase) {
259
251
  remainingAccounts.push(...strategyAccounts);
260
252
  return { remainingAccounts, protocolAumCount, preInstructions };
261
253
  }
262
- //# sourceMappingURL=remaining-accounts.js.map
@@ -2,15 +2,13 @@
2
2
  * Smart transaction builder and sender.
3
3
  *
4
4
  * Features:
5
- * - Simulates to get exact compute units, adds 10% buffer
5
+ * - Simulates to get exact compute units, adds 5% buffer
6
6
  * - Fetches priority fee from Helius (medium tier)
7
7
  * - Pre-checks size to decide legacy vs versioned tx with LUT (no double-sign)
8
8
  * - Uses lastValidBlockHeight for reliable confirmation
9
9
  * - Parallel fetches where possible
10
10
  */
11
- import { AddressLookupTableAccount, PublicKey, TransactionInstruction } from "@solana/web3.js";
12
- /** @deprecated Use DEFAULT_LUT_ADDRESSES instead */
13
- export declare const DEFAULT_LUT_ADDRESS: PublicKey;
11
+ import { AddressLookupTableAccount, Connection, PublicKey, Transaction, TransactionInstruction, VersionedTransaction } from "@solana/web3.js";
14
12
  /**
15
13
  * Default LUTs for Elemental Vaults.
16
14
  * These are fetched in parallel and merged for every versioned transaction.
@@ -26,8 +24,19 @@ export declare const DEFAULT_LUT_ADDRESSES: {
26
24
  /** JLPD Strategy (config, strategy states, positions, JLP, oracles) */
27
25
  jlpd: PublicKey;
28
26
  };
29
- export type SignTransactionFn = (tx: any) => Promise<any>;
30
- export type SmartTxConnection = any;
27
+ /**
28
+ * Wallet signing callback. Accepts either a legacy `Transaction` or a
29
+ * `VersionedTransaction` and returns the same type, fully signed.
30
+ *
31
+ * Generic over `T` so callers don't lose the input type when chaining.
32
+ */
33
+ export type SignTransactionFn = <T extends Transaction | VersionedTransaction>(tx: T) => Promise<T>;
34
+ /**
35
+ * Minimal structural type accepted by `sendSmartTx` / `simulateSmartTx`.
36
+ * Using a structural subset of `Connection` lets callers pass any web3.js
37
+ * version without nominal type mismatches.
38
+ */
39
+ export type SmartTxConnection = Pick<Connection, "getLatestBlockhash" | "getAddressLookupTable" | "simulateTransaction" | "sendRawTransaction" | "confirmTransaction">;
31
40
  export interface SmartTxOptions {
32
41
  /** Single LUT address (deprecated — use additionalLuts or DEFAULT_LUT_ADDRESSES) */
33
42
  lutAddress?: PublicKey;
@@ -39,6 +48,12 @@ export interface SmartTxOptions {
39
48
  computeUnits?: number;
40
49
  /** Force legacy transaction (no ALTs). Use when CPI programs appear as regular accounts. */
41
50
  forceLegacy?: boolean;
51
+ /**
52
+ * RPC URL — required to enable the Helius `getPriorityFeeEstimate` shortcut.
53
+ * If omitted, the SDK falls back to a flat `FALLBACK_PRIORITY_FEE` and skips
54
+ * the Helius call entirely. Avoid reaching into `connection._rpcEndpoint`.
55
+ */
56
+ rpcUrl?: string;
42
57
  }
43
58
  /**
44
59
  * Build, simulate, and send a transaction with optimal compute budget.
@@ -55,4 +70,3 @@ export declare function sendSmartTx(connection: SmartTxConnection, instructions:
55
70
  * Use this to gate combined-tx attempts before asking the wallet to sign.
56
71
  */
57
72
  export declare function simulateSmartTx(connection: SmartTxConnection, instructions: TransactionInstruction[], payer: PublicKey, optionsOrLut?: PublicKey | SmartTxOptions): Promise<boolean>;
58
- //# sourceMappingURL=send-tx.d.ts.map
@@ -3,19 +3,17 @@
3
3
  * Smart transaction builder and sender.
4
4
  *
5
5
  * Features:
6
- * - Simulates to get exact compute units, adds 10% buffer
6
+ * - Simulates to get exact compute units, adds 5% buffer
7
7
  * - Fetches priority fee from Helius (medium tier)
8
8
  * - Pre-checks size to decide legacy vs versioned tx with LUT (no double-sign)
9
9
  * - Uses lastValidBlockHeight for reliable confirmation
10
10
  * - Parallel fetches where possible
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.DEFAULT_LUT_ADDRESSES = exports.DEFAULT_LUT_ADDRESS = void 0;
13
+ exports.DEFAULT_LUT_ADDRESSES = void 0;
14
14
  exports.sendSmartTx = sendSmartTx;
15
15
  exports.simulateSmartTx = simulateSmartTx;
16
16
  const web3_js_1 = require("@solana/web3.js");
17
- /** @deprecated Use DEFAULT_LUT_ADDRESSES instead */
18
- exports.DEFAULT_LUT_ADDRESS = new web3_js_1.PublicKey("CCkFGzcR7bMe1HZ9eRkpnu3Ts8EKXErfapbLtpcCAbQk");
19
17
  /**
20
18
  * Default LUTs for Elemental Vaults.
21
19
  * These are fetched in parallel and merged for every versioned transaction.
@@ -31,9 +29,7 @@ exports.DEFAULT_LUT_ADDRESSES = {
31
29
  /** JLPD Strategy (config, strategy states, positions, JLP, oracles) */
32
30
  jlpd: new web3_js_1.PublicKey("EMd8YPN5ak2Kht1aktgtWfjakJJQoh98KqCqA3tRTTAn"),
33
31
  };
34
- /** Max legacy transaction size */
35
- const MAX_LEGACY_SIZE = 1232;
36
- /** Compute unit buffer (10% above simulated) */
32
+ /** Compute unit buffer 5% above simulated. */
37
33
  const CU_BUFFER_MULTIPLIER = 1.05;
38
34
  /** Fallback compute units if simulation fails */
39
35
  const FALLBACK_CU = 400000;
@@ -57,7 +53,7 @@ async function sendSmartTx(connection, instructions, payer, signTransaction, opt
57
53
  const lutAddresses = buildLutAddressList(options);
58
54
  const [blockhashResult, priorityFee, ...lutResults] = await Promise.all([
59
55
  connection.getLatestBlockhash("confirmed"),
60
- options.noPriorityFee ? Promise.resolve(0) : fetchPriorityFee(connection),
56
+ options.noPriorityFee ? Promise.resolve(0) : fetchPriorityFee(options.rpcUrl),
61
57
  ...lutAddresses.map(addr => connection.getAddressLookupTable(addr)),
62
58
  ]);
63
59
  const { blockhash, lastValidBlockHeight } = blockhashResult;
@@ -151,7 +147,6 @@ async function simulateSmartTx(connection, instructions, payer, optionsOrLut) {
151
147
  if (options.additionalLuts)
152
148
  allLuts.push(...options.additionalLuts);
153
149
  try {
154
- const conn = connection;
155
150
  const simIxs = [
156
151
  web3_js_1.ComputeBudgetProgram.setComputeUnitLimit({ units: 1400000 }),
157
152
  ...instructions,
@@ -162,7 +157,7 @@ async function simulateSmartTx(connection, instructions, payer, optionsOrLut) {
162
157
  instructions: simIxs,
163
158
  }).compileToV0Message(allLuts);
164
159
  const simTx = new web3_js_1.VersionedTransaction(msgV0);
165
- const simResult = await conn.simulateTransaction(simTx, {
160
+ const simResult = await connection.simulateTransaction(simTx, {
166
161
  sigVerify: false,
167
162
  replaceRecentBlockhash: true,
168
163
  });
@@ -223,7 +218,7 @@ function checkNeedsVersionedTx(instructions, payer, blockhash) {
223
218
  }
224
219
  /**
225
220
  * Simulate transaction to get exact compute units consumed.
226
- * Returns simulated CU + 10% buffer, or fallback if simulation fails.
221
+ * Returns simulated CU + 5% buffer, or fallback if simulation fails.
227
222
  */
228
223
  async function simulateForCU(connection, instructions, payer, blockhash, luts) {
229
224
  try {
@@ -233,14 +228,13 @@ async function simulateForCU(connection, instructions, payer, blockhash, luts) {
233
228
  ...instructions,
234
229
  ];
235
230
  // Try versioned simulation first (works with LUTs)
236
- const conn = connection;
237
231
  const msgV0 = new web3_js_1.TransactionMessage({
238
232
  payerKey: payer,
239
233
  recentBlockhash: blockhash,
240
234
  instructions: simIxs,
241
235
  }).compileToV0Message(luts ?? []);
242
236
  const simTx = new web3_js_1.VersionedTransaction(msgV0);
243
- const simResult = await conn.simulateTransaction(simTx, {
237
+ const simResult = await connection.simulateTransaction(simTx, {
244
238
  sigVerify: false,
245
239
  replaceRecentBlockhash: true,
246
240
  });
@@ -257,17 +251,16 @@ async function simulateForCU(connection, instructions, payer, blockhash, luts) {
257
251
  }
258
252
  /**
259
253
  * Fetch recommended priority fee from Helius (medium tier).
260
- * Falls back to a default if Helius is unavailable.
254
+ *
255
+ * Caller must pass an explicit `rpcUrl` (via `SmartTxOptions.rpcUrl`) — the
256
+ * SDK no longer reaches into `Connection._rpcEndpoint`. If `rpcUrl` is not
257
+ * a Helius endpoint or is omitted, returns the flat `FALLBACK_PRIORITY_FEE`.
261
258
  */
262
- async function fetchPriorityFee(connection) {
259
+ async function fetchPriorityFee(rpcUrl) {
260
+ if (!rpcUrl || !rpcUrl.includes("helius")) {
261
+ return FALLBACK_PRIORITY_FEE;
262
+ }
263
263
  try {
264
- // Extract RPC URL from connection
265
- const conn = connection;
266
- const rpcUrl = conn._rpcEndpoint ?? "";
267
- // Only use Helius priority fee API if it's a Helius RPC
268
- if (!rpcUrl.includes("helius")) {
269
- return FALLBACK_PRIORITY_FEE;
270
- }
271
264
  const response = await fetch(rpcUrl, {
272
265
  method: "POST",
273
266
  headers: { "Content-Type": "application/json" },
@@ -283,8 +276,7 @@ async function fetchPriorityFee(connection) {
283
276
  }),
284
277
  });
285
278
  if (response.ok) {
286
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
287
- const data = await response.json();
279
+ const data = (await response.json());
288
280
  const fee = data?.result?.priorityFeeEstimate;
289
281
  if (typeof fee === "number" && fee > 0) {
290
282
  return Math.ceil(fee);
@@ -296,4 +288,3 @@ async function fetchPriorityFee(connection) {
296
288
  }
297
289
  return FALLBACK_PRIORITY_FEE;
298
290
  }
299
- //# sourceMappingURL=send-tx.js.map
@@ -32,4 +32,3 @@ export declare function buildWrapSolIxs(payer: PublicKey, lamports: bigint | num
32
32
  * @returns Instruction to append after withdraw
33
33
  */
34
34
  export declare function buildUnwrapSolIx(owner: PublicKey): TransactionInstruction;
35
- //# sourceMappingURL=sol-wrap.d.ts.map
@@ -12,18 +12,18 @@ exports.findWsolAta = findWsolAta;
12
12
  exports.buildWrapSolIxs = buildWrapSolIxs;
13
13
  exports.buildUnwrapSolIx = buildUnwrapSolIx;
14
14
  const web3_js_1 = require("@solana/web3.js");
15
+ const spl_token_1 = require("@solana/spl-token");
16
+ const ata_1 = require("../common/ata");
15
17
  /** Native SOL mint (wrapped SOL) */
16
18
  exports.NATIVE_SOL_MINT = new web3_js_1.PublicKey("So11111111111111111111111111111111111111112");
17
19
  const SPL_TOKEN_PROGRAM = new web3_js_1.PublicKey("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA");
18
- const ATA_PROGRAM = new web3_js_1.PublicKey("ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL");
19
20
  /** Check if a mint is native SOL (wSOL) */
20
21
  function isNativeSol(mint) {
21
22
  return mint.equals(exports.NATIVE_SOL_MINT);
22
23
  }
23
24
  /** Derive a user's wSOL ATA */
24
25
  function findWsolAta(owner) {
25
- const [ata] = web3_js_1.PublicKey.findProgramAddressSync([owner.toBuffer(), SPL_TOKEN_PROGRAM.toBuffer(), exports.NATIVE_SOL_MINT.toBuffer()], ATA_PROGRAM);
26
- return ata;
26
+ return (0, ata_1.findAta)(exports.NATIVE_SOL_MINT, owner, SPL_TOKEN_PROGRAM);
27
27
  }
28
28
  /**
29
29
  * Build instructions to wrap native SOL into a wSOL ATA.
@@ -78,7 +78,7 @@ function buildUnwrapSolIx(owner) {
78
78
  }
79
79
  /** Internal: create ATA (idempotent) */
80
80
  function createAtaIxInternal(payer, mint, owner) {
81
- const [ata] = web3_js_1.PublicKey.findProgramAddressSync([owner.toBuffer(), SPL_TOKEN_PROGRAM.toBuffer(), mint.toBuffer()], ATA_PROGRAM);
81
+ const ata = (0, ata_1.findAta)(mint, owner, SPL_TOKEN_PROGRAM);
82
82
  return new web3_js_1.TransactionInstruction({
83
83
  keys: [
84
84
  { pubkey: payer, isSigner: true, isWritable: true },
@@ -88,8 +88,7 @@ function createAtaIxInternal(payer, mint, owner) {
88
88
  { pubkey: web3_js_1.SystemProgram.programId, isSigner: false, isWritable: false },
89
89
  { pubkey: SPL_TOKEN_PROGRAM, isSigner: false, isWritable: false },
90
90
  ],
91
- programId: ATA_PROGRAM,
91
+ programId: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID,
92
92
  data: Buffer.from([1]), // CreateIdempotent
93
93
  });
94
94
  }
95
- //# sourceMappingURL=sol-wrap.js.map
@@ -13,7 +13,7 @@ export interface Stv {
13
13
  strategy: PublicKey;
14
14
  feeReceiver: PublicKey;
15
15
  lendProgram: PublicKey;
16
- strategies: PublicKey[];
16
+ childVaults: BN[];
17
17
  vaultId: BN;
18
18
  reservedBase: BN;
19
19
  requestedBase: BN;
@@ -33,7 +33,7 @@ export interface Stv {
33
33
  perfFeeBps: number;
34
34
  flags: number;
35
35
  dailyWithdrawLimitBps: number;
36
- strategyCount: number;
36
+ childVaultCount: number;
37
37
  version: number;
38
38
  bump: number;
39
39
  }
@@ -81,7 +81,7 @@ export interface StvUpdatedEvent {
81
81
  perfFeeBps: number;
82
82
  vaultCapacity: BN;
83
83
  minDeposit: BN;
84
- strategyCount: number;
84
+ childVaultCount: number;
85
85
  lendProgram: PublicKey;
86
86
  }
87
87
  export interface DepositedEvent {
@@ -176,5 +176,12 @@ export interface WithdrawOverrideClaimedEvent {
176
176
  dailyWithdrawnBase: BN;
177
177
  dailyLimit: BN;
178
178
  }
179
- export type StvEvent = ConfigInitializedEvent | ConfigUpdatedEvent | StvCreatedEvent | StvUpdatedEvent | DepositedEvent | WithdrawRequestedEvent | WithdrawRequestIncreasedEvent | WithdrawClaimedEvent | DepositedToStrategyEvent | WithdrawnFromStrategyEvent | EpochProcessedEvent | EpochAdvancedEvent | FeesSettledEvent | StvClosedEvent | ManagerAddedEvent | ManagerRemovedEvent | WithdrawOverrideClaimedEvent;
180
- //# sourceMappingURL=types.d.ts.map
179
+ export interface LendMigratedEvent {
180
+ name: "LendMigrated";
181
+ vaultId: BN;
182
+ oldLendProgram: PublicKey;
183
+ newLendProgram: PublicKey;
184
+ sharesWithdrawn: BN;
185
+ baseMigrated: BN;
186
+ }
187
+ export type StvEvent = ConfigInitializedEvent | ConfigUpdatedEvent | StvCreatedEvent | StvUpdatedEvent | DepositedEvent | WithdrawRequestedEvent | WithdrawRequestIncreasedEvent | WithdrawClaimedEvent | DepositedToStrategyEvent | WithdrawnFromStrategyEvent | EpochProcessedEvent | EpochAdvancedEvent | FeesSettledEvent | StvClosedEvent | ManagerAddedEvent | ManagerRemovedEvent | WithdrawOverrideClaimedEvent | LendMigratedEvent;
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,7 +1,20 @@
1
1
  {
2
2
  "name": "@elemental-stv-core/sdk",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "description": "TypeScript SDK for Elemental Vaults — p-STV Core, Elemental Lend, JLPD Strategy",
5
+ "license": "Apache-2.0",
6
+ "keywords": [
7
+ "solana",
8
+ "defi",
9
+ "vault",
10
+ "yield",
11
+ "jlp",
12
+ "jupiter",
13
+ "kamino",
14
+ "pinocchio",
15
+ "anchor",
16
+ "sdk"
17
+ ],
5
18
  "main": "dist/index.js",
6
19
  "types": "dist/index.d.ts",
7
20
  "exports": {
@@ -47,5 +60,8 @@
47
60
  "peerDependencies": {
48
61
  "@solana/spl-token": "^0.4.0",
49
62
  "@solana/web3.js": "^1.95.0"
63
+ },
64
+ "publishConfig": {
65
+ "access": "public"
50
66
  }
51
67
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["../../src/common/buffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AAMvB,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAElE;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,EAAE,CAExD;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE3D;AAMD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,GAAG,IAAI,CAGlE;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,GAClC,IAAI,CAON;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,EAAE,EAAE,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,GACpC,IAAI,CAQN;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAC/B,IAAI,CASN;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAC/B,IAAI,CASN"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"buffer.js","sourceRoot":"","sources":["../../src/common/buffer.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,eAAO,MAAM,YAAY,aAAgB,CAAC;AAE1C,+BAA+B;AAC/B,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC,mCAAmC;AACnC,eAAO,MAAM,gBAAgB,WAAa,CAAC;AAE3C,6CAA6C;AAC7C,eAAO,MAAM,mBAAmB,MAAM,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/common/constants.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC7B,QAAA,YAAY,GAAG,UAAa,CAAC;AAE1C,+BAA+B;AAClB,QAAA,eAAe,GAAG,KAAM,CAAC;AAEtC,mCAAmC;AACtB,QAAA,gBAAgB,GAAG,QAAU,CAAC;AAE3C,6CAA6C;AAChC,QAAA,mBAAmB,GAAG,GAAG,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,OAAO,EACP,OAAO,EACP,OAAO,EACP,MAAM,EACN,QAAQ,EACR,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,mBAAmB,EACnB,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,8BAA8B,EAC9B,sBAAsB,GACvB,MAAM,sBAAsB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,mCAWkB;AAVhB,oGAAA,UAAU,OAAA;AACV,iGAAA,OAAO,OAAA;AACP,iGAAA,OAAO,OAAA;AACP,iGAAA,OAAO,OAAA;AACP,gGAAA,MAAM,OAAA;AACN,kGAAA,QAAQ,OAAA;AACR,6GAAA,mBAAmB,OAAA;AACnB,0GAAA,gBAAgB,OAAA;AAChB,0GAAA,gBAAgB,OAAA;AAChB,0GAAA,gBAAgB,OAAA;AAGlB,yCAKqB;AAJnB,yGAAA,YAAY,OAAA;AACZ,4GAAA,eAAe,OAAA;AACf,6GAAA,gBAAgB,OAAA;AAChB,gHAAA,mBAAmB,OAAA;AAOrB,2DAG8B;AAF5B,oIAAA,8BAA8B,OAAA;AAC9B,4HAAA,sBAAsB,OAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy-interface.d.ts","sourceRoot":"","sources":["../../src/common/strategy-interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,OAAO,CAAC;AAQvB,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,GAAG,EAAE,EAAE,CAAC;IACR,QAAQ,EAAE,EAAE,CAAC;IACb,WAAW,EAAE,EAAE,CAAC;IAChB,WAAW,EAAE,EAAE,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,CAehF;AAOD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,SAAS,CAAC;IACf,MAAM,EAAE,EAAE,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAShE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy-interface.js","sourceRoot":"","sources":["../../src/common/strategy-interface.ts"],"names":[],"mappings":";;AAyBA,wEAeC;AAiBD,wDASC;AAhED,qCAAgE;AAmBhE;;;GAGG;AACH,SAAgB,8BAA8B,CAAC,IAAY;IACzD,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,IAAA,mBAAU,EAAC,IAAI,EAAE,CAAC,CAAC;QAC7B,SAAS,EAAE,IAAA,mBAAU,EAAC,IAAI,EAAE,EAAE,CAAC;QAC/B,GAAG,EAAE,IAAA,gBAAO,EAAC,IAAI,EAAE,EAAE,CAAC;QACtB,QAAQ,EAAE,IAAA,gBAAO,EAAC,IAAI,EAAE,EAAE,CAAC;QAC3B,WAAW,EAAE,IAAA,gBAAO,EAAC,IAAI,EAAE,EAAE,CAAC;QAC9B,WAAW,EAAE,IAAA,gBAAO,EAAC,IAAI,EAAE,EAAE,CAAC;QAC9B,KAAK,EAAE,IAAA,gBAAO,EAAC,IAAI,EAAE,GAAG,CAAC;QACzB,OAAO,EAAE,IAAA,eAAM,EAAC,IAAI,EAAE,GAAG,CAAC;QAC1B,IAAI,EAAE,IAAA,eAAM,EAAC,IAAI,EAAE,GAAG,CAAC;KACxB,CAAC;AACJ,CAAC;AAaD;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,IAAY;IACjD,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,CAAC,MAAM,OAAO,CAAC,CAAC;IACrE,CAAC;IACD,OAAO;QACL,GAAG,EAAE,IAAA,mBAAU,EAAC,IAAI,EAAE,CAAC,CAAC;QACxB,MAAM,EAAE,IAAA,gBAAO,EAAC,IAAI,EAAE,EAAE,CAAC;QACzB,IAAI,EAAE,IAAA,eAAM,EAAC,IAAI,EAAE,EAAE,CAAC;KACvB,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/elemental-lend/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAYhE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAOzD,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CA+B5E;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CASpE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAahE;AAMD,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,SAAS,EACnB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,iBAAiB,CAAC,CAK5B;AAED,wBAAsB,+BAA+B,CACnD,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,SAAS,GACjB,OAAO,CAAC,iBAAiB,CAAC,CAI5B;AAED,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,SAAS,EACd,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,WAAW,CAAC,CAKtB;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,SAAS,EACxB,OAAO,EAAE,SAAS,EAClB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAK7B;AAMD,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,UAAU,EACtB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAQ3C;AAED,wBAAsB,wBAAwB,CAC5C,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,SAAS,EACxB,SAAS,GAAE,SAAsB,GAChC,OAAO,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CASrC;AAMD;;;;;;;;;;GAUG;AACH,wBAAsB,2BAA2B,CAC/C,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,iBAAiB,EAC3B,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,GACxB,OAAO,CAAC,WAAW,EAAE,CAAC,CAoExB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/elemental-lend/accounts.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/elemental-lend/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,eAAO,MAAM,UAAU,WAEtB,CAAC;AAGF,eAAO,MAAM,mBAAmB,qBAAgC,CAAC;AACjE,eAAO,MAAM,aAAa,qBAA0B,CAAC;AACrD,eAAO,MAAM,YAAY,qBAAyB,CAAC;AAGnD,eAAO,MAAM,mBAAmB,qBAAqD,CAAC;AACtF,eAAO,MAAM,iBAAiB,qBAAqD,CAAC;AAEpF,eAAO,MAAM,iBAAiB,qBAAgE,CAAC;AAG/F,eAAO,MAAM,0BAA0B,qBAAoD,CAAC;AAC5F,eAAO,MAAM,gBAAgB,qBAAkD,CAAC;AAChF,eAAO,MAAM,UAAU,qBAAsD,CAAC;AAC9E,eAAO,MAAM,WAAW,qBAAqD,CAAC;AAC9E,eAAO,MAAM,aAAa,qBAAqD,CAAC;AAChF,eAAO,MAAM,iBAAiB,qBAAoD,CAAC;AACnF,eAAO,MAAM,kBAAkB,qBAAsD,CAAC;AACtF,eAAO,MAAM,mBAAmB,qBAAoD,CAAC;AACrF,eAAO,MAAM,oBAAoB,qBAAoD,CAAC;AAEtF,eAAO,MAAM,cAAc,qBAAgE,CAAC;AAE5F,eAAO,MAAM,iBAAiB,qBAAgE,CAAC;AAG/F,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAGpC,eAAO,MAAM,WAAW,IAAS,CAAC;AAGlC,eAAO,MAAM,aAAa,KAAK,CAAC;AAGhC,eAAO,MAAM,oBAAoB,WAA+D,CAAC;AACjG,eAAO,MAAM,gBAAgB,WAA+D,CAAC;AAE7F,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/elemental-lend/constants.ts"],"names":[],"mappings":"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"}