@xyo-network/uniswap-crypto-market-plugin 2.99.6 → 3.0.1

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 (268) hide show
  1. package/dist/neutral/index.d.ts +107 -5
  2. package/dist/neutral/index.mjs +1 -1
  3. package/dist/neutral/index.mjs.map +1 -1
  4. package/package.json +21 -40
  5. package/src/index.ts +1 -1
  6. package/src/lib/Ethers/UniSwap3Pair.ts +1 -1
  7. package/xy.config.ts +4 -5
  8. package/dist/browser/Config.d.cts +0 -7
  9. package/dist/browser/Config.d.cts.map +0 -1
  10. package/dist/browser/Config.d.mts +0 -7
  11. package/dist/browser/Config.d.mts.map +0 -1
  12. package/dist/browser/Config.d.ts +0 -7
  13. package/dist/browser/Config.d.ts.map +0 -1
  14. package/dist/browser/Plugin.d.cts +0 -22
  15. package/dist/browser/Plugin.d.cts.map +0 -1
  16. package/dist/browser/Plugin.d.mts +0 -22
  17. package/dist/browser/Plugin.d.mts.map +0 -1
  18. package/dist/browser/Plugin.d.ts +0 -22
  19. package/dist/browser/Plugin.d.ts.map +0 -1
  20. package/dist/browser/Witness.d.cts +0 -19
  21. package/dist/browser/Witness.d.cts.map +0 -1
  22. package/dist/browser/Witness.d.mts +0 -19
  23. package/dist/browser/Witness.d.mts.map +0 -1
  24. package/dist/browser/Witness.d.ts +0 -19
  25. package/dist/browser/Witness.d.ts.map +0 -1
  26. package/dist/browser/index.cjs +0 -289
  27. package/dist/browser/index.cjs.map +0 -1
  28. package/dist/browser/index.d.cts +0 -5
  29. package/dist/browser/index.d.cts.map +0 -1
  30. package/dist/browser/index.d.mts +0 -5
  31. package/dist/browser/index.d.mts.map +0 -1
  32. package/dist/browser/index.d.ts +0 -5
  33. package/dist/browser/index.d.ts.map +0 -1
  34. package/dist/browser/index.mjs +0 -269
  35. package/dist/browser/index.mjs.map +0 -1
  36. package/dist/browser/lib/Ethers/UniSwap3Pair.d.cts +0 -36
  37. package/dist/browser/lib/Ethers/UniSwap3Pair.d.cts.map +0 -1
  38. package/dist/browser/lib/Ethers/UniSwap3Pair.d.mts +0 -36
  39. package/dist/browser/lib/Ethers/UniSwap3Pair.d.mts.map +0 -1
  40. package/dist/browser/lib/Ethers/UniSwap3Pair.d.ts +0 -36
  41. package/dist/browser/lib/Ethers/UniSwap3Pair.d.ts.map +0 -1
  42. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts +0 -13
  43. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts.map +0 -1
  44. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts +0 -13
  45. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts.map +0 -1
  46. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts +0 -13
  47. package/dist/browser/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts.map +0 -1
  48. package/dist/browser/lib/Ethers/UniswapV3Slot0Fields.d.cts +0 -2
  49. package/dist/browser/lib/Ethers/UniswapV3Slot0Fields.d.cts.map +0 -1
  50. package/dist/browser/lib/Ethers/UniswapV3Slot0Fields.d.mts +0 -2
  51. package/dist/browser/lib/Ethers/UniswapV3Slot0Fields.d.mts.map +0 -1
  52. package/dist/browser/lib/Ethers/UniswapV3Slot0Fields.d.ts +0 -2
  53. package/dist/browser/lib/Ethers/UniswapV3Slot0Fields.d.ts.map +0 -1
  54. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.cts +0 -4
  55. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.cts.map +0 -1
  56. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.mts +0 -4
  57. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.mts.map +0 -1
  58. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.ts +0 -4
  59. package/dist/browser/lib/Ethers/createUniswapPoolContracts.d.ts.map +0 -1
  60. package/dist/browser/lib/Ethers/index.d.cts +0 -5
  61. package/dist/browser/lib/Ethers/index.d.cts.map +0 -1
  62. package/dist/browser/lib/Ethers/index.d.mts +0 -5
  63. package/dist/browser/lib/Ethers/index.d.mts.map +0 -1
  64. package/dist/browser/lib/Ethers/index.d.ts +0 -5
  65. package/dist/browser/lib/Ethers/index.d.ts.map +0 -1
  66. package/dist/browser/lib/UniswapPoolContracts.d.cts +0 -2
  67. package/dist/browser/lib/UniswapPoolContracts.d.cts.map +0 -1
  68. package/dist/browser/lib/UniswapPoolContracts.d.mts +0 -2
  69. package/dist/browser/lib/UniswapPoolContracts.d.mts.map +0 -1
  70. package/dist/browser/lib/UniswapPoolContracts.d.ts +0 -2
  71. package/dist/browser/lib/UniswapPoolContracts.d.ts.map +0 -1
  72. package/dist/browser/lib/UniswapV3Slot0Fields.d.cts +0 -2
  73. package/dist/browser/lib/UniswapV3Slot0Fields.d.cts.map +0 -1
  74. package/dist/browser/lib/UniswapV3Slot0Fields.d.mts +0 -2
  75. package/dist/browser/lib/UniswapV3Slot0Fields.d.mts.map +0 -1
  76. package/dist/browser/lib/UniswapV3Slot0Fields.d.ts +0 -2
  77. package/dist/browser/lib/UniswapV3Slot0Fields.d.ts.map +0 -1
  78. package/dist/browser/lib/index.d.cts +0 -4
  79. package/dist/browser/lib/index.d.cts.map +0 -1
  80. package/dist/browser/lib/index.d.mts +0 -4
  81. package/dist/browser/lib/index.d.mts.map +0 -1
  82. package/dist/browser/lib/index.d.ts +0 -4
  83. package/dist/browser/lib/index.d.ts.map +0 -1
  84. package/dist/browser/lib/logErrors.d.cts +0 -3
  85. package/dist/browser/lib/logErrors.d.cts.map +0 -1
  86. package/dist/browser/lib/logErrors.d.mts +0 -3
  87. package/dist/browser/lib/logErrors.d.mts.map +0 -1
  88. package/dist/browser/lib/logErrors.d.ts +0 -3
  89. package/dist/browser/lib/logErrors.d.ts.map +0 -1
  90. package/dist/browser/lib/pricesFromUniswap3.d.cts +0 -4
  91. package/dist/browser/lib/pricesFromUniswap3.d.cts.map +0 -1
  92. package/dist/browser/lib/pricesFromUniswap3.d.mts +0 -4
  93. package/dist/browser/lib/pricesFromUniswap3.d.mts.map +0 -1
  94. package/dist/browser/lib/pricesFromUniswap3.d.ts +0 -4
  95. package/dist/browser/lib/pricesFromUniswap3.d.ts.map +0 -1
  96. package/dist/neutral/Config.d.cts +0 -7
  97. package/dist/neutral/Config.d.cts.map +0 -1
  98. package/dist/neutral/Config.d.mts +0 -7
  99. package/dist/neutral/Config.d.mts.map +0 -1
  100. package/dist/neutral/Config.d.ts +0 -7
  101. package/dist/neutral/Config.d.ts.map +0 -1
  102. package/dist/neutral/Plugin.d.cts +0 -22
  103. package/dist/neutral/Plugin.d.cts.map +0 -1
  104. package/dist/neutral/Plugin.d.mts +0 -22
  105. package/dist/neutral/Plugin.d.mts.map +0 -1
  106. package/dist/neutral/Plugin.d.ts +0 -22
  107. package/dist/neutral/Plugin.d.ts.map +0 -1
  108. package/dist/neutral/Witness.d.cts +0 -19
  109. package/dist/neutral/Witness.d.cts.map +0 -1
  110. package/dist/neutral/Witness.d.mts +0 -19
  111. package/dist/neutral/Witness.d.mts.map +0 -1
  112. package/dist/neutral/Witness.d.ts +0 -19
  113. package/dist/neutral/Witness.d.ts.map +0 -1
  114. package/dist/neutral/index.cjs +0 -289
  115. package/dist/neutral/index.cjs.map +0 -1
  116. package/dist/neutral/index.d.cts +0 -5
  117. package/dist/neutral/index.d.cts.map +0 -1
  118. package/dist/neutral/index.d.mts +0 -5
  119. package/dist/neutral/index.d.mts.map +0 -1
  120. package/dist/neutral/index.d.ts.map +0 -1
  121. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.cts +0 -36
  122. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.cts.map +0 -1
  123. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.mts +0 -36
  124. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.mts.map +0 -1
  125. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.ts +0 -36
  126. package/dist/neutral/lib/Ethers/UniSwap3Pair.d.ts.map +0 -1
  127. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts +0 -13
  128. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts.map +0 -1
  129. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts +0 -13
  130. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts.map +0 -1
  131. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts +0 -13
  132. package/dist/neutral/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts.map +0 -1
  133. package/dist/neutral/lib/Ethers/UniswapV3Slot0Fields.d.cts +0 -2
  134. package/dist/neutral/lib/Ethers/UniswapV3Slot0Fields.d.cts.map +0 -1
  135. package/dist/neutral/lib/Ethers/UniswapV3Slot0Fields.d.mts +0 -2
  136. package/dist/neutral/lib/Ethers/UniswapV3Slot0Fields.d.mts.map +0 -1
  137. package/dist/neutral/lib/Ethers/UniswapV3Slot0Fields.d.ts +0 -2
  138. package/dist/neutral/lib/Ethers/UniswapV3Slot0Fields.d.ts.map +0 -1
  139. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.cts +0 -4
  140. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.cts.map +0 -1
  141. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.mts +0 -4
  142. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.mts.map +0 -1
  143. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.ts +0 -4
  144. package/dist/neutral/lib/Ethers/createUniswapPoolContracts.d.ts.map +0 -1
  145. package/dist/neutral/lib/Ethers/index.d.cts +0 -5
  146. package/dist/neutral/lib/Ethers/index.d.cts.map +0 -1
  147. package/dist/neutral/lib/Ethers/index.d.mts +0 -5
  148. package/dist/neutral/lib/Ethers/index.d.mts.map +0 -1
  149. package/dist/neutral/lib/Ethers/index.d.ts +0 -5
  150. package/dist/neutral/lib/Ethers/index.d.ts.map +0 -1
  151. package/dist/neutral/lib/UniswapPoolContracts.d.cts +0 -2
  152. package/dist/neutral/lib/UniswapPoolContracts.d.cts.map +0 -1
  153. package/dist/neutral/lib/UniswapPoolContracts.d.mts +0 -2
  154. package/dist/neutral/lib/UniswapPoolContracts.d.mts.map +0 -1
  155. package/dist/neutral/lib/UniswapPoolContracts.d.ts +0 -2
  156. package/dist/neutral/lib/UniswapPoolContracts.d.ts.map +0 -1
  157. package/dist/neutral/lib/UniswapV3Slot0Fields.d.cts +0 -2
  158. package/dist/neutral/lib/UniswapV3Slot0Fields.d.cts.map +0 -1
  159. package/dist/neutral/lib/UniswapV3Slot0Fields.d.mts +0 -2
  160. package/dist/neutral/lib/UniswapV3Slot0Fields.d.mts.map +0 -1
  161. package/dist/neutral/lib/UniswapV3Slot0Fields.d.ts +0 -2
  162. package/dist/neutral/lib/UniswapV3Slot0Fields.d.ts.map +0 -1
  163. package/dist/neutral/lib/index.d.cts +0 -4
  164. package/dist/neutral/lib/index.d.cts.map +0 -1
  165. package/dist/neutral/lib/index.d.mts +0 -4
  166. package/dist/neutral/lib/index.d.mts.map +0 -1
  167. package/dist/neutral/lib/index.d.ts +0 -4
  168. package/dist/neutral/lib/index.d.ts.map +0 -1
  169. package/dist/neutral/lib/logErrors.d.cts +0 -3
  170. package/dist/neutral/lib/logErrors.d.cts.map +0 -1
  171. package/dist/neutral/lib/logErrors.d.mts +0 -3
  172. package/dist/neutral/lib/logErrors.d.mts.map +0 -1
  173. package/dist/neutral/lib/logErrors.d.ts +0 -3
  174. package/dist/neutral/lib/logErrors.d.ts.map +0 -1
  175. package/dist/neutral/lib/pricesFromUniswap3.d.cts +0 -4
  176. package/dist/neutral/lib/pricesFromUniswap3.d.cts.map +0 -1
  177. package/dist/neutral/lib/pricesFromUniswap3.d.mts +0 -4
  178. package/dist/neutral/lib/pricesFromUniswap3.d.mts.map +0 -1
  179. package/dist/neutral/lib/pricesFromUniswap3.d.ts +0 -4
  180. package/dist/neutral/lib/pricesFromUniswap3.d.ts.map +0 -1
  181. package/dist/node/Config.d.cts +0 -7
  182. package/dist/node/Config.d.cts.map +0 -1
  183. package/dist/node/Config.d.mts +0 -7
  184. package/dist/node/Config.d.mts.map +0 -1
  185. package/dist/node/Config.d.ts +0 -7
  186. package/dist/node/Config.d.ts.map +0 -1
  187. package/dist/node/Plugin.d.cts +0 -22
  188. package/dist/node/Plugin.d.cts.map +0 -1
  189. package/dist/node/Plugin.d.mts +0 -22
  190. package/dist/node/Plugin.d.mts.map +0 -1
  191. package/dist/node/Plugin.d.ts +0 -22
  192. package/dist/node/Plugin.d.ts.map +0 -1
  193. package/dist/node/Witness.d.cts +0 -19
  194. package/dist/node/Witness.d.cts.map +0 -1
  195. package/dist/node/Witness.d.mts +0 -19
  196. package/dist/node/Witness.d.mts.map +0 -1
  197. package/dist/node/Witness.d.ts +0 -19
  198. package/dist/node/Witness.d.ts.map +0 -1
  199. package/dist/node/index.cjs +0 -301
  200. package/dist/node/index.cjs.map +0 -1
  201. package/dist/node/index.d.cts +0 -5
  202. package/dist/node/index.d.cts.map +0 -1
  203. package/dist/node/index.d.mts +0 -5
  204. package/dist/node/index.d.mts.map +0 -1
  205. package/dist/node/index.d.ts +0 -5
  206. package/dist/node/index.d.ts.map +0 -1
  207. package/dist/node/index.mjs +0 -270
  208. package/dist/node/index.mjs.map +0 -1
  209. package/dist/node/lib/Ethers/UniSwap3Pair.d.cts +0 -36
  210. package/dist/node/lib/Ethers/UniSwap3Pair.d.cts.map +0 -1
  211. package/dist/node/lib/Ethers/UniSwap3Pair.d.mts +0 -36
  212. package/dist/node/lib/Ethers/UniSwap3Pair.d.mts.map +0 -1
  213. package/dist/node/lib/Ethers/UniSwap3Pair.d.ts +0 -36
  214. package/dist/node/lib/Ethers/UniSwap3Pair.d.ts.map +0 -1
  215. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts +0 -13
  216. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.cts.map +0 -1
  217. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts +0 -13
  218. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.mts.map +0 -1
  219. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts +0 -13
  220. package/dist/node/lib/Ethers/Uniswap3PoolSlot0Wrapper.d.ts.map +0 -1
  221. package/dist/node/lib/Ethers/UniswapV3Slot0Fields.d.cts +0 -2
  222. package/dist/node/lib/Ethers/UniswapV3Slot0Fields.d.cts.map +0 -1
  223. package/dist/node/lib/Ethers/UniswapV3Slot0Fields.d.mts +0 -2
  224. package/dist/node/lib/Ethers/UniswapV3Slot0Fields.d.mts.map +0 -1
  225. package/dist/node/lib/Ethers/UniswapV3Slot0Fields.d.ts +0 -2
  226. package/dist/node/lib/Ethers/UniswapV3Slot0Fields.d.ts.map +0 -1
  227. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.cts +0 -4
  228. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.cts.map +0 -1
  229. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.mts +0 -4
  230. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.mts.map +0 -1
  231. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.ts +0 -4
  232. package/dist/node/lib/Ethers/createUniswapPoolContracts.d.ts.map +0 -1
  233. package/dist/node/lib/Ethers/index.d.cts +0 -5
  234. package/dist/node/lib/Ethers/index.d.cts.map +0 -1
  235. package/dist/node/lib/Ethers/index.d.mts +0 -5
  236. package/dist/node/lib/Ethers/index.d.mts.map +0 -1
  237. package/dist/node/lib/Ethers/index.d.ts +0 -5
  238. package/dist/node/lib/Ethers/index.d.ts.map +0 -1
  239. package/dist/node/lib/UniswapPoolContracts.d.cts +0 -2
  240. package/dist/node/lib/UniswapPoolContracts.d.cts.map +0 -1
  241. package/dist/node/lib/UniswapPoolContracts.d.mts +0 -2
  242. package/dist/node/lib/UniswapPoolContracts.d.mts.map +0 -1
  243. package/dist/node/lib/UniswapPoolContracts.d.ts +0 -2
  244. package/dist/node/lib/UniswapPoolContracts.d.ts.map +0 -1
  245. package/dist/node/lib/UniswapV3Slot0Fields.d.cts +0 -2
  246. package/dist/node/lib/UniswapV3Slot0Fields.d.cts.map +0 -1
  247. package/dist/node/lib/UniswapV3Slot0Fields.d.mts +0 -2
  248. package/dist/node/lib/UniswapV3Slot0Fields.d.mts.map +0 -1
  249. package/dist/node/lib/UniswapV3Slot0Fields.d.ts +0 -2
  250. package/dist/node/lib/UniswapV3Slot0Fields.d.ts.map +0 -1
  251. package/dist/node/lib/index.d.cts +0 -4
  252. package/dist/node/lib/index.d.cts.map +0 -1
  253. package/dist/node/lib/index.d.mts +0 -4
  254. package/dist/node/lib/index.d.mts.map +0 -1
  255. package/dist/node/lib/index.d.ts +0 -4
  256. package/dist/node/lib/index.d.ts.map +0 -1
  257. package/dist/node/lib/logErrors.d.cts +0 -3
  258. package/dist/node/lib/logErrors.d.cts.map +0 -1
  259. package/dist/node/lib/logErrors.d.mts +0 -3
  260. package/dist/node/lib/logErrors.d.mts.map +0 -1
  261. package/dist/node/lib/logErrors.d.ts +0 -3
  262. package/dist/node/lib/logErrors.d.ts.map +0 -1
  263. package/dist/node/lib/pricesFromUniswap3.d.cts +0 -4
  264. package/dist/node/lib/pricesFromUniswap3.d.cts.map +0 -1
  265. package/dist/node/lib/pricesFromUniswap3.d.mts +0 -4
  266. package/dist/node/lib/pricesFromUniswap3.d.mts.map +0 -1
  267. package/dist/node/lib/pricesFromUniswap3.d.ts +0 -4
  268. package/dist/node/lib/pricesFromUniswap3.d.ts.map +0 -1
@@ -1,5 +1,107 @@
1
- export * from './Config.ts';
2
- export * from './lib/index.ts';
3
- export { UniswapCryptoMarketPlugin as default, UniswapCryptoMarketPlugin } from './Plugin.ts';
4
- export * from './Witness.ts';
5
- //# sourceMappingURL=index.d.ts.map
1
+ import * as _xyo_network_uniswap_crypto_market_payload_plugin from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
+ import { UniswapCryptoMarketWitnessConfigSchema, UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin';
3
+ import { WitnessConfig, WitnessParams } from '@xyo-network/witness-model';
4
+ import * as ethers from 'ethers';
5
+ import { Provider } from 'ethers';
6
+ import { IERC20Metadata } from '@xyo-network/typechain';
7
+ import { Token } from '@xyo-network/uniswap-sdk-core';
8
+ import { IUniswapV3Pool } from '@xyo-network/uniswap-typechain';
9
+ import { Pool } from 'uniswap-v3-sdk';
10
+ import * as _xyo_network_payloadset_plugin from '@xyo-network/payloadset-plugin';
11
+ import * as _xyo_network_module_model from '@xyo-network/module-model';
12
+ import { AnyConfigSchema } from '@xyo-network/module-model';
13
+ import * as _xyo_network_payload_model from '@xyo-network/payload-model';
14
+ import { Schema, Payload } from '@xyo-network/payload-model';
15
+ import * as _store__xyo_network_account_model_virtual_96c2d52d44_package from '.store/@xyo-network-account-model-virtual-96c2d52d44/package';
16
+ import * as _store__xylabs_object_npm_4_0_1_bb8d73c5f0_package from '.store/@xylabs-object-npm-4.0.1-bb8d73c5f0/package';
17
+ import { AbstractWitness } from '@xyo-network/abstract-witness';
18
+
19
+ type UniswapCryptoMarketWitnessConfig = WitnessConfig<{
20
+ pools?: string[];
21
+ schema: UniswapCryptoMarketWitnessConfigSchema;
22
+ }>;
23
+
24
+ type EthersUniswapV3Slot0Fields = [bigint, bigint, bigint, bigint, bigint, bigint, boolean];
25
+
26
+ declare class EthersUniswap3PoolSlot0Wrapper {
27
+ protected values: EthersUniswapV3Slot0Fields;
28
+ constructor(values: EthersUniswapV3Slot0Fields);
29
+ get feeProtocol(): bigint;
30
+ get observationCardinality(): bigint;
31
+ get observationCardinalityNext(): bigint;
32
+ get observationIndex(): bigint;
33
+ get sqrtPriceX96(): bigint;
34
+ get tick(): bigint;
35
+ get unlocked(): boolean;
36
+ }
37
+
38
+ declare enum ChainId {
39
+ MAINNET = 1,
40
+ ROPSTEN = 3,
41
+ RINKEBY = 4,
42
+ GÖRLI = 5,
43
+ KOVAN = 42
44
+ }
45
+ declare class EthersUniSwap3Pair {
46
+ protected address: string;
47
+ protected provider: Provider;
48
+ private _pool?;
49
+ private _poolContract?;
50
+ private _slot0?;
51
+ private _tokenContracts;
52
+ private _tokens;
53
+ constructor(address: string, provider: Provider);
54
+ pool(): Promise<Pool>;
55
+ poolContract(): IUniswapV3Pool;
56
+ price(): Promise<{
57
+ tokens: {
58
+ address: string;
59
+ symbol: string;
60
+ value: number;
61
+ }[];
62
+ }>;
63
+ slot0(): Promise<EthersUniswap3PoolSlot0Wrapper>;
64
+ token(index: 0 | 1): Promise<Token>;
65
+ tokenContract(index: 0 | 1): Promise<IERC20Metadata>;
66
+ }
67
+
68
+ declare const createUniswapPoolContracts: (provider: Provider, contracts: string[]) => EthersUniSwap3Pair[];
69
+
70
+ declare const pricesFromUniswap3: (pools: EthersUniSwap3Pair[]) => Promise<UniswapCryptoPair[]>;
71
+
72
+ declare const UniswapPoolContracts: string[];
73
+
74
+ type UniswapCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<UniswapCryptoMarketWitnessConfig>, {
75
+ provider?: Provider;
76
+ }>;
77
+ declare class UniswapCryptoMarketWitness<TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams> extends AbstractWitness<TParams> {
78
+ static readonly configSchemas: Schema[];
79
+ static readonly defaultConfigSchema: Schema;
80
+ protected pairs?: EthersUniSwap3Pair[];
81
+ protected get provider(): Provider | undefined;
82
+ protected observeHandler(): Promise<Payload[]>;
83
+ protected startHandler(): Promise<boolean>;
84
+ }
85
+
86
+ declare const UniswapCryptoMarketPlugin: () => _xyo_network_payloadset_plugin.PayloadSetWitnessPlugin<UniswapCryptoMarketWitness<_store__xylabs_object_npm_4_0_1_bb8d73c5f0_package.BaseParamsFields & {
87
+ account?: _store__xyo_network_account_model_virtual_96c2d52d44_package.AccountInstance | "random";
88
+ addToResolvers?: boolean;
89
+ additionalSigners?: _store__xyo_network_account_model_virtual_96c2d52d44_package.AccountInstance[];
90
+ allowNameResolution?: boolean;
91
+ config: _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & Omit<_xyo_network_module_model.ArchivingModuleConfig & _xyo_network_module_model.ModuleConfigFields & _xyo_network_payload_model.SchemaFields & _xyo_network_payload_model.PayloadFields & Omit<_xyo_network_module_model.ArchivingModuleConfig & _xyo_network_module_model.ModuleConfigFields & {
92
+ schema: "network.xyo.crypto.market.uniswap.witness.config";
93
+ } & {
94
+ pools?: string[];
95
+ schema: _xyo_network_uniswap_crypto_market_payload_plugin.UniswapCryptoMarketWitnessConfigSchema;
96
+ }, "schema"> & {
97
+ schema: "network.xyo.crypto.market.uniswap.witness.config";
98
+ }, "schema"> & {
99
+ schema: string;
100
+ };
101
+ ephemeralQueryAccountEnabled?: boolean;
102
+ moduleIdentifierTransformers?: _xyo_network_module_model.ModuleIdentifierTransformer[];
103
+ } & {
104
+ provider?: ethers.Provider;
105
+ }>>;
106
+
107
+ export { ChainId, EthersUniSwap3Pair, EthersUniswap3PoolSlot0Wrapper, type EthersUniswapV3Slot0Fields, UniswapCryptoMarketPlugin, UniswapCryptoMarketWitness, type UniswapCryptoMarketWitnessConfig, type UniswapCryptoMarketWitnessParams, UniswapPoolContracts, createUniswapPoolContracts, UniswapCryptoMarketPlugin as default, pricesFromUniswap3 };
@@ -22,7 +22,7 @@ import { delay } from "@xylabs/delay";
22
22
  import { IERC20Metadata__factory } from "@xyo-network/typechain";
23
23
  import { Token } from "@xyo-network/uniswap-sdk-core";
24
24
  import { IUniswapV3Pool__factory } from "@xyo-network/uniswap-typechain";
25
- import { Pool } from "@xyo-network/uniswap-v3-sdk";
25
+ import { Pool } from "uniswap-v3-sdk";
26
26
 
27
27
  // src/lib/Ethers/Uniswap3PoolSlot0Wrapper.ts
28
28
  var EthersUniswap3PoolSlot0Wrapper = class {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/logErrors.ts","../../src/lib/Ethers/UniSwap3Pair.ts","../../src/lib/Ethers/Uniswap3PoolSlot0Wrapper.ts","../../src/lib/Ethers/createUniswapPoolContracts.ts","../../src/lib/pricesFromUniswap3.ts","../../src/lib/UniswapPoolContracts.ts","../../src/Plugin.ts","../../src/Witness.ts"],"sourcesContent":["export const logErrors = <T>(func: () => T) => {\n try {\n return func()\n } catch (ex) {\n console.error(ex)\n throw ex\n }\n}\n\nexport const logErrorsAsync = async <T>(func: () => Promise<T>) => {\n try {\n return await func()\n } catch (ex) {\n console.error(ex)\n throw ex\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { delay } from '@xylabs/delay'\nimport { IERC20Metadata, IERC20Metadata__factory } from '@xyo-network/typechain'\nimport { Token } from '@xyo-network/uniswap-sdk-core'\nimport { IUniswapV3Pool, IUniswapV3Pool__factory } from '@xyo-network/uniswap-typechain'\nimport { Pool } from '@xyo-network/uniswap-v3-sdk'\nimport { Provider } from 'ethers'\n\nimport { logErrors, logErrorsAsync } from '../logErrors.ts'\nimport { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts'\n\nexport enum ChainId {\n MAINNET = 1,\n ROPSTEN = 3,\n RINKEBY = 4,\n GÖRLI = 5,\n KOVAN = 42,\n}\n\n// null is used as 'in-progress'\nconst waitNotNull = async (closure: () => unknown) => {\n while (closure() === null) await delay(10)\n}\n\nexport class EthersUniSwap3Pair {\n protected address: string\n protected provider: Provider\n\n private _pool?: Pool | null\n private _poolContract?: IUniswapV3Pool\n private _slot0?: EthersUniswap3PoolSlot0Wrapper | null\n private _tokenContracts: (IERC20Metadata | null | undefined)[] = [undefined, undefined]\n private _tokens: (Token | null | undefined)[] = [undefined, undefined]\n\n constructor(address: string, provider: Provider) {\n this.address = address\n this.provider = provider\n }\n\n async pool(): Promise<Pool> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._pool)\n this._pool = this._pool || null\n const slot0 = await this.slot0()\n this._pool\n = this._pool === null\n ? new Pool(\n await this.token(0),\n await this.token(1),\n Number(slot0.feeProtocol),\n `0x${slot0.sqrtPriceX96.toString(16)}`,\n `0x${(await this.poolContract().liquidity()).toString(16)}`,\n Number(slot0.tick),\n )\n : this._pool\n return assertEx(this._pool)\n })\n }\n\n poolContract() {\n return logErrors(() => {\n this._poolContract = this._poolContract ?? IUniswapV3Pool__factory.connect(this.address, this.provider)\n return assertEx(this._poolContract)\n })\n }\n\n async price() {\n return await logErrorsAsync(async () => {\n const tokenIndexes: (0 | 1)[] = [0, 1]\n const pool = await this.pool()\n const tokens = await Promise.all(tokenIndexes.map(value => this.token(value)))\n const tokenContracts = await Promise.all(tokenIndexes.map(value => this.tokenContract(value)))\n const tokenPrices = tokens.map(token => Number.parseFloat(pool.priceOf(token).toSignificant()))\n const tokenSymbols = tokens.map((token, index) => assertEx(token.symbol, () => `Token[${index}] Missing Symbols`).toLowerCase())\n const result = {\n tokens: await Promise.all(\n tokenIndexes.map(async (value) => {\n return { address: await tokenContracts[value].getAddress(), symbol: tokenSymbols[value], value: tokenPrices[value] }\n }),\n ),\n }\n return result\n })\n }\n\n async slot0(): Promise<EthersUniswap3PoolSlot0Wrapper> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._slot0)\n this._slot0 = this._slot0 || null\n if (this._slot0 === null) {\n const poolContract = this.poolContract()\n const slot = await poolContract.slot0()\n this._slot0 = this._slot0 ?? new EthersUniswap3PoolSlot0Wrapper(slot)\n }\n return assertEx(this._slot0)\n })\n }\n\n async token(index: 0 | 1): Promise<Token> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._tokens[index])\n this._tokens[index] = this._tokens[index] || null\n const tokenContract = await this.tokenContract(index)\n this._tokens[index]\n = this._tokens[index]\n ?? new Token(\n ChainId.MAINNET,\n await tokenContract.getAddress(),\n Number(await tokenContract.decimals()),\n await tokenContract.symbol(),\n await tokenContract.name(),\n )\n return assertEx(this._tokens[index])\n })\n }\n\n async tokenContract(index: 0 | 1): Promise<IERC20Metadata> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._tokenContracts[index])\n this._tokenContracts[index] = this._tokenContracts[index] || null\n this._tokenContracts[index]\n = this._tokenContracts[index]\n ?? IERC20Metadata__factory.connect(await (index === 0 ? this.poolContract().token0() : this.poolContract().token1()), this.provider)\n return assertEx(this._tokenContracts[index])\n })\n }\n}\n","import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.ts'\n\nexport class EthersUniswap3PoolSlot0Wrapper {\n protected values: EthersUniswapV3Slot0Fields\n constructor(values: EthersUniswapV3Slot0Fields) {\n this.values = values\n }\n\n get feeProtocol() {\n return this.values[5]\n }\n\n get observationCardinality() {\n return this.values[3]\n }\n\n get observationCardinalityNext() {\n return this.values[4]\n }\n\n get observationIndex() {\n return this.values[2]\n }\n\n get sqrtPriceX96() {\n return this.values[0]\n }\n\n get tick() {\n return this.values[1]\n }\n\n get unlocked() {\n return this.values[6]\n }\n}\n","import { Provider } from 'ethers'\n\nimport { logErrors } from '../logErrors.ts'\nimport { EthersUniSwap3Pair } from './UniSwap3Pair.ts'\n\nexport const createUniswapPoolContracts = (provider: Provider, contracts: string[]) => {\n return logErrors(() => {\n return contracts.map(contract => new EthersUniSwap3Pair(contract, provider))\n })\n}\n","import { fulfilled } from '@xylabs/promise'\nimport { UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin'\n\nimport { EthersUniSwap3Pair } from './Ethers/index.ts'\nimport { logErrorsAsync } from './logErrors.ts'\n\nexport const pricesFromUniswap3 = async (pools: EthersUniSwap3Pair[]): Promise<UniswapCryptoPair[]> => {\n return await logErrorsAsync(async () => {\n const promiseResults = await Promise.allSettled(\n pools.map(async (pool): Promise<UniswapCryptoPair> => {\n const result = await pool.price()\n return result\n }),\n )\n return promiseResults.filter(fulfilled).map(result => result.value)\n })\n}\n","export const UniswapPoolContracts = [\n /* xyo/weth */ '0xE331DE28cd81B768C19A366b0e4e4675c45eC2dA',\n /* xyo/usdt */ '0xd0AF1981f52146a6939385451dAeA0726e13a484',\n /* xyo/dai */ '0x9D7e5647CE3c7C2d835F2F5e82C8fDb36B0BB0fe',\n /* wbtc/xyo */ '0x0cF7494c9dE661467403aBeE8454b3BBf0179a84',\n /* link/xyo */ '0x4693456599a8a4975862A0E720C5de7E1D09A1e4',\n /* wbtc/weth */ '0xCBCdF9626bC03E24f779434178A73a0B4bad62eD',\n /* dai/usdc */ '0x5777d92f208679DB4b9778590Fa3CAB3aC9e2168',\n /* usdc/weth */ '0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8',\n /* usdc/weth */ '0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640',\n /* dai/usdc */ '0x6c6Bc977E13Df9b0de53b251522280BB72383700',\n /* frax/usdc */ '0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52',\n /* wbtc/usdc */ '0x99ac8cA7087fA4A2A1FB6357269965A2014ABc35',\n /* usdc/usdt */ '0x3416cF6C708Da44DB2624D63ea0AAef7113527C6',\n]\n","import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UniswapCryptoMarketSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin'\n\nimport { UniswapCryptoMarketWitness } from './Witness.ts'\n\nexport const UniswapCryptoMarketPlugin = () =>\n createPayloadSetWitnessPlugin<UniswapCryptoMarketWitness>(\n { required: { [UniswapCryptoMarketSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UniswapCryptoMarketWitness.create(params)\n return result\n },\n },\n )\n","import { assertEx } from '@xylabs/assert'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { Payload, Schema } from '@xyo-network/payload-model'\nimport {\n UniswapCryptoMarketPayload,\n UniswapCryptoMarketSchema,\n UniswapCryptoMarketWitnessConfigSchema,\n} from '@xyo-network/uniswap-crypto-market-payload-plugin'\nimport { WitnessParams } from '@xyo-network/witness-model'\nimport { Provider } from 'ethers'\n\nimport { UniswapCryptoMarketWitnessConfig } from './Config.ts'\nimport { createUniswapPoolContracts, EthersUniSwap3Pair, pricesFromUniswap3, UniswapPoolContracts } from './lib/index.ts'\n\nexport type UniswapCryptoMarketWitnessParams = WitnessParams<\n AnyConfigSchema<UniswapCryptoMarketWitnessConfig>,\n {\n provider?: Provider\n }\n>\n\nexport class UniswapCryptoMarketWitness<\n TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, UniswapCryptoMarketWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = UniswapCryptoMarketWitnessConfigSchema\n\n protected pairs?: EthersUniSwap3Pair[]\n protected get provider() {\n return this.params.provider\n }\n\n protected override async observeHandler(): Promise<Payload[]> {\n await this.started('throw')\n const pairs = await pricesFromUniswap3(assertEx(this.pairs))\n const timestamp = Date.now()\n\n const payload: UniswapCryptoMarketPayload = {\n pairs,\n schema: UniswapCryptoMarketSchema,\n timestamp,\n }\n\n return [payload]\n }\n\n protected override async startHandler() {\n await super.startHandler()\n this.pairs = createUniswapPoolContracts(\n assertEx(this.provider, () => 'Provider Required'),\n this.config?.pools ?? UniswapPoolContracts,\n )\n return true\n }\n}\n"],"mappings":"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","names":["ChainId","UniswapCryptoMarketSchema","assertEx","assertEx","UniswapCryptoMarketSchema"]}
1
+ {"version":3,"sources":["../../src/lib/logErrors.ts","../../src/lib/Ethers/UniSwap3Pair.ts","../../src/lib/Ethers/Uniswap3PoolSlot0Wrapper.ts","../../src/lib/Ethers/createUniswapPoolContracts.ts","../../src/lib/pricesFromUniswap3.ts","../../src/lib/UniswapPoolContracts.ts","../../src/Plugin.ts","../../src/Witness.ts"],"sourcesContent":["export const logErrors = <T>(func: () => T) => {\n try {\n return func()\n } catch (ex) {\n console.error(ex)\n throw ex\n }\n}\n\nexport const logErrorsAsync = async <T>(func: () => Promise<T>) => {\n try {\n return await func()\n } catch (ex) {\n console.error(ex)\n throw ex\n }\n}\n","import { assertEx } from '@xylabs/assert'\nimport { delay } from '@xylabs/delay'\nimport { IERC20Metadata, IERC20Metadata__factory } from '@xyo-network/typechain'\nimport { Token } from '@xyo-network/uniswap-sdk-core'\nimport { IUniswapV3Pool, IUniswapV3Pool__factory } from '@xyo-network/uniswap-typechain'\nimport { Provider } from 'ethers'\nimport { Pool } from 'uniswap-v3-sdk'\n\nimport { logErrors, logErrorsAsync } from '../logErrors.ts'\nimport { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts'\n\nexport enum ChainId {\n MAINNET = 1,\n ROPSTEN = 3,\n RINKEBY = 4,\n GÖRLI = 5,\n KOVAN = 42,\n}\n\n// null is used as 'in-progress'\nconst waitNotNull = async (closure: () => unknown) => {\n while (closure() === null) await delay(10)\n}\n\nexport class EthersUniSwap3Pair {\n protected address: string\n protected provider: Provider\n\n private _pool?: Pool | null\n private _poolContract?: IUniswapV3Pool\n private _slot0?: EthersUniswap3PoolSlot0Wrapper | null\n private _tokenContracts: (IERC20Metadata | null | undefined)[] = [undefined, undefined]\n private _tokens: (Token | null | undefined)[] = [undefined, undefined]\n\n constructor(address: string, provider: Provider) {\n this.address = address\n this.provider = provider\n }\n\n async pool(): Promise<Pool> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._pool)\n this._pool = this._pool || null\n const slot0 = await this.slot0()\n this._pool\n = this._pool === null\n ? new Pool(\n await this.token(0),\n await this.token(1),\n Number(slot0.feeProtocol),\n `0x${slot0.sqrtPriceX96.toString(16)}`,\n `0x${(await this.poolContract().liquidity()).toString(16)}`,\n Number(slot0.tick),\n )\n : this._pool\n return assertEx(this._pool)\n })\n }\n\n poolContract() {\n return logErrors(() => {\n this._poolContract = this._poolContract ?? IUniswapV3Pool__factory.connect(this.address, this.provider)\n return assertEx(this._poolContract)\n })\n }\n\n async price() {\n return await logErrorsAsync(async () => {\n const tokenIndexes: (0 | 1)[] = [0, 1]\n const pool = await this.pool()\n const tokens = await Promise.all(tokenIndexes.map(value => this.token(value)))\n const tokenContracts = await Promise.all(tokenIndexes.map(value => this.tokenContract(value)))\n const tokenPrices = tokens.map(token => Number.parseFloat(pool.priceOf(token).toSignificant()))\n const tokenSymbols = tokens.map((token, index) => assertEx(token.symbol, () => `Token[${index}] Missing Symbols`).toLowerCase())\n const result = {\n tokens: await Promise.all(\n tokenIndexes.map(async (value) => {\n return { address: await tokenContracts[value].getAddress(), symbol: tokenSymbols[value], value: tokenPrices[value] }\n }),\n ),\n }\n return result\n })\n }\n\n async slot0(): Promise<EthersUniswap3PoolSlot0Wrapper> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._slot0)\n this._slot0 = this._slot0 || null\n if (this._slot0 === null) {\n const poolContract = this.poolContract()\n const slot = await poolContract.slot0()\n this._slot0 = this._slot0 ?? new EthersUniswap3PoolSlot0Wrapper(slot)\n }\n return assertEx(this._slot0)\n })\n }\n\n async token(index: 0 | 1): Promise<Token> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._tokens[index])\n this._tokens[index] = this._tokens[index] || null\n const tokenContract = await this.tokenContract(index)\n this._tokens[index]\n = this._tokens[index]\n ?? new Token(\n ChainId.MAINNET,\n await tokenContract.getAddress(),\n Number(await tokenContract.decimals()),\n await tokenContract.symbol(),\n await tokenContract.name(),\n )\n return assertEx(this._tokens[index])\n })\n }\n\n async tokenContract(index: 0 | 1): Promise<IERC20Metadata> {\n return await logErrorsAsync(async () => {\n await waitNotNull(() => this._tokenContracts[index])\n this._tokenContracts[index] = this._tokenContracts[index] || null\n this._tokenContracts[index]\n = this._tokenContracts[index]\n ?? IERC20Metadata__factory.connect(await (index === 0 ? this.poolContract().token0() : this.poolContract().token1()), this.provider)\n return assertEx(this._tokenContracts[index])\n })\n }\n}\n","import { EthersUniswapV3Slot0Fields } from './UniswapV3Slot0Fields.ts'\n\nexport class EthersUniswap3PoolSlot0Wrapper {\n protected values: EthersUniswapV3Slot0Fields\n constructor(values: EthersUniswapV3Slot0Fields) {\n this.values = values\n }\n\n get feeProtocol() {\n return this.values[5]\n }\n\n get observationCardinality() {\n return this.values[3]\n }\n\n get observationCardinalityNext() {\n return this.values[4]\n }\n\n get observationIndex() {\n return this.values[2]\n }\n\n get sqrtPriceX96() {\n return this.values[0]\n }\n\n get tick() {\n return this.values[1]\n }\n\n get unlocked() {\n return this.values[6]\n }\n}\n","import { Provider } from 'ethers'\n\nimport { logErrors } from '../logErrors.ts'\nimport { EthersUniSwap3Pair } from './UniSwap3Pair.ts'\n\nexport const createUniswapPoolContracts = (provider: Provider, contracts: string[]) => {\n return logErrors(() => {\n return contracts.map(contract => new EthersUniSwap3Pair(contract, provider))\n })\n}\n","import { fulfilled } from '@xylabs/promise'\nimport { UniswapCryptoPair } from '@xyo-network/uniswap-crypto-market-payload-plugin'\n\nimport { EthersUniSwap3Pair } from './Ethers/index.ts'\nimport { logErrorsAsync } from './logErrors.ts'\n\nexport const pricesFromUniswap3 = async (pools: EthersUniSwap3Pair[]): Promise<UniswapCryptoPair[]> => {\n return await logErrorsAsync(async () => {\n const promiseResults = await Promise.allSettled(\n pools.map(async (pool): Promise<UniswapCryptoPair> => {\n const result = await pool.price()\n return result\n }),\n )\n return promiseResults.filter(fulfilled).map(result => result.value)\n })\n}\n","export const UniswapPoolContracts = [\n /* xyo/weth */ '0xE331DE28cd81B768C19A366b0e4e4675c45eC2dA',\n /* xyo/usdt */ '0xd0AF1981f52146a6939385451dAeA0726e13a484',\n /* xyo/dai */ '0x9D7e5647CE3c7C2d835F2F5e82C8fDb36B0BB0fe',\n /* wbtc/xyo */ '0x0cF7494c9dE661467403aBeE8454b3BBf0179a84',\n /* link/xyo */ '0x4693456599a8a4975862A0E720C5de7E1D09A1e4',\n /* wbtc/weth */ '0xCBCdF9626bC03E24f779434178A73a0B4bad62eD',\n /* dai/usdc */ '0x5777d92f208679DB4b9778590Fa3CAB3aC9e2168',\n /* usdc/weth */ '0x8ad599c3A0ff1De082011EFDDc58f1908eb6e6D8',\n /* usdc/weth */ '0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640',\n /* dai/usdc */ '0x6c6Bc977E13Df9b0de53b251522280BB72383700',\n /* frax/usdc */ '0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52',\n /* wbtc/usdc */ '0x99ac8cA7087fA4A2A1FB6357269965A2014ABc35',\n /* usdc/usdt */ '0x3416cF6C708Da44DB2624D63ea0AAef7113527C6',\n]\n","import { PayloadSetSchema } from '@xyo-network/payload-model'\nimport { createPayloadSetWitnessPlugin } from '@xyo-network/payloadset-plugin'\nimport { UniswapCryptoMarketSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin'\n\nimport { UniswapCryptoMarketWitness } from './Witness.ts'\n\nexport const UniswapCryptoMarketPlugin = () =>\n createPayloadSetWitnessPlugin<UniswapCryptoMarketWitness>(\n { required: { [UniswapCryptoMarketSchema]: 1 }, schema: PayloadSetSchema },\n {\n witness: async (params) => {\n const result = await UniswapCryptoMarketWitness.create(params)\n return result\n },\n },\n )\n","import { assertEx } from '@xylabs/assert'\nimport { AbstractWitness } from '@xyo-network/abstract-witness'\nimport { AnyConfigSchema } from '@xyo-network/module-model'\nimport { Payload, Schema } from '@xyo-network/payload-model'\nimport {\n UniswapCryptoMarketPayload,\n UniswapCryptoMarketSchema,\n UniswapCryptoMarketWitnessConfigSchema,\n} from '@xyo-network/uniswap-crypto-market-payload-plugin'\nimport { WitnessParams } from '@xyo-network/witness-model'\nimport { Provider } from 'ethers'\n\nimport { UniswapCryptoMarketWitnessConfig } from './Config.ts'\nimport { createUniswapPoolContracts, EthersUniSwap3Pair, pricesFromUniswap3, UniswapPoolContracts } from './lib/index.ts'\n\nexport type UniswapCryptoMarketWitnessParams = WitnessParams<\n AnyConfigSchema<UniswapCryptoMarketWitnessConfig>,\n {\n provider?: Provider\n }\n>\n\nexport class UniswapCryptoMarketWitness<\n TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams,\n> extends AbstractWitness<TParams> {\n static override readonly configSchemas: Schema[] = [...super.configSchemas, UniswapCryptoMarketWitnessConfigSchema]\n static override readonly defaultConfigSchema: Schema = UniswapCryptoMarketWitnessConfigSchema\n\n protected pairs?: EthersUniSwap3Pair[]\n protected get provider() {\n return this.params.provider\n }\n\n protected override async observeHandler(): Promise<Payload[]> {\n await this.started('throw')\n const pairs = await pricesFromUniswap3(assertEx(this.pairs))\n const timestamp = Date.now()\n\n const payload: UniswapCryptoMarketPayload = {\n pairs,\n schema: UniswapCryptoMarketSchema,\n timestamp,\n }\n\n return [payload]\n }\n\n protected override async startHandler() {\n await super.startHandler()\n this.pairs = createUniswapPoolContracts(\n assertEx(this.provider, () => 'Provider Required'),\n this.config?.pools ?? UniswapPoolContracts,\n )\n return true\n }\n}\n"],"mappings":"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","names":["ChainId","UniswapCryptoMarketSchema","assertEx","assertEx","UniswapCryptoMarketSchema"]}
package/package.json CHANGED
@@ -12,59 +12,40 @@
12
12
  "dependencies": {
13
13
  "@uniswap/swap-router-contracts": "^1.3.1",
14
14
  "@uniswap/v3-periphery": "^1.4.4",
15
- "@xylabs/assert": "^3.6.12",
16
- "@xylabs/delay": "^3.6.12",
17
- "@xylabs/promise": "^3.6.12",
18
- "@xyo-network/abstract-witness": "^2.111.3",
19
- "@xyo-network/module-model": "^2.111.3",
20
- "@xyo-network/payload-model": "^2.111.3",
21
- "@xyo-network/payloadset-plugin": "^2.111.3",
15
+ "@xylabs/assert": "^4.0.1",
16
+ "@xylabs/delay": "^4.0.1",
17
+ "@xylabs/promise": "^4.0.1",
18
+ "@xyo-network/abstract-witness": "^3.0.2",
19
+ "@xyo-network/module-model": "^3.0.2",
20
+ "@xyo-network/payload-model": "^3.0.2",
21
+ "@xyo-network/payloadset-plugin": "^3.0.2",
22
22
  "@xyo-network/typechain": "^3.1.0",
23
- "@xyo-network/uniswap-crypto-market-payload-plugin": "^2.99.6",
23
+ "@xyo-network/uniswap-crypto-market-payload-plugin": "^3.0.1",
24
24
  "@xyo-network/uniswap-sdk-core": "^4.1.2",
25
25
  "@xyo-network/uniswap-typechain": "^3.1.0",
26
- "@xyo-network/uniswap-v3-sdk": "^3.12.3",
27
- "@xyo-network/witness-model": "^2.111.3",
28
- "ethers": "^6.13.2"
26
+ "@xyo-network/witness-model": "^3.0.2",
27
+ "ethers": "^6.13.2",
28
+ "uniswap-v3-sdk": "^3.11.0"
29
29
  },
30
30
  "devDependencies": {
31
- "@xylabs/jest-helpers": "^3.6.12",
32
- "@xylabs/ts-scripts-yarn3": "^3.15.14",
33
- "@xylabs/tsconfig": "^3.15.14",
34
- "@xyo-network/payload-wrapper": "^2.111.3",
35
- "@xyo-network/witness-blockchain-abstract": "^2.111.3",
31
+ "@xylabs/jest-helpers": "^4.0.1",
32
+ "@xylabs/ts-scripts-yarn3": "^4.0.0-rc.15",
33
+ "@xylabs/tsconfig": "^4.0.0-rc.15",
34
+ "@xyo-network/payload-wrapper": "^3.0.2",
35
+ "@xyo-network/witness-blockchain-abstract": "^3.0.2",
36
36
  "jest": "^29.7.0",
37
37
  "typescript": "^5.5.4"
38
38
  },
39
39
  "description": "Typescript/Javascript Plugins for XYO Platform",
40
40
  "exports": {
41
41
  ".": {
42
- "browser": {
43
- "require": {
44
- "types": "./dist/browser/index.d.cts",
45
- "default": "./dist/browser/index.cjs"
46
- },
47
- "import": {
48
- "types": "./dist/browser/index.d.mts",
49
- "default": "./dist/browser/index.mjs"
50
- }
51
- },
52
- "node": {
53
- "require": {
54
- "types": "./dist/node/index.d.cts",
55
- "default": "./dist/node/index.cjs"
56
- },
57
- "import": {
58
- "types": "./dist/node/index.d.mts",
59
- "default": "./dist/node/index.mjs"
60
- }
61
- }
42
+ "types": "./dist/neutral/index.d.ts",
43
+ "default": "./dist/neutral/index.mjs"
62
44
  },
63
45
  "./package.json": "./package.json"
64
46
  },
65
- "main": "dist/node/index.cjs",
66
- "module": "dist/node/index.mjs",
67
- "types": "dist/node/index.d.ts",
47
+ "module": "dist/neutral/index.mjs",
48
+ "types": "dist/neutral/index.d.ts",
68
49
  "homepage": "https://xyo.network",
69
50
  "license": "LGPL-3.0-only",
70
51
  "publishConfig": {
@@ -75,6 +56,6 @@
75
56
  "url": "https://github.com/XYOracleNetwork/plugins.git"
76
57
  },
77
58
  "sideEffects": false,
78
- "version": "2.99.6",
59
+ "version": "3.0.1",
79
60
  "type": "module"
80
61
  }
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './Config.ts'
2
2
  export * from './lib/index.ts'
3
- // eslint-disable-next-line import/no-default-export
3
+ // eslint-disable-next-line import-x/no-default-export
4
4
  export { UniswapCryptoMarketPlugin as default, UniswapCryptoMarketPlugin } from './Plugin.ts'
5
5
  export * from './Witness.ts'
@@ -3,8 +3,8 @@ import { delay } from '@xylabs/delay'
3
3
  import { IERC20Metadata, IERC20Metadata__factory } from '@xyo-network/typechain'
4
4
  import { Token } from '@xyo-network/uniswap-sdk-core'
5
5
  import { IUniswapV3Pool, IUniswapV3Pool__factory } from '@xyo-network/uniswap-typechain'
6
- import { Pool } from '@xyo-network/uniswap-v3-sdk'
7
6
  import { Provider } from 'ethers'
7
+ import { Pool } from 'uniswap-v3-sdk'
8
8
 
9
9
  import { logErrors, logErrorsAsync } from '../logErrors.ts'
10
10
  import { EthersUniswap3PoolSlot0Wrapper } from './Uniswap3PoolSlot0Wrapper.ts'
package/xy.config.ts CHANGED
@@ -1,14 +1,13 @@
1
1
  import { XyTsupConfig } from '@xylabs/ts-scripts-yarn3'
2
2
  const config: XyTsupConfig = {
3
3
  compile: {
4
- browser: {
5
- src: true,
6
- },
7
- node: {
4
+ browser: {},
5
+ node: {},
6
+ neutral: {
8
7
  src: true,
9
8
  },
10
9
  },
11
10
  }
12
11
 
13
- // eslint-disable-next-line import/no-default-export
12
+ // eslint-disable-next-line import-x/no-default-export
14
13
  export default config
@@ -1,7 +0,0 @@
1
- import { UniswapCryptoMarketWitnessConfigSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
- import { WitnessConfig } from '@xyo-network/witness-model';
3
- export type UniswapCryptoMarketWitnessConfig = WitnessConfig<{
4
- pools?: string[];
5
- schema: UniswapCryptoMarketWitnessConfigSchema;
6
- }>;
7
- //# sourceMappingURL=Config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sCAAsC,EAAE,MAAM,mDAAmD,CAAA;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D,MAAM,MAAM,gCAAgC,GAAG,aAAa,CAAC;IAC3D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,EAAE,sCAAsC,CAAA;CAC/C,CAAC,CAAA"}
@@ -1,7 +0,0 @@
1
- import { UniswapCryptoMarketWitnessConfigSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
- import { WitnessConfig } from '@xyo-network/witness-model';
3
- export type UniswapCryptoMarketWitnessConfig = WitnessConfig<{
4
- pools?: string[];
5
- schema: UniswapCryptoMarketWitnessConfigSchema;
6
- }>;
7
- //# sourceMappingURL=Config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sCAAsC,EAAE,MAAM,mDAAmD,CAAA;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D,MAAM,MAAM,gCAAgC,GAAG,aAAa,CAAC;IAC3D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,EAAE,sCAAsC,CAAA;CAC/C,CAAC,CAAA"}
@@ -1,7 +0,0 @@
1
- import { UniswapCryptoMarketWitnessConfigSchema } from '@xyo-network/uniswap-crypto-market-payload-plugin';
2
- import { WitnessConfig } from '@xyo-network/witness-model';
3
- export type UniswapCryptoMarketWitnessConfig = WitnessConfig<{
4
- pools?: string[];
5
- schema: UniswapCryptoMarketWitnessConfigSchema;
6
- }>;
7
- //# sourceMappingURL=Config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sCAAsC,EAAE,MAAM,mDAAmD,CAAA;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1D,MAAM,MAAM,gCAAgC,GAAG,aAAa,CAAC;IAC3D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,EAAE,sCAAsC,CAAA;CAC/C,CAAC,CAAA"}
@@ -1,22 +0,0 @@
1
- import { UniswapCryptoMarketWitness } from './Witness.ts';
2
- export declare const UniswapCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<UniswapCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
- account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
- addToResolvers?: boolean;
5
- additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
- allowNameResolution?: boolean;
7
- config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
- schema: "network.xyo.crypto.market.uniswap.witness.config";
9
- } & {
10
- pools?: string[];
11
- schema: import("@xyo-network/uniswap-crypto-market-payload-plugin").UniswapCryptoMarketWitnessConfigSchema;
12
- }, "schema"> & {
13
- schema: "network.xyo.crypto.market.uniswap.witness.config";
14
- }, "schema"> & {
15
- schema: string;
16
- };
17
- ephemeralQueryAccountEnabled?: boolean;
18
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
19
- } & {
20
- provider?: import("ethers").Provider;
21
- }>>;
22
- //# sourceMappingURL=Plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAEzD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;GASnC,CAAA"}
@@ -1,22 +0,0 @@
1
- import { UniswapCryptoMarketWitness } from './Witness.ts';
2
- export declare const UniswapCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<UniswapCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
- account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
- addToResolvers?: boolean;
5
- additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
- allowNameResolution?: boolean;
7
- config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
- schema: "network.xyo.crypto.market.uniswap.witness.config";
9
- } & {
10
- pools?: string[];
11
- schema: import("@xyo-network/uniswap-crypto-market-payload-plugin").UniswapCryptoMarketWitnessConfigSchema;
12
- }, "schema"> & {
13
- schema: "network.xyo.crypto.market.uniswap.witness.config";
14
- }, "schema"> & {
15
- schema: string;
16
- };
17
- ephemeralQueryAccountEnabled?: boolean;
18
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
19
- } & {
20
- provider?: import("ethers").Provider;
21
- }>>;
22
- //# sourceMappingURL=Plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAEzD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;GASnC,CAAA"}
@@ -1,22 +0,0 @@
1
- import { UniswapCryptoMarketWitness } from './Witness.ts';
2
- export declare const UniswapCryptoMarketPlugin: () => import("@xyo-network/payloadset-plugin").PayloadSetWitnessPlugin<UniswapCryptoMarketWitness<import(".store/@xylabs-object-npm-3.6.12-443b813787/package").BaseParamsFields & {
3
- account?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance | "random";
4
- addToResolvers?: boolean;
5
- additionalSigners?: import(".store/@xyo-network-account-model-virtual-c593258ccf/package").AccountInstance[];
6
- allowNameResolution?: boolean;
7
- config: import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & import("@xyo-network/payload-model").SchemaFields & import("@xyo-network/payload-model").PayloadFields & Omit<import("@xyo-network/module-model").ArchivingModuleConfig & import("@xyo-network/module-model").ModuleConfigFields & {
8
- schema: "network.xyo.crypto.market.uniswap.witness.config";
9
- } & {
10
- pools?: string[];
11
- schema: import("@xyo-network/uniswap-crypto-market-payload-plugin").UniswapCryptoMarketWitnessConfigSchema;
12
- }, "schema"> & {
13
- schema: "network.xyo.crypto.market.uniswap.witness.config";
14
- }, "schema"> & {
15
- schema: string;
16
- };
17
- ephemeralQueryAccountEnabled?: boolean;
18
- moduleIdentifierTransformers?: import("@xyo-network/module-model").ModuleIdentifierTransformer[];
19
- } & {
20
- provider?: import("ethers").Provider;
21
- }>>;
22
- //# sourceMappingURL=Plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/Plugin.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AAEzD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;GASnC,CAAA"}
@@ -1,19 +0,0 @@
1
- import { AbstractWitness } from '@xyo-network/abstract-witness';
2
- import { AnyConfigSchema } from '@xyo-network/module-model';
3
- import { Payload, Schema } from '@xyo-network/payload-model';
4
- import { WitnessParams } from '@xyo-network/witness-model';
5
- import { Provider } from 'ethers';
6
- import { UniswapCryptoMarketWitnessConfig } from './Config.ts';
7
- import { EthersUniSwap3Pair } from './lib/index.ts';
8
- export type UniswapCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<UniswapCryptoMarketWitnessConfig>, {
9
- provider?: Provider;
10
- }>;
11
- export declare class UniswapCryptoMarketWitness<TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams> extends AbstractWitness<TParams> {
12
- static readonly configSchemas: Schema[];
13
- static readonly defaultConfigSchema: Schema;
14
- protected pairs?: EthersUniSwap3Pair[];
15
- protected get provider(): Provider | undefined;
16
- protected observeHandler(): Promise<Payload[]>;
17
- protected startHandler(): Promise<boolean>;
18
- }
19
- //# sourceMappingURL=Witness.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../../src/Witness.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAM5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAA8B,kBAAkB,EAA4C,MAAM,gBAAgB,CAAA;AAEzH,MAAM,MAAM,gCAAgC,GAAG,aAAa,CAC1D,eAAe,CAAC,gCAAgC,CAAC,EACjD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACpB,CACF,CAAA;AAED,qBAAa,0BAA0B,CACrC,OAAO,SAAS,gCAAgC,GAAG,gCAAgC,CACnF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAmE;IACnH,gBAAyB,mBAAmB,EAAE,MAAM,CAAyC;IAE7F,SAAS,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;IACtC,SAAS,KAAK,QAAQ,yBAErB;cAEwB,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;cAcpC,YAAY;CAQtC"}
@@ -1,19 +0,0 @@
1
- import { AbstractWitness } from '@xyo-network/abstract-witness';
2
- import { AnyConfigSchema } from '@xyo-network/module-model';
3
- import { Payload, Schema } from '@xyo-network/payload-model';
4
- import { WitnessParams } from '@xyo-network/witness-model';
5
- import { Provider } from 'ethers';
6
- import { UniswapCryptoMarketWitnessConfig } from './Config.ts';
7
- import { EthersUniSwap3Pair } from './lib/index.ts';
8
- export type UniswapCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<UniswapCryptoMarketWitnessConfig>, {
9
- provider?: Provider;
10
- }>;
11
- export declare class UniswapCryptoMarketWitness<TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams> extends AbstractWitness<TParams> {
12
- static readonly configSchemas: Schema[];
13
- static readonly defaultConfigSchema: Schema;
14
- protected pairs?: EthersUniSwap3Pair[];
15
- protected get provider(): Provider | undefined;
16
- protected observeHandler(): Promise<Payload[]>;
17
- protected startHandler(): Promise<boolean>;
18
- }
19
- //# sourceMappingURL=Witness.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../../src/Witness.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAM5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAA8B,kBAAkB,EAA4C,MAAM,gBAAgB,CAAA;AAEzH,MAAM,MAAM,gCAAgC,GAAG,aAAa,CAC1D,eAAe,CAAC,gCAAgC,CAAC,EACjD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACpB,CACF,CAAA;AAED,qBAAa,0BAA0B,CACrC,OAAO,SAAS,gCAAgC,GAAG,gCAAgC,CACnF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAmE;IACnH,gBAAyB,mBAAmB,EAAE,MAAM,CAAyC;IAE7F,SAAS,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;IACtC,SAAS,KAAK,QAAQ,yBAErB;cAEwB,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;cAcpC,YAAY;CAQtC"}
@@ -1,19 +0,0 @@
1
- import { AbstractWitness } from '@xyo-network/abstract-witness';
2
- import { AnyConfigSchema } from '@xyo-network/module-model';
3
- import { Payload, Schema } from '@xyo-network/payload-model';
4
- import { WitnessParams } from '@xyo-network/witness-model';
5
- import { Provider } from 'ethers';
6
- import { UniswapCryptoMarketWitnessConfig } from './Config.ts';
7
- import { EthersUniSwap3Pair } from './lib/index.ts';
8
- export type UniswapCryptoMarketWitnessParams = WitnessParams<AnyConfigSchema<UniswapCryptoMarketWitnessConfig>, {
9
- provider?: Provider;
10
- }>;
11
- export declare class UniswapCryptoMarketWitness<TParams extends UniswapCryptoMarketWitnessParams = UniswapCryptoMarketWitnessParams> extends AbstractWitness<TParams> {
12
- static readonly configSchemas: Schema[];
13
- static readonly defaultConfigSchema: Schema;
14
- protected pairs?: EthersUniSwap3Pair[];
15
- protected get provider(): Provider | undefined;
16
- protected observeHandler(): Promise<Payload[]>;
17
- protected startHandler(): Promise<boolean>;
18
- }
19
- //# sourceMappingURL=Witness.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Witness.d.ts","sourceRoot":"","sources":["../../src/Witness.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AAM5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAA;AAC9D,OAAO,EAA8B,kBAAkB,EAA4C,MAAM,gBAAgB,CAAA;AAEzH,MAAM,MAAM,gCAAgC,GAAG,aAAa,CAC1D,eAAe,CAAC,gCAAgC,CAAC,EACjD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAA;CACpB,CACF,CAAA;AAED,qBAAa,0BAA0B,CACrC,OAAO,SAAS,gCAAgC,GAAG,gCAAgC,CACnF,SAAQ,eAAe,CAAC,OAAO,CAAC;IAChC,gBAAyB,aAAa,EAAE,MAAM,EAAE,CAAmE;IACnH,gBAAyB,mBAAmB,EAAE,MAAM,CAAyC;IAE7F,SAAS,CAAC,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;IACtC,SAAS,KAAK,QAAQ,yBAErB;cAEwB,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;cAcpC,YAAY;CAQtC"}