@suilend/sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/core/client.d.ts +101 -0
  2. package/core/client.js +478 -0
  3. package/core/constants.d.ts +2 -0
  4. package/core/constants.js +5 -0
  5. package/core/parsers/deps.d.ts +15 -0
  6. package/core/parsers/deps.js +2 -0
  7. package/core/parsers/lendingMarket.d.ts +115 -0
  8. package/core/parsers/lendingMarket.js +30 -0
  9. package/core/parsers/obligation.d.ts +229 -0
  10. package/core/parsers/obligation.js +99 -0
  11. package/core/parsers/rateLimiter.d.ts +19 -0
  12. package/core/parsers/rateLimiter.js +46 -0
  13. package/core/parsers/reserve.d.ts +162 -0
  14. package/core/parsers/reserve.js +193 -0
  15. package/core/types.d.ts +662 -0
  16. package/core/types.js +123 -0
  17. package/core/utils.d.ts +1 -0
  18. package/core/utils.js +7 -0
  19. package/index.d.ts +1 -0
  20. package/index.js +17 -0
  21. package/mainnet/_generated/_dependencies/source/0x1/ascii/structs.d.ts +82 -0
  22. package/mainnet/_generated/_dependencies/source/0x1/ascii/structs.js +253 -0
  23. package/mainnet/_generated/_dependencies/source/0x1/bit-vector/structs.d.ts +50 -0
  24. package/mainnet/_generated/_dependencies/source/0x1/bit-vector/structs.js +154 -0
  25. package/mainnet/_generated/_dependencies/source/0x1/fixed-point32/structs.d.ts +41 -0
  26. package/mainnet/_generated/_dependencies/source/0x1/fixed-point32/structs.js +124 -0
  27. package/mainnet/_generated/_dependencies/source/0x1/index.d.ts +2 -0
  28. package/mainnet/_generated/_dependencies/source/0x1/index.js +5 -0
  29. package/mainnet/_generated/_dependencies/source/0x1/init.d.ts +2 -0
  30. package/mainnet/_generated/_dependencies/source/0x1/init.js +42 -0
  31. package/mainnet/_generated/_dependencies/source/0x1/option/structs.d.ts +46 -0
  32. package/mainnet/_generated/_dependencies/source/0x1/option/structs.js +152 -0
  33. package/mainnet/_generated/_dependencies/source/0x1/string/structs.d.ts +44 -0
  34. package/mainnet/_generated/_dependencies/source/0x1/string/structs.js +148 -0
  35. package/mainnet/_generated/_dependencies/source/0x1/type-name/structs.d.ts +48 -0
  36. package/mainnet/_generated/_dependencies/source/0x1/type-name/structs.js +125 -0
  37. package/mainnet/_generated/_dependencies/source/0x2/authenticator-state/structs.d.ts +442 -0
  38. package/mainnet/_generated/_dependencies/source/0x2/authenticator-state/structs.js +633 -0
  39. package/mainnet/_generated/_dependencies/source/0x2/bag/structs.d.ts +56 -0
  40. package/mainnet/_generated/_dependencies/source/0x2/bag/structs.js +130 -0
  41. package/mainnet/_generated/_dependencies/source/0x2/balance/structs.d.ts +79 -0
  42. package/mainnet/_generated/_dependencies/source/0x2/balance/structs.js +237 -0
  43. package/mainnet/_generated/_dependencies/source/0x2/bcs/structs.d.ts +44 -0
  44. package/mainnet/_generated/_dependencies/source/0x2/bcs/structs.js +147 -0
  45. package/mainnet/_generated/_dependencies/source/0x2/bls12381/structs.d.ts +155 -0
  46. package/mainnet/_generated/_dependencies/source/0x2/bls12381/structs.js +448 -0
  47. package/mainnet/_generated/_dependencies/source/0x2/borrow/structs.d.ts +104 -0
  48. package/mainnet/_generated/_dependencies/source/0x2/borrow/structs.js +256 -0
  49. package/mainnet/_generated/_dependencies/source/0x2/clock/structs.d.ts +56 -0
  50. package/mainnet/_generated/_dependencies/source/0x2/clock/structs.js +131 -0
  51. package/mainnet/_generated/_dependencies/source/0x2/coin/structs.d.ts +379 -0
  52. package/mainnet/_generated/_dependencies/source/0x2/coin/structs.js +741 -0
  53. package/mainnet/_generated/_dependencies/source/0x2/deny-list/structs.d.ts +178 -0
  54. package/mainnet/_generated/_dependencies/source/0x2/deny-list/structs.js +279 -0
  55. package/mainnet/_generated/_dependencies/source/0x2/display/structs.d.ts +228 -0
  56. package/mainnet/_generated/_dependencies/source/0x2/display/structs.js +375 -0
  57. package/mainnet/_generated/_dependencies/source/0x2/dynamic-field/structs.d.ts +63 -0
  58. package/mainnet/_generated/_dependencies/source/0x2/dynamic-field/structs.js +139 -0
  59. package/mainnet/_generated/_dependencies/source/0x2/dynamic-object-field/structs.d.ts +42 -0
  60. package/mainnet/_generated/_dependencies/source/0x2/dynamic-object-field/structs.js +127 -0
  61. package/mainnet/_generated/_dependencies/source/0x2/groth16/structs.d.ts +186 -0
  62. package/mainnet/_generated/_dependencies/source/0x2/groth16/structs.js +489 -0
  63. package/mainnet/_generated/_dependencies/source/0x2/group-ops/structs.d.ts +44 -0
  64. package/mainnet/_generated/_dependencies/source/0x2/group-ops/structs.js +150 -0
  65. package/mainnet/_generated/_dependencies/source/0x2/index.d.ts +2 -0
  66. package/mainnet/_generated/_dependencies/source/0x2/index.js +5 -0
  67. package/mainnet/_generated/_dependencies/source/0x2/init.d.ts +2 -0
  68. package/mainnet/_generated/_dependencies/source/0x2/init.js +150 -0
  69. package/mainnet/_generated/_dependencies/source/0x2/kiosk/structs.d.ts +565 -0
  70. package/mainnet/_generated/_dependencies/source/0x2/kiosk/structs.js +1233 -0
  71. package/mainnet/_generated/_dependencies/source/0x2/kiosk-extension/structs.d.ts +112 -0
  72. package/mainnet/_generated/_dependencies/source/0x2/kiosk-extension/structs.js +248 -0
  73. package/mainnet/_generated/_dependencies/source/0x2/linked-table/structs.d.ts +144 -0
  74. package/mainnet/_generated/_dependencies/source/0x2/linked-table/structs.js +269 -0
  75. package/mainnet/_generated/_dependencies/source/0x2/object/structs.d.ts +83 -0
  76. package/mainnet/_generated/_dependencies/source/0x2/object/structs.js +232 -0
  77. package/mainnet/_generated/_dependencies/source/0x2/object-bag/structs.d.ts +56 -0
  78. package/mainnet/_generated/_dependencies/source/0x2/object-bag/structs.js +131 -0
  79. package/mainnet/_generated/_dependencies/source/0x2/object-table/structs.d.ts +56 -0
  80. package/mainnet/_generated/_dependencies/source/0x2/object-table/structs.js +133 -0
  81. package/mainnet/_generated/_dependencies/source/0x2/package/structs.d.ts +262 -0
  82. package/mainnet/_generated/_dependencies/source/0x2/package/structs.js +531 -0
  83. package/mainnet/_generated/_dependencies/source/0x2/priority-queue/structs.d.ts +101 -0
  84. package/mainnet/_generated/_dependencies/source/0x2/priority-queue/structs.js +269 -0
  85. package/mainnet/_generated/_dependencies/source/0x2/random/structs.d.ts +136 -0
  86. package/mainnet/_generated/_dependencies/source/0x2/random/structs.js +283 -0
  87. package/mainnet/_generated/_dependencies/source/0x2/sui/structs.d.ts +41 -0
  88. package/mainnet/_generated/_dependencies/source/0x2/sui/structs.js +123 -0
  89. package/mainnet/_generated/_dependencies/source/0x2/table/structs.d.ts +56 -0
  90. package/mainnet/_generated/_dependencies/source/0x2/table/structs.js +133 -0
  91. package/mainnet/_generated/_dependencies/source/0x2/table-vec/structs.d.ts +63 -0
  92. package/mainnet/_generated/_dependencies/source/0x2/table-vec/structs.js +151 -0
  93. package/mainnet/_generated/_dependencies/source/0x2/token/structs.d.ts +424 -0
  94. package/mainnet/_generated/_dependencies/source/0x2/token/structs.js +754 -0
  95. package/mainnet/_generated/_dependencies/source/0x2/transfer/structs.d.ts +52 -0
  96. package/mainnet/_generated/_dependencies/source/0x2/transfer/structs.js +133 -0
  97. package/mainnet/_generated/_dependencies/source/0x2/transfer-policy/structs.d.ts +345 -0
  98. package/mainnet/_generated/_dependencies/source/0x2/transfer-policy/structs.js +746 -0
  99. package/mainnet/_generated/_dependencies/source/0x2/tx-context/structs.d.ts +68 -0
  100. package/mainnet/_generated/_dependencies/source/0x2/tx-context/structs.js +175 -0
  101. package/mainnet/_generated/_dependencies/source/0x2/url/structs.d.ts +48 -0
  102. package/mainnet/_generated/_dependencies/source/0x2/url/structs.js +124 -0
  103. package/mainnet/_generated/_dependencies/source/0x2/vec-map/structs.d.ts +101 -0
  104. package/mainnet/_generated/_dependencies/source/0x2/vec-map/structs.js +267 -0
  105. package/mainnet/_generated/_dependencies/source/0x2/vec-set/structs.d.ts +45 -0
  106. package/mainnet/_generated/_dependencies/source/0x2/vec-set/structs.js +151 -0
  107. package/mainnet/_generated/_dependencies/source/0x2/versioned/structs.d.ts +104 -0
  108. package/mainnet/_generated/_dependencies/source/0x2/versioned/structs.js +246 -0
  109. package/mainnet/_generated/_dependencies/source/0x2/zklogin-verified-id/structs.d.ts +105 -0
  110. package/mainnet/_generated/_dependencies/source/0x2/zklogin-verified-id/structs.js +159 -0
  111. package/mainnet/_generated/_dependencies/source/0x2/zklogin-verified-issuer/structs.d.ts +69 -0
  112. package/mainnet/_generated/_dependencies/source/0x2/zklogin-verified-issuer/structs.js +141 -0
  113. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/bytes20/structs.d.ts +44 -0
  114. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/bytes20/structs.js +149 -0
  115. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/bytes32/structs.d.ts +44 -0
  116. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/bytes32/structs.js +149 -0
  117. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/consumed-vaas/structs.d.ts +72 -0
  118. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/consumed-vaas/structs.js +151 -0
  119. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/cursor/structs.d.ts +45 -0
  120. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/cursor/structs.js +151 -0
  121. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/emitter/structs.d.ts +140 -0
  122. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/emitter/structs.js +352 -0
  123. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/external-address/structs.d.ts +52 -0
  124. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/external-address/structs.js +126 -0
  125. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/fee-collector/structs.d.ts +58 -0
  126. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/fee-collector/structs.js +157 -0
  127. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/governance-message/structs.d.ts +158 -0
  128. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/governance-message/structs.js +299 -0
  129. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/guardian/structs.d.ts +52 -0
  130. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/guardian/structs.js +126 -0
  131. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/guardian-set/structs.d.ts +75 -0
  132. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/guardian-set/structs.js +162 -0
  133. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/guardian-signature/structs.d.ts +80 -0
  134. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/guardian-signature/structs.js +144 -0
  135. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/index.d.ts +2 -0
  136. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/index.js +5 -0
  137. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/init.d.ts +2 -0
  138. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/init.js +91 -0
  139. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/migrate/structs.d.ts +46 -0
  140. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/migrate/structs.js +126 -0
  141. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/package-utils/structs.d.ts +177 -0
  142. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/package-utils/structs.js +463 -0
  143. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/publish-message/structs.d.ts +141 -0
  144. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/publish-message/structs.js +308 -0
  145. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/set/structs.d.ts +101 -0
  146. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/set/structs.js +260 -0
  147. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/set-fee/structs.d.ts +79 -0
  148. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/set-fee/structs.js +235 -0
  149. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/setup/structs.d.ts +50 -0
  150. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/setup/structs.js +126 -0
  151. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/state/structs.d.ts +269 -0
  152. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/state/structs.js +314 -0
  153. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/transfer-fee/structs.d.ts +85 -0
  154. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/transfer-fee/structs.js +244 -0
  155. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/update-guardian-set/structs.d.ts +145 -0
  156. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/update-guardian-set/structs.js +376 -0
  157. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/upgrade-contract/structs.d.ts +143 -0
  158. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/upgrade-contract/structs.js +353 -0
  159. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/vaa/structs.d.ts +122 -0
  160. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/vaa/structs.js +198 -0
  161. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/version-control/structs.d.ts +79 -0
  162. package/mainnet/_generated/_dependencies/source/0x5306f64e312b581766351c07af79c72fcb1cd25147157fdc2f8ad76de9a3fb6a/version-control/structs.js +235 -0
  163. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/batch-price-attestation/structs.d.ts +279 -0
  164. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/batch-price-attestation/structs.js +302 -0
  165. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/contract-upgrade/structs.d.ts +105 -0
  166. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/contract-upgrade/structs.js +243 -0
  167. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/data-source/structs.d.ts +66 -0
  168. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/data-source/structs.js +132 -0
  169. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/event/structs.d.ts +200 -0
  170. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/event/structs.js +242 -0
  171. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/governance/structs.d.ts +67 -0
  172. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/governance/structs.js +162 -0
  173. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/governance-action/structs.d.ts +41 -0
  174. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/governance-action/structs.js +125 -0
  175. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/governance-instruction/structs.d.ts +71 -0
  176. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/governance-instruction/structs.js +168 -0
  177. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/hot-potato-vector/structs.d.ts +45 -0
  178. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/hot-potato-vector/structs.js +151 -0
  179. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.d.ts +47 -0
  180. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.js +130 -0
  181. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.d.ts +2 -0
  182. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js +5 -0
  183. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/init.d.ts +2 -0
  184. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/init.js +86 -0
  185. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/migrate/structs.d.ts +46 -0
  186. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/migrate/structs.js +126 -0
  187. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.d.ts +84 -0
  188. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.js +144 -0
  189. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.d.ts +153 -0
  190. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.js +139 -0
  191. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +44 -0
  192. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js +149 -0
  193. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.d.ts +351 -0
  194. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.js +255 -0
  195. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-status/structs.d.ts +41 -0
  196. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-status/structs.js +125 -0
  197. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set/structs.d.ts +110 -0
  198. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set/structs.js +267 -0
  199. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-data-sources/structs.d.ts +75 -0
  200. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-data-sources/structs.js +150 -0
  201. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-fee-recipient/structs.d.ts +41 -0
  202. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-fee-recipient/structs.js +128 -0
  203. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-governance-data-source/structs.d.ts +72 -0
  204. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-governance-data-source/structs.js +138 -0
  205. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-stale-price-threshold/structs.d.ts +41 -0
  206. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-stale-price-threshold/structs.js +125 -0
  207. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-update-fee/structs.d.ts +47 -0
  208. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/set-update-fee/structs.js +131 -0
  209. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/setup/structs.d.ts +50 -0
  210. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/setup/structs.js +126 -0
  211. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/state/structs.d.ts +269 -0
  212. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/state/structs.js +394 -0
  213. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/version-control/structs.d.ts +117 -0
  214. package/mainnet/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/version-control/structs.js +345 -0
  215. package/mainnet/_generated/_framework/init-source.d.ts +1 -0
  216. package/mainnet/_generated/_framework/init-source.js +45 -0
  217. package/mainnet/_generated/_framework/loader.d.ts +17 -0
  218. package/mainnet/_generated/_framework/loader.js +46 -0
  219. package/mainnet/_generated/_framework/reified.d.ts +100 -0
  220. package/mainnet/_generated/_framework/reified.js +263 -0
  221. package/mainnet/_generated/_framework/util.d.ts +53 -0
  222. package/mainnet/_generated/_framework/util.js +250 -0
  223. package/mainnet/_generated/suilend/cell/functions.d.ts +10 -0
  224. package/mainnet/_generated/suilend/cell/functions.js +37 -0
  225. package/mainnet/_generated/suilend/cell/structs.d.ts +49 -0
  226. package/mainnet/_generated/suilend/cell/structs.js +128 -0
  227. package/mainnet/_generated/suilend/decimal/functions.d.ts +75 -0
  228. package/mainnet/_generated/suilend/decimal/functions.js +152 -0
  229. package/mainnet/_generated/suilend/decimal/structs.d.ts +41 -0
  230. package/mainnet/_generated/suilend/decimal/structs.js +125 -0
  231. package/mainnet/_generated/suilend/index.d.ts +2 -0
  232. package/mainnet/_generated/suilend/index.js +5 -0
  233. package/mainnet/_generated/suilend/init.d.ts +2 -0
  234. package/mainnet/_generated/suilend/init.js +79 -0
  235. package/mainnet/_generated/suilend/launch/functions.d.ts +3 -0
  236. package/mainnet/_generated/suilend/launch/functions.js +12 -0
  237. package/mainnet/_generated/suilend/launch/structs.d.ts +41 -0
  238. package/mainnet/_generated/suilend/launch/structs.js +125 -0
  239. package/mainnet/_generated/suilend/lending-market/functions.d.ts +198 -0
  240. package/mainnet/_generated/suilend/lending-market/functions.js +386 -0
  241. package/mainnet/_generated/suilend/lending-market/structs.d.ts +1495 -0
  242. package/mainnet/_generated/suilend/lending-market/structs.js +1992 -0
  243. package/mainnet/_generated/suilend/lending-market-registry/functions.d.ts +4 -0
  244. package/mainnet/_generated/suilend/lending-market-registry/functions.js +20 -0
  245. package/mainnet/_generated/suilend/lending-market-registry/structs.d.ts +123 -0
  246. package/mainnet/_generated/suilend/lending-market-registry/structs.js +274 -0
  247. package/mainnet/_generated/suilend/liquidity-mining/functions.d.ts +68 -0
  248. package/mainnet/_generated/suilend/liquidity-mining/functions.js +149 -0
  249. package/mainnet/_generated/suilend/liquidity-mining/structs.d.ts +467 -0
  250. package/mainnet/_generated/suilend/liquidity-mining/structs.js +697 -0
  251. package/mainnet/_generated/suilend/obligation/functions.d.ts +132 -0
  252. package/mainnet/_generated/suilend/obligation/functions.js +286 -0
  253. package/mainnet/_generated/suilend/obligation/structs.d.ts +1100 -0
  254. package/mainnet/_generated/suilend/obligation/structs.js +994 -0
  255. package/mainnet/_generated/suilend/oracles/functions.d.ts +8 -0
  256. package/mainnet/_generated/suilend/oracles/functions.js +19 -0
  257. package/mainnet/_generated/suilend/rate-limiter/functions.d.ts +33 -0
  258. package/mainnet/_generated/suilend/rate-limiter/functions.js +54 -0
  259. package/mainnet/_generated/suilend/rate-limiter/structs.d.ts +132 -0
  260. package/mainnet/_generated/suilend/rate-limiter/structs.js +260 -0
  261. package/mainnet/_generated/suilend/reserve/functions.d.ts +138 -0
  262. package/mainnet/_generated/suilend/reserve/functions.js +356 -0
  263. package/mainnet/_generated/suilend/reserve/structs.d.ts +1064 -0
  264. package/mainnet/_generated/suilend/reserve/structs.js +1023 -0
  265. package/mainnet/_generated/suilend/reserve-config/functions.d.ts +151 -0
  266. package/mainnet/_generated/suilend/reserve-config/functions.js +330 -0
  267. package/mainnet/_generated/suilend/reserve-config/structs.d.ts +233 -0
  268. package/mainnet/_generated/suilend/reserve-config/structs.js +368 -0
  269. package/mainnet/_generated/suilend/suilend/structs.d.ts +41 -0
  270. package/mainnet/_generated/suilend/suilend/structs.js +125 -0
  271. package/mainnet/client.d.ts +19 -0
  272. package/mainnet/client.js +108 -0
  273. package/mainnet/constants.d.ts +1 -0
  274. package/mainnet/constants.js +17 -0
  275. package/mainnet/index.d.ts +2 -0
  276. package/mainnet/index.js +18 -0
  277. package/mainnet/parsers/lendingMarket.d.ts +115 -0
  278. package/mainnet/parsers/lendingMarket.js +41 -0
  279. package/mainnet/parsers/obligation.d.ts +10 -0
  280. package/mainnet/parsers/obligation.js +30 -0
  281. package/mainnet/parsers/rateLimiter.d.ts +18 -0
  282. package/mainnet/parsers/rateLimiter.js +32 -0
  283. package/mainnet/parsers/reserve.d.ts +162 -0
  284. package/mainnet/parsers/reserve.js +38 -0
  285. package/mainnet/types.d.ts +1 -0
  286. package/mainnet/types.js +17 -0
  287. package/mainnet/utils/events.d.ts +144 -0
  288. package/mainnet/utils/events.js +115 -0
  289. package/mainnet/utils/index.d.ts +4 -0
  290. package/mainnet/utils/index.js +20 -0
  291. package/mainnet/utils/obligation.d.ts +25 -0
  292. package/mainnet/utils/obligation.js +299 -0
  293. package/mainnet/utils/simulate.d.ts +18 -0
  294. package/mainnet/utils/simulate.js +284 -0
  295. package/mainnet/utils/utils.d.ts +79 -0
  296. package/mainnet/utils/utils.js +157 -0
  297. package/mainnet/utils.d.ts +1 -0
  298. package/mainnet/utils.js +17 -0
  299. package/package.json +1 -0
  300. package/pyth-sdk/SuiPriceServiceConnection.d.ts +14 -0
  301. package/pyth-sdk/SuiPriceServiceConnection.js +32 -0
  302. package/pyth-sdk/client.d.ts +74 -0
  303. package/pyth-sdk/client.js +322 -0
  304. package/pyth-sdk/index.d.ts +4 -0
  305. package/pyth-sdk/index.js +10 -0
@@ -0,0 +1,115 @@
1
+ import { CoinMetadata } from "@mysten/sui.js/client";
2
+ import BigNumber from "bignumber.js";
3
+ import { Deps } from "./deps";
4
+ export type ParsedLendingMarket = ReturnType<typeof parseLendingMarket>;
5
+ export declare const parseLendingMarket: ({ LendingMarket, Reserve, PoolRewardManager, PoolReward, simulate, RateLimiter, }: Pick<Deps, "LendingMarket" | "Reserve" | "PoolRewardManager" | "PoolReward" | "simulate" | "RateLimiter">, lendingMarket: any, reserves: any[], coinMetadataMap: Record<string, CoinMetadata>, currentTime: number) => {
6
+ reserves: {
7
+ config: {
8
+ $typeName: any;
9
+ openLtvPct: any;
10
+ closeLtvPct: any;
11
+ maxCloseLtvPct: any;
12
+ borrowWeightBps: number;
13
+ depositLimit: BigNumber;
14
+ borrowLimit: BigNumber;
15
+ liquidationBonusBps: number;
16
+ maxLiquidationBonusBps: number;
17
+ depositLimitUsd: BigNumber;
18
+ borrowLimitUsd: BigNumber;
19
+ borrowFeeBps: number;
20
+ spreadFeeBps: number;
21
+ protocolLiquidationFeeBps: number;
22
+ isolated: any;
23
+ openAttributedBorrowLimitUsd: number;
24
+ closeAttributedBorrowLimitUsd: number;
25
+ interestRate: {
26
+ id: string;
27
+ utilPercent: BigNumber;
28
+ aprPercent: BigNumber;
29
+ }[];
30
+ };
31
+ $typeName: any;
32
+ id: any;
33
+ arrayIndex: any;
34
+ coinType: string;
35
+ mintDecimals: any;
36
+ priceIdentifier: string;
37
+ price: BigNumber;
38
+ smoothedPrice: BigNumber;
39
+ minPrice: BigNumber;
40
+ maxPrice: BigNumber;
41
+ priceLastUpdateTimestampS: any;
42
+ availableAmount: BigNumber;
43
+ ctokenSupply: BigNumber;
44
+ borrowedAmount: BigNumber;
45
+ cumulativeBorrowRate: BigNumber;
46
+ interestLastUpdateTimestampS: any;
47
+ unclaimedSpreadFees: BigNumber;
48
+ attributedBorrowValue: BigNumber;
49
+ depositsPoolRewardManager: {
50
+ $typeName: any;
51
+ id: any;
52
+ totalShares: any;
53
+ poolRewards: {
54
+ $typeName: any;
55
+ id: any;
56
+ rewardIndex: number;
57
+ poolRewardManagerId: any;
58
+ coinType: string;
59
+ startTimeMs: number;
60
+ endTimeMs: number;
61
+ totalRewards: BigNumber;
62
+ allocatedRewards: BigNumber;
63
+ cumulativeRewardsPerShare: BigNumber;
64
+ numUserRewardManagers: any;
65
+ mintDecimals: number;
66
+ symbol: string;
67
+ }[];
68
+ lastUpdateTimeMs: any;
69
+ };
70
+ borrowsPoolRewardManager: {
71
+ $typeName: any;
72
+ id: any;
73
+ totalShares: any;
74
+ poolRewards: {
75
+ $typeName: any;
76
+ id: any;
77
+ rewardIndex: number;
78
+ poolRewardManagerId: any;
79
+ coinType: string;
80
+ startTimeMs: number;
81
+ endTimeMs: number;
82
+ totalRewards: BigNumber;
83
+ allocatedRewards: BigNumber;
84
+ cumulativeRewardsPerShare: BigNumber;
85
+ numUserRewardManagers: any;
86
+ mintDecimals: number;
87
+ symbol: string;
88
+ }[];
89
+ lastUpdateTimeMs: any;
90
+ };
91
+ totalDeposits: BigNumber;
92
+ cTokenExchangeRate: BigNumber;
93
+ borrowAprPercent: BigNumber;
94
+ depositAprPercent: BigNumber;
95
+ utilizationPercent: BigNumber;
96
+ symbol: string;
97
+ name: string;
98
+ iconUrl: string | null | undefined;
99
+ description: string;
100
+ }[];
101
+ rateLimiter: {
102
+ config: {
103
+ windowDuration: any;
104
+ maxOutflow: any;
105
+ };
106
+ $typeName: any;
107
+ prevQty: any;
108
+ windowStart: any;
109
+ curQty: any;
110
+ remainingOutflow: BigNumber;
111
+ };
112
+ totalSupplyUsd: BigNumber;
113
+ totalBorrowUsd: BigNumber;
114
+ tvlUsd: BigNumber;
115
+ };
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseLendingMarket = void 0;
7
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
+ const rateLimiter_1 = require("./rateLimiter");
9
+ const reserve_1 = require("./reserve");
10
+ const parseLendingMarket = ({ LendingMarket, Reserve, PoolRewardManager, PoolReward, simulate, RateLimiter, }, lendingMarket, reserves, coinMetadataMap, currentTime) => {
11
+ const parsedReserves = reserves.map((reserve) => (0, reserve_1.parseReserve)({ Reserve, PoolRewardManager, PoolReward, simulate }, reserve, coinMetadataMap));
12
+ const parsedRateLimiter = (0, rateLimiter_1.parseRateLimiter)({ RateLimiter }, lendingMarket.rateLimiter, currentTime);
13
+ // Custom
14
+ let totalSupplyUsd = new bignumber_js_1.default(0);
15
+ let totalBorrowUsd = new bignumber_js_1.default(0);
16
+ let tvlUsd = new bignumber_js_1.default(0);
17
+ parsedReserves.forEach((properties) => {
18
+ totalSupplyUsd = totalSupplyUsd.plus(properties.totalDeposits.times(properties.price));
19
+ totalBorrowUsd = totalBorrowUsd.plus(properties.borrowedAmount.times(properties.price));
20
+ tvlUsd = tvlUsd.plus(properties.availableAmount.times(properties.price));
21
+ });
22
+ return {
23
+ reserves: parsedReserves,
24
+ rateLimiter: parsedRateLimiter,
25
+ totalSupplyUsd,
26
+ totalBorrowUsd,
27
+ tvlUsd,
28
+ };
29
+ };
30
+ exports.parseLendingMarket = parseLendingMarket;
@@ -0,0 +1,229 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { Deps } from "./deps";
3
+ import { ParsedReserve } from "./reserve";
4
+ export type ParsedObligation = ReturnType<typeof parseObligation>;
5
+ export type ParsedPosition = ParsedObligation["deposits"][0] | ParsedObligation["borrows"][0];
6
+ export declare const parseObligation: ({ Obligation }: Pick<Deps, "Obligation">, obligation: any, parsedReserveMap: {
7
+ [coinType: string]: ParsedReserve;
8
+ }) => {
9
+ id: any;
10
+ totalSupplyUsd: BigNumber;
11
+ totalBorrowUsd: BigNumber;
12
+ totalWeightedBorrowUsd: BigNumber;
13
+ netValueUsd: BigNumber;
14
+ borrowLimit: BigNumber;
15
+ unhealthyBorrowValueUsd: BigNumber;
16
+ positionCount: number;
17
+ deposits: {
18
+ coinType: string;
19
+ reserveArrayIndex: any;
20
+ userRewardManagerIndex: number;
21
+ depositedAmount: BigNumber;
22
+ depositedAmountUsd: BigNumber;
23
+ userRewardManager: any;
24
+ reserve: {
25
+ config: {
26
+ $typeName: any;
27
+ openLtvPct: any;
28
+ closeLtvPct: any;
29
+ maxCloseLtvPct: any;
30
+ borrowWeightBps: number;
31
+ depositLimit: BigNumber;
32
+ borrowLimit: BigNumber;
33
+ liquidationBonusBps: number;
34
+ maxLiquidationBonusBps: number;
35
+ depositLimitUsd: BigNumber;
36
+ borrowLimitUsd: BigNumber;
37
+ borrowFeeBps: number;
38
+ spreadFeeBps: number;
39
+ protocolLiquidationFeeBps: number;
40
+ isolated: any;
41
+ openAttributedBorrowLimitUsd: number;
42
+ closeAttributedBorrowLimitUsd: number;
43
+ interestRate: {
44
+ id: string;
45
+ utilPercent: BigNumber;
46
+ aprPercent: BigNumber;
47
+ }[];
48
+ };
49
+ $typeName: any;
50
+ id: any;
51
+ arrayIndex: any;
52
+ coinType: string;
53
+ mintDecimals: any;
54
+ priceIdentifier: string;
55
+ price: BigNumber;
56
+ smoothedPrice: BigNumber;
57
+ minPrice: BigNumber;
58
+ maxPrice: BigNumber;
59
+ priceLastUpdateTimestampS: any;
60
+ availableAmount: BigNumber;
61
+ ctokenSupply: BigNumber;
62
+ borrowedAmount: BigNumber;
63
+ cumulativeBorrowRate: BigNumber;
64
+ interestLastUpdateTimestampS: any;
65
+ unclaimedSpreadFees: BigNumber;
66
+ attributedBorrowValue: BigNumber;
67
+ depositsPoolRewardManager: {
68
+ $typeName: any;
69
+ id: any;
70
+ totalShares: any;
71
+ poolRewards: {
72
+ $typeName: any;
73
+ id: any;
74
+ rewardIndex: number;
75
+ poolRewardManagerId: any;
76
+ coinType: string;
77
+ startTimeMs: number;
78
+ endTimeMs: number;
79
+ totalRewards: BigNumber;
80
+ allocatedRewards: BigNumber;
81
+ cumulativeRewardsPerShare: BigNumber;
82
+ numUserRewardManagers: any;
83
+ mintDecimals: number;
84
+ symbol: string;
85
+ }[];
86
+ lastUpdateTimeMs: any;
87
+ };
88
+ borrowsPoolRewardManager: {
89
+ $typeName: any;
90
+ id: any;
91
+ totalShares: any;
92
+ poolRewards: {
93
+ $typeName: any;
94
+ id: any;
95
+ rewardIndex: number;
96
+ poolRewardManagerId: any;
97
+ coinType: string;
98
+ startTimeMs: number;
99
+ endTimeMs: number;
100
+ totalRewards: BigNumber;
101
+ allocatedRewards: BigNumber;
102
+ cumulativeRewardsPerShare: BigNumber;
103
+ numUserRewardManagers: any;
104
+ mintDecimals: number;
105
+ symbol: string;
106
+ }[];
107
+ lastUpdateTimeMs: any;
108
+ };
109
+ totalDeposits: BigNumber;
110
+ cTokenExchangeRate: BigNumber;
111
+ borrowAprPercent: BigNumber;
112
+ depositAprPercent: BigNumber;
113
+ utilizationPercent: BigNumber;
114
+ symbol: string;
115
+ name: string;
116
+ iconUrl: string | null | undefined;
117
+ description: string;
118
+ };
119
+ original: any;
120
+ }[];
121
+ borrows: {
122
+ coinType: string;
123
+ reserveArrayIndex: any;
124
+ userRewardManagerIndex: number;
125
+ borrowedAmount: BigNumber;
126
+ borrowedAmountUsd: BigNumber;
127
+ userRewardManager: any;
128
+ reserve: {
129
+ config: {
130
+ $typeName: any;
131
+ openLtvPct: any;
132
+ closeLtvPct: any;
133
+ maxCloseLtvPct: any;
134
+ borrowWeightBps: number;
135
+ depositLimit: BigNumber;
136
+ borrowLimit: BigNumber;
137
+ liquidationBonusBps: number;
138
+ maxLiquidationBonusBps: number;
139
+ depositLimitUsd: BigNumber;
140
+ borrowLimitUsd: BigNumber;
141
+ borrowFeeBps: number;
142
+ spreadFeeBps: number;
143
+ protocolLiquidationFeeBps: number;
144
+ isolated: any;
145
+ openAttributedBorrowLimitUsd: number;
146
+ closeAttributedBorrowLimitUsd: number;
147
+ interestRate: {
148
+ id: string;
149
+ utilPercent: BigNumber;
150
+ aprPercent: BigNumber;
151
+ }[];
152
+ };
153
+ $typeName: any;
154
+ id: any;
155
+ arrayIndex: any;
156
+ coinType: string;
157
+ mintDecimals: any;
158
+ priceIdentifier: string;
159
+ price: BigNumber;
160
+ smoothedPrice: BigNumber;
161
+ minPrice: BigNumber;
162
+ maxPrice: BigNumber;
163
+ priceLastUpdateTimestampS: any;
164
+ availableAmount: BigNumber;
165
+ ctokenSupply: BigNumber;
166
+ borrowedAmount: BigNumber;
167
+ cumulativeBorrowRate: BigNumber;
168
+ interestLastUpdateTimestampS: any;
169
+ unclaimedSpreadFees: BigNumber;
170
+ attributedBorrowValue: BigNumber;
171
+ depositsPoolRewardManager: {
172
+ $typeName: any;
173
+ id: any;
174
+ totalShares: any;
175
+ poolRewards: {
176
+ $typeName: any;
177
+ id: any;
178
+ rewardIndex: number;
179
+ poolRewardManagerId: any;
180
+ coinType: string;
181
+ startTimeMs: number;
182
+ endTimeMs: number;
183
+ totalRewards: BigNumber;
184
+ allocatedRewards: BigNumber;
185
+ cumulativeRewardsPerShare: BigNumber;
186
+ numUserRewardManagers: any;
187
+ mintDecimals: number;
188
+ symbol: string;
189
+ }[];
190
+ lastUpdateTimeMs: any;
191
+ };
192
+ borrowsPoolRewardManager: {
193
+ $typeName: any;
194
+ id: any;
195
+ totalShares: any;
196
+ poolRewards: {
197
+ $typeName: any;
198
+ id: any;
199
+ rewardIndex: number;
200
+ poolRewardManagerId: any;
201
+ coinType: string;
202
+ startTimeMs: number;
203
+ endTimeMs: number;
204
+ totalRewards: BigNumber;
205
+ allocatedRewards: BigNumber;
206
+ cumulativeRewardsPerShare: BigNumber;
207
+ numUserRewardManagers: any;
208
+ mintDecimals: number;
209
+ symbol: string;
210
+ }[];
211
+ lastUpdateTimeMs: any;
212
+ };
213
+ totalDeposits: BigNumber;
214
+ cTokenExchangeRate: BigNumber;
215
+ borrowAprPercent: BigNumber;
216
+ depositAprPercent: BigNumber;
217
+ utilizationPercent: BigNumber;
218
+ symbol: string;
219
+ name: string;
220
+ iconUrl: string | null | undefined;
221
+ description: string;
222
+ };
223
+ original: any;
224
+ }[];
225
+ minPriceBorrowLimit: BigNumber;
226
+ maxPriceTotalWeightedBorrowUsd: BigNumber;
227
+ weightedConservativeBorrowUtilizationPercent: BigNumber;
228
+ original: any;
229
+ };
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseObligation = void 0;
7
+ const utils_1 = require("@mysten/sui.js/utils");
8
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
+ const constants_1 = require("../constants");
10
+ const parseObligation = ({ Obligation }, obligation, parsedReserveMap) => {
11
+ let totalSupplyUsd = new bignumber_js_1.default(0);
12
+ let totalBorrowUsd = new bignumber_js_1.default(0);
13
+ let borrowLimit = new bignumber_js_1.default(0);
14
+ let minPriceBorrowLimit = new bignumber_js_1.default(0);
15
+ let unhealthyBorrowValueUsd = new bignumber_js_1.default(0);
16
+ let totalWeightedBorrowUsd = new bignumber_js_1.default(0);
17
+ let maxPriceTotalWeightedBorrowUsd = new bignumber_js_1.default(0);
18
+ const positionCount = obligation.deposits.filter((pos) => pos.depositedCtokenAmount.toString() !== "0").length +
19
+ obligation.borrows.filter((pos) => pos.borrowedAmount.value.toString() !== "0").length;
20
+ const deposits = obligation.deposits.map((deposit) => {
21
+ const coinType = (0, utils_1.normalizeStructTag)(deposit.coinType.name);
22
+ const reserve = parsedReserveMap[coinType];
23
+ if (!reserve)
24
+ throw new Error(`Reserve with coinType ${deposit.coinType.name} not found`);
25
+ const depositedCtokenAmount = new bignumber_js_1.default(deposit.depositedCtokenAmount.toString()).div(10 ** reserve.mintDecimals);
26
+ const depositedAmount = depositedCtokenAmount.times(reserve.cTokenExchangeRate);
27
+ const depositedAmountUsd = depositedAmount.times(reserve.price);
28
+ totalSupplyUsd = totalSupplyUsd.plus(depositedAmountUsd);
29
+ minPriceBorrowLimit = minPriceBorrowLimit.plus(depositedAmount
30
+ .times(reserve.minPrice)
31
+ .times(reserve.config.openLtvPct / 100));
32
+ borrowLimit = borrowLimit.plus(depositedAmountUsd.times(reserve.config.openLtvPct / 100));
33
+ unhealthyBorrowValueUsd = unhealthyBorrowValueUsd.plus(depositedAmountUsd.times(reserve.config.closeLtvPct / 100));
34
+ const userRewardManagerIndex = Number(deposit.userRewardManagerIndex.toString());
35
+ const userRewardManager = obligation.userRewardManagers[userRewardManagerIndex];
36
+ const reserveArrayIndex = deposit.reserveArrayIndex;
37
+ return {
38
+ coinType,
39
+ reserveArrayIndex,
40
+ userRewardManagerIndex,
41
+ depositedAmount,
42
+ depositedAmountUsd,
43
+ userRewardManager,
44
+ reserve,
45
+ original: obligation,
46
+ };
47
+ });
48
+ const borrows = obligation.borrows.map((borrow) => {
49
+ const coinType = (0, utils_1.normalizeStructTag)(borrow.coinType.name);
50
+ const reserve = parsedReserveMap[coinType];
51
+ if (!reserve)
52
+ throw new Error(`Reserve with coinType ${borrow.coinType.name} not found`);
53
+ const reserveCumulativeBorrowRate = new bignumber_js_1.default(borrow.cumulativeBorrowRate.value.toString()).div(constants_1.WAD.toString());
54
+ const borrowedAmountInitial = new bignumber_js_1.default(borrow.borrowedAmount.value.toString())
55
+ .div(constants_1.WAD.toString())
56
+ .div(10 ** reserve.mintDecimals);
57
+ const borrowInterestIndex = reserve.cumulativeBorrowRate.div(reserveCumulativeBorrowRate);
58
+ const borrowedAmount = borrowedAmountInitial.times(borrowInterestIndex);
59
+ const borrowedAmountUsd = borrowedAmount.times(reserve.price);
60
+ const borrowWeight = reserve.config.borrowWeightBps / 10000;
61
+ totalBorrowUsd = totalBorrowUsd.plus(borrowedAmountUsd);
62
+ totalWeightedBorrowUsd = totalWeightedBorrowUsd.plus(borrowedAmountUsd.times(borrowWeight));
63
+ maxPriceTotalWeightedBorrowUsd = maxPriceTotalWeightedBorrowUsd.plus(borrowedAmount.times(reserve.maxPrice).times(borrowWeight));
64
+ const userRewardManagerIndex = Number(borrow.userRewardManagerIndex.toString());
65
+ const userRewardManager = obligation.userRewardManagers[userRewardManagerIndex];
66
+ const reserveArrayIndex = borrow.reserveArrayIndex;
67
+ return {
68
+ coinType,
69
+ reserveArrayIndex,
70
+ userRewardManagerIndex,
71
+ borrowedAmount,
72
+ borrowedAmountUsd,
73
+ userRewardManager,
74
+ reserve,
75
+ original: obligation,
76
+ };
77
+ });
78
+ const netValueUsd = totalSupplyUsd.minus(totalBorrowUsd);
79
+ const weightedConservativeBorrowUtilizationPercent = minPriceBorrowLimit.isZero()
80
+ ? new bignumber_js_1.default(0)
81
+ : maxPriceTotalWeightedBorrowUsd.div(minPriceBorrowLimit).times(100);
82
+ return {
83
+ id: obligation.id,
84
+ totalSupplyUsd,
85
+ totalBorrowUsd,
86
+ totalWeightedBorrowUsd,
87
+ netValueUsd,
88
+ borrowLimit,
89
+ unhealthyBorrowValueUsd,
90
+ positionCount,
91
+ deposits,
92
+ borrows,
93
+ minPriceBorrowLimit,
94
+ maxPriceTotalWeightedBorrowUsd,
95
+ weightedConservativeBorrowUtilizationPercent,
96
+ original: obligation,
97
+ };
98
+ };
99
+ exports.parseObligation = parseObligation;
@@ -0,0 +1,19 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { Deps } from "./deps";
3
+ export type ParsedRateLimiter = ReturnType<typeof parseRateLimiter>;
4
+ export type ParsedRateLimiterConfig = ReturnType<typeof parseRateLimiterConfig>;
5
+ export declare const parseRateLimiter: ({ RateLimiter }: Pick<Deps, "RateLimiter">, rateLimiter: any, currentTime: number) => {
6
+ config: {
7
+ windowDuration: any;
8
+ maxOutflow: any;
9
+ };
10
+ $typeName: any;
11
+ prevQty: any;
12
+ windowStart: any;
13
+ curQty: any;
14
+ remainingOutflow: BigNumber;
15
+ };
16
+ export declare const parseRateLimiterConfig: ({ RateLimiter }: Pick<Deps, "RateLimiter">, rateLimiter: any) => {
17
+ windowDuration: any;
18
+ maxOutflow: any;
19
+ };
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseRateLimiterConfig = exports.parseRateLimiter = void 0;
7
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
+ const parseRateLimiter = ({ RateLimiter }, rateLimiter, currentTime) => {
9
+ const config = (0, exports.parseRateLimiterConfig)({ RateLimiter }, rateLimiter);
10
+ const $typeName = rateLimiter.$typeName;
11
+ const prevQty = rateLimiter.prevQty.value;
12
+ const windowStart = rateLimiter.windowStart;
13
+ const curQty = rateLimiter.curQty.value;
14
+ // Custom
15
+ const prevWeight = new bignumber_js_1.default(config.windowDuration.toString())
16
+ .minus((BigInt(currentTime) - windowStart + BigInt(1)).toString())
17
+ .div(config.windowDuration.toString());
18
+ const currentOutflow = prevWeight
19
+ .times(new bignumber_js_1.default(prevQty.toString()))
20
+ .plus(new bignumber_js_1.default(curQty.toString()))
21
+ .div(10 ** 18);
22
+ const remainingOutflow = currentOutflow.gt(config.maxOutflow.toString())
23
+ ? new bignumber_js_1.default(0)
24
+ : new bignumber_js_1.default(config.maxOutflow.toString()).minus(currentOutflow);
25
+ return {
26
+ config,
27
+ $typeName,
28
+ prevQty,
29
+ windowStart,
30
+ curQty,
31
+ remainingOutflow,
32
+ };
33
+ };
34
+ exports.parseRateLimiter = parseRateLimiter;
35
+ const parseRateLimiterConfig = ({ RateLimiter }, rateLimiter) => {
36
+ const config = rateLimiter.config;
37
+ if (!config)
38
+ throw new Error("Rate limiter config not found");
39
+ const windowDuration = config.windowDuration;
40
+ const maxOutflow = config.maxOutflow;
41
+ return {
42
+ windowDuration,
43
+ maxOutflow,
44
+ };
45
+ };
46
+ exports.parseRateLimiterConfig = parseRateLimiterConfig;