@catalyst-team/poly-sdk 0.4.0 → 0.4.3

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 (264) hide show
  1. package/README.md +8 -1
  2. package/README.zh-CN.md +2 -0
  3. package/dist/src/__tests__/integration/data-api.integration.test.js +21 -18
  4. package/dist/src/__tests__/integration/data-api.integration.test.js.map +1 -1
  5. package/dist/src/catalyst/catalyst-query-service.d.ts +109 -0
  6. package/dist/src/catalyst/catalyst-query-service.d.ts.map +1 -0
  7. package/dist/src/catalyst/catalyst-query-service.js +141 -0
  8. package/dist/src/catalyst/catalyst-query-service.js.map +1 -0
  9. package/dist/src/catalyst/catalyst-realtime-service.d.ts +40 -0
  10. package/dist/src/catalyst/catalyst-realtime-service.d.ts.map +1 -0
  11. package/dist/src/catalyst/catalyst-realtime-service.js +125 -0
  12. package/dist/src/catalyst/catalyst-realtime-service.js.map +1 -0
  13. package/dist/src/catalyst/index.d.ts +4 -0
  14. package/dist/src/catalyst/index.d.ts.map +1 -0
  15. package/dist/src/catalyst/index.js +4 -0
  16. package/dist/src/catalyst/index.js.map +1 -0
  17. package/dist/src/catalyst/types.d.ts +178 -0
  18. package/dist/src/catalyst/types.d.ts.map +1 -0
  19. package/dist/src/catalyst/types.js +2 -0
  20. package/dist/src/catalyst/types.js.map +1 -0
  21. package/dist/src/clients/data-api.d.ts +75 -14
  22. package/dist/src/clients/data-api.d.ts.map +1 -1
  23. package/dist/src/clients/data-api.js +40 -18
  24. package/dist/src/clients/data-api.js.map +1 -1
  25. package/dist/src/clients/gamma-api.d.ts +54 -0
  26. package/dist/src/clients/gamma-api.d.ts.map +1 -1
  27. package/dist/src/clients/gamma-api.js.map +1 -1
  28. package/dist/src/index.d.ts +15 -4
  29. package/dist/src/index.d.ts.map +1 -1
  30. package/dist/src/index.js +22 -2
  31. package/dist/src/index.js.map +1 -1
  32. package/dist/src/insider-scan/index.d.ts +3 -0
  33. package/dist/src/insider-scan/index.d.ts.map +1 -0
  34. package/dist/src/insider-scan/index.js +3 -0
  35. package/dist/src/insider-scan/index.js.map +1 -0
  36. package/dist/src/insider-scan/insider-scan-service.d.ts +63 -0
  37. package/dist/src/insider-scan/insider-scan-service.d.ts.map +1 -0
  38. package/dist/src/insider-scan/insider-scan-service.js +153 -0
  39. package/dist/src/insider-scan/insider-scan-service.js.map +1 -0
  40. package/dist/src/insider-scan/types.d.ts +205 -0
  41. package/dist/src/insider-scan/types.d.ts.map +1 -0
  42. package/dist/src/insider-scan/types.js +7 -0
  43. package/dist/src/insider-scan/types.js.map +1 -0
  44. package/dist/src/services/market-service.d.ts +61 -0
  45. package/dist/src/services/market-service.d.ts.map +1 -1
  46. package/dist/src/services/market-service.js +58 -0
  47. package/dist/src/services/market-service.js.map +1 -1
  48. package/dist/src/services/onchain-service.d.ts +10 -2
  49. package/dist/src/services/onchain-service.d.ts.map +1 -1
  50. package/dist/src/services/onchain-service.js +8 -0
  51. package/dist/src/services/onchain-service.js.map +1 -1
  52. package/dist/src/services/smart-money-service.d.ts +420 -3
  53. package/dist/src/services/smart-money-service.d.ts.map +1 -1
  54. package/dist/src/services/smart-money-service.js +869 -3
  55. package/dist/src/services/smart-money-service.js.map +1 -1
  56. package/dist/src/services/trading-service.d.ts +5 -0
  57. package/dist/src/services/trading-service.d.ts.map +1 -1
  58. package/dist/src/services/trading-service.js +5 -0
  59. package/dist/src/services/trading-service.js.map +1 -1
  60. package/dist/src/services/wallet-service.d.ts +38 -2
  61. package/dist/src/services/wallet-service.d.ts.map +1 -1
  62. package/dist/src/services/wallet-service.js +72 -5
  63. package/dist/src/services/wallet-service.js.map +1 -1
  64. package/dist/src/signal/index.d.ts +8 -0
  65. package/dist/src/signal/index.d.ts.map +1 -0
  66. package/dist/src/signal/index.js +7 -0
  67. package/dist/src/signal/index.js.map +1 -0
  68. package/dist/src/signal/signal-service.d.ts +89 -0
  69. package/dist/src/signal/signal-service.d.ts.map +1 -0
  70. package/dist/src/signal/signal-service.js +226 -0
  71. package/dist/src/signal/signal-service.js.map +1 -0
  72. package/dist/src/signal/types.d.ts +280 -0
  73. package/dist/src/signal/types.d.ts.map +1 -0
  74. package/dist/src/signal/types.js +7 -0
  75. package/dist/src/signal/types.js.map +1 -0
  76. package/dist/src/wallet-report/index.d.ts +3 -0
  77. package/dist/src/wallet-report/index.d.ts.map +1 -0
  78. package/dist/src/wallet-report/index.js +3 -0
  79. package/dist/src/wallet-report/index.js.map +1 -0
  80. package/dist/src/wallet-report/types.d.ts +187 -0
  81. package/dist/src/wallet-report/types.d.ts.map +1 -0
  82. package/dist/src/wallet-report/types.js +7 -0
  83. package/dist/src/wallet-report/types.js.map +1 -0
  84. package/dist/src/wallet-report/wallet-report-service.d.ts +91 -0
  85. package/dist/src/wallet-report/wallet-report-service.d.ts.map +1 -0
  86. package/dist/src/wallet-report/wallet-report-service.js +208 -0
  87. package/dist/src/wallet-report/wallet-report-service.js.map +1 -0
  88. package/dist/src/wallets/hot-wallet-service.d.ts +162 -0
  89. package/dist/src/wallets/hot-wallet-service.d.ts.map +1 -0
  90. package/dist/src/wallets/hot-wallet-service.js +251 -0
  91. package/dist/src/wallets/hot-wallet-service.js.map +1 -0
  92. package/dist/src/wallets/index.d.ts +15 -0
  93. package/dist/src/wallets/index.d.ts.map +1 -0
  94. package/dist/src/wallets/index.js +26 -0
  95. package/dist/src/wallets/index.js.map +1 -0
  96. package/package.json +5 -5
  97. package/dist/__tests__/clob-api.test.d.ts +0 -5
  98. package/dist/__tests__/clob-api.test.d.ts.map +0 -1
  99. package/dist/__tests__/clob-api.test.js +0 -240
  100. package/dist/__tests__/clob-api.test.js.map +0 -1
  101. package/dist/__tests__/integration/arbitrage-service.integration.test.d.ts +0 -12
  102. package/dist/__tests__/integration/arbitrage-service.integration.test.d.ts.map +0 -1
  103. package/dist/__tests__/integration/arbitrage-service.integration.test.js +0 -267
  104. package/dist/__tests__/integration/arbitrage-service.integration.test.js.map +0 -1
  105. package/dist/__tests__/integration/bridge-client.integration.test.d.ts +0 -11
  106. package/dist/__tests__/integration/bridge-client.integration.test.d.ts.map +0 -1
  107. package/dist/__tests__/integration/bridge-client.integration.test.js +0 -260
  108. package/dist/__tests__/integration/bridge-client.integration.test.js.map +0 -1
  109. package/dist/__tests__/integration/clob-api.integration.test.d.ts +0 -13
  110. package/dist/__tests__/integration/clob-api.integration.test.d.ts.map +0 -1
  111. package/dist/__tests__/integration/clob-api.integration.test.js +0 -170
  112. package/dist/__tests__/integration/clob-api.integration.test.js.map +0 -1
  113. package/dist/__tests__/integration/ctf-client.integration.test.d.ts +0 -17
  114. package/dist/__tests__/integration/ctf-client.integration.test.d.ts.map +0 -1
  115. package/dist/__tests__/integration/ctf-client.integration.test.js +0 -234
  116. package/dist/__tests__/integration/ctf-client.integration.test.js.map +0 -1
  117. package/dist/__tests__/integration/data-api.integration.test.d.ts +0 -9
  118. package/dist/__tests__/integration/data-api.integration.test.d.ts.map +0 -1
  119. package/dist/__tests__/integration/data-api.integration.test.js +0 -164
  120. package/dist/__tests__/integration/data-api.integration.test.js.map +0 -1
  121. package/dist/__tests__/integration/gamma-api.integration.test.d.ts +0 -9
  122. package/dist/__tests__/integration/gamma-api.integration.test.d.ts.map +0 -1
  123. package/dist/__tests__/integration/gamma-api.integration.test.js +0 -170
  124. package/dist/__tests__/integration/gamma-api.integration.test.js.map +0 -1
  125. package/dist/__tests__/integration/market-service.integration.test.d.ts +0 -10
  126. package/dist/__tests__/integration/market-service.integration.test.d.ts.map +0 -1
  127. package/dist/__tests__/integration/market-service.integration.test.js +0 -173
  128. package/dist/__tests__/integration/market-service.integration.test.js.map +0 -1
  129. package/dist/__tests__/integration/realtime-service-v2.integration.test.d.ts +0 -10
  130. package/dist/__tests__/integration/realtime-service-v2.integration.test.d.ts.map +0 -1
  131. package/dist/__tests__/integration/realtime-service-v2.integration.test.js +0 -307
  132. package/dist/__tests__/integration/realtime-service-v2.integration.test.js.map +0 -1
  133. package/dist/__tests__/integration/trading-service.integration.test.d.ts +0 -10
  134. package/dist/__tests__/integration/trading-service.integration.test.d.ts.map +0 -1
  135. package/dist/__tests__/integration/trading-service.integration.test.js +0 -58
  136. package/dist/__tests__/integration/trading-service.integration.test.js.map +0 -1
  137. package/dist/__tests__/test-utils.d.ts +0 -92
  138. package/dist/__tests__/test-utils.d.ts.map +0 -1
  139. package/dist/__tests__/test-utils.js +0 -143
  140. package/dist/__tests__/test-utils.js.map +0 -1
  141. package/dist/clients/bridge-client.d.ts +0 -388
  142. package/dist/clients/bridge-client.d.ts.map +0 -1
  143. package/dist/clients/bridge-client.js +0 -587
  144. package/dist/clients/bridge-client.js.map +0 -1
  145. package/dist/clients/clob-api.d.ts +0 -391
  146. package/dist/clients/clob-api.d.ts.map +0 -1
  147. package/dist/clients/clob-api.js +0 -448
  148. package/dist/clients/clob-api.js.map +0 -1
  149. package/dist/clients/ctf-client.d.ts +0 -475
  150. package/dist/clients/ctf-client.d.ts.map +0 -1
  151. package/dist/clients/ctf-client.js +0 -915
  152. package/dist/clients/ctf-client.js.map +0 -1
  153. package/dist/clients/data-api.d.ts +0 -452
  154. package/dist/clients/data-api.d.ts.map +0 -1
  155. package/dist/clients/data-api.js +0 -637
  156. package/dist/clients/data-api.js.map +0 -1
  157. package/dist/clients/gamma-api.d.ts +0 -406
  158. package/dist/clients/gamma-api.d.ts.map +0 -1
  159. package/dist/clients/gamma-api.js +0 -354
  160. package/dist/clients/gamma-api.js.map +0 -1
  161. package/dist/clients/subgraph.d.ts +0 -196
  162. package/dist/clients/subgraph.d.ts.map +0 -1
  163. package/dist/clients/subgraph.js +0 -332
  164. package/dist/clients/subgraph.js.map +0 -1
  165. package/dist/clients/trading-client.d.ts +0 -252
  166. package/dist/clients/trading-client.d.ts.map +0 -1
  167. package/dist/clients/trading-client.js +0 -543
  168. package/dist/clients/trading-client.js.map +0 -1
  169. package/dist/clients/websocket-manager.d.ts +0 -103
  170. package/dist/clients/websocket-manager.d.ts.map +0 -1
  171. package/dist/clients/websocket-manager.js +0 -200
  172. package/dist/clients/websocket-manager.js.map +0 -1
  173. package/dist/core/cache-adapter-bridge.d.ts +0 -36
  174. package/dist/core/cache-adapter-bridge.d.ts.map +0 -1
  175. package/dist/core/cache-adapter-bridge.js +0 -81
  176. package/dist/core/cache-adapter-bridge.js.map +0 -1
  177. package/dist/core/cache.d.ts +0 -43
  178. package/dist/core/cache.d.ts.map +0 -1
  179. package/dist/core/cache.js +0 -76
  180. package/dist/core/cache.js.map +0 -1
  181. package/dist/core/errors.d.ts +0 -39
  182. package/dist/core/errors.d.ts.map +0 -1
  183. package/dist/core/errors.js +0 -86
  184. package/dist/core/errors.js.map +0 -1
  185. package/dist/core/rate-limiter.d.ts +0 -33
  186. package/dist/core/rate-limiter.d.ts.map +0 -1
  187. package/dist/core/rate-limiter.js +0 -82
  188. package/dist/core/rate-limiter.js.map +0 -1
  189. package/dist/core/types.d.ts +0 -506
  190. package/dist/core/types.d.ts.map +0 -1
  191. package/dist/core/types.js +0 -49
  192. package/dist/core/types.js.map +0 -1
  193. package/dist/core/types.test.d.ts +0 -7
  194. package/dist/core/types.test.d.ts.map +0 -1
  195. package/dist/core/types.test.js +0 -122
  196. package/dist/core/types.test.js.map +0 -1
  197. package/dist/core/unified-cache.d.ts +0 -63
  198. package/dist/core/unified-cache.d.ts.map +0 -1
  199. package/dist/core/unified-cache.js +0 -114
  200. package/dist/core/unified-cache.js.map +0 -1
  201. package/dist/index.d.ts +0 -159
  202. package/dist/index.d.ts.map +0 -1
  203. package/dist/index.js +0 -262
  204. package/dist/index.js.map +0 -1
  205. package/dist/services/arbitrage-service.d.ts +0 -409
  206. package/dist/services/arbitrage-service.d.ts.map +0 -1
  207. package/dist/services/arbitrage-service.js +0 -1450
  208. package/dist/services/arbitrage-service.js.map +0 -1
  209. package/dist/services/authorization-service.d.ts +0 -97
  210. package/dist/services/authorization-service.d.ts.map +0 -1
  211. package/dist/services/authorization-service.js +0 -279
  212. package/dist/services/authorization-service.js.map +0 -1
  213. package/dist/services/binance-service.d.ts +0 -154
  214. package/dist/services/binance-service.d.ts.map +0 -1
  215. package/dist/services/binance-service.js +0 -266
  216. package/dist/services/binance-service.js.map +0 -1
  217. package/dist/services/dip-arb-service.d.ts +0 -209
  218. package/dist/services/dip-arb-service.d.ts.map +0 -1
  219. package/dist/services/dip-arb-service.js +0 -1602
  220. package/dist/services/dip-arb-service.js.map +0 -1
  221. package/dist/services/dip-arb-types.d.ts +0 -553
  222. package/dist/services/dip-arb-types.d.ts.map +0 -1
  223. package/dist/services/dip-arb-types.js +0 -164
  224. package/dist/services/dip-arb-types.js.map +0 -1
  225. package/dist/services/market-service.d.ts +0 -367
  226. package/dist/services/market-service.d.ts.map +0 -1
  227. package/dist/services/market-service.js +0 -1187
  228. package/dist/services/market-service.js.map +0 -1
  229. package/dist/services/onchain-service.d.ts +0 -309
  230. package/dist/services/onchain-service.d.ts.map +0 -1
  231. package/dist/services/onchain-service.js +0 -417
  232. package/dist/services/onchain-service.js.map +0 -1
  233. package/dist/services/realtime-service-v2.d.ts +0 -362
  234. package/dist/services/realtime-service-v2.d.ts.map +0 -1
  235. package/dist/services/realtime-service-v2.js +0 -858
  236. package/dist/services/realtime-service-v2.js.map +0 -1
  237. package/dist/services/realtime-service.d.ts +0 -82
  238. package/dist/services/realtime-service.d.ts.map +0 -1
  239. package/dist/services/realtime-service.js +0 -182
  240. package/dist/services/realtime-service.js.map +0 -1
  241. package/dist/services/smart-money-service.d.ts +0 -352
  242. package/dist/services/smart-money-service.d.ts.map +0 -1
  243. package/dist/services/smart-money-service.js +0 -582
  244. package/dist/services/smart-money-service.js.map +0 -1
  245. package/dist/services/swap-service.d.ts +0 -217
  246. package/dist/services/swap-service.d.ts.map +0 -1
  247. package/dist/services/swap-service.js +0 -695
  248. package/dist/services/swap-service.js.map +0 -1
  249. package/dist/services/trading-service.d.ts +0 -177
  250. package/dist/services/trading-service.d.ts.map +0 -1
  251. package/dist/services/trading-service.js +0 -422
  252. package/dist/services/trading-service.js.map +0 -1
  253. package/dist/services/wallet-service.d.ts +0 -316
  254. package/dist/services/wallet-service.d.ts.map +0 -1
  255. package/dist/services/wallet-service.js +0 -681
  256. package/dist/services/wallet-service.js.map +0 -1
  257. package/dist/utils/price-utils.d.ts +0 -153
  258. package/dist/utils/price-utils.d.ts.map +0 -1
  259. package/dist/utils/price-utils.js +0 -236
  260. package/dist/utils/price-utils.js.map +0 -1
  261. package/dist/utils/price-utils.test.d.ts +0 -5
  262. package/dist/utils/price-utils.test.d.ts.map +0 -1
  263. package/dist/utils/price-utils.test.js +0 -192
  264. package/dist/utils/price-utils.test.js.map +0 -1
@@ -0,0 +1,89 @@
1
+ /**
2
+ * SignalService - HTTP client for SignalWorker
3
+ *
4
+ * Provides a clean interface for consuming signal data from SignalWorker.
5
+ */
6
+ import type { Signal, GetSignalsParams, SignalHealthResponse, SignalStatsResponse, GetSignalsResponse, SignalCreatedResponse, ProcessScanResponse, CreateInsiderNewParams, CreateInsiderLargeTradeParams, CreateInsiderClusterParams, CreateWhaleTradeParams, ProcessInsiderScanParams } from './types.js';
7
+ /**
8
+ * SignalService configuration
9
+ */
10
+ export interface SignalServiceConfig {
11
+ /** Base URL of SignalWorker (default: http://localhost:8790) */
12
+ baseUrl?: string;
13
+ /** Request timeout in ms (default: 10000) */
14
+ timeout?: number;
15
+ }
16
+ /**
17
+ * SignalService - HTTP client for SignalWorker
18
+ */
19
+ export declare class SignalService {
20
+ private baseUrl;
21
+ private timeout;
22
+ constructor(config?: SignalServiceConfig);
23
+ private request;
24
+ /**
25
+ * Check SignalWorker health
26
+ */
27
+ health(): Promise<SignalHealthResponse>;
28
+ /**
29
+ * Get signal statistics
30
+ */
31
+ getStats(): Promise<SignalStatsResponse>;
32
+ /**
33
+ * Get signals with optional filtering
34
+ */
35
+ getSignals(params?: GetSignalsParams): Promise<GetSignalsResponse>;
36
+ /**
37
+ * Get a single signal by ID
38
+ */
39
+ getSignal(id: string): Promise<Signal | null>;
40
+ /**
41
+ * Get unread signal count
42
+ */
43
+ getUnreadCount(): Promise<number>;
44
+ /**
45
+ * Mark a signal as read
46
+ */
47
+ markAsRead(id: string): Promise<boolean>;
48
+ /**
49
+ * Mark all signals as read
50
+ */
51
+ markAllAsRead(): Promise<number>;
52
+ /**
53
+ * Dismiss a signal
54
+ */
55
+ dismissSignal(id: string): Promise<boolean>;
56
+ /**
57
+ * Delete a signal
58
+ */
59
+ deleteSignal(id: string): Promise<boolean>;
60
+ /**
61
+ * Create an insider new signal
62
+ */
63
+ createInsiderNewSignal(params: CreateInsiderNewParams): Promise<SignalCreatedResponse>;
64
+ /**
65
+ * Create an insider large trade signal
66
+ */
67
+ createInsiderLargeTradeSignal(params: CreateInsiderLargeTradeParams): Promise<SignalCreatedResponse>;
68
+ /**
69
+ * Create an insider cluster signal
70
+ */
71
+ createInsiderClusterSignal(params: CreateInsiderClusterParams): Promise<SignalCreatedResponse>;
72
+ /**
73
+ * Create a whale trade signal
74
+ */
75
+ createWhaleTradeSignal(params: CreateWhaleTradeParams): Promise<SignalCreatedResponse>;
76
+ /**
77
+ * Process insider scan results (batch)
78
+ */
79
+ processInsiderScanResults(params: ProcessInsiderScanParams): Promise<ProcessScanResponse>;
80
+ /**
81
+ * Trigger cleanup of expired signals
82
+ */
83
+ cleanup(): Promise<number>;
84
+ /**
85
+ * Clear all signals (admin)
86
+ */
87
+ clearAll(): Promise<void>;
88
+ }
89
+ //# sourceMappingURL=signal-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-service.d.ts","sourceRoot":"","sources":["../../../src/signal/signal-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAGlB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAOD;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,GAAE,mBAAwB;YAS9B,OAAO;IA+CrB;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI7C;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAQ9C;;OAEG;IACG,UAAU,CAAC,MAAM,GAAE,gBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgB5E;;OAEG;IACG,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAWnD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IASvC;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY9C;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAKtC;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYjD;;OAEG;IACG,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBhD;;OAEG;IACG,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAM5F;;OAEG;IACG,6BAA6B,CAAC,MAAM,EAAE,6BAA6B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAM1G;;OAEG;IACG,0BAA0B,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAMpG;;OAEG;IACG,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAM5F;;OAEG;IACG,yBAAyB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAU/F;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAKhC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGhC"}
@@ -0,0 +1,226 @@
1
+ /**
2
+ * SignalService - HTTP client for SignalWorker
3
+ *
4
+ * Provides a clean interface for consuming signal data from SignalWorker.
5
+ */
6
+ const DEFAULT_CONFIG = {
7
+ baseUrl: 'http://localhost:8790',
8
+ timeout: 10000,
9
+ };
10
+ /**
11
+ * SignalService - HTTP client for SignalWorker
12
+ */
13
+ export class SignalService {
14
+ baseUrl;
15
+ timeout;
16
+ constructor(config = {}) {
17
+ this.baseUrl = config.baseUrl ?? DEFAULT_CONFIG.baseUrl;
18
+ this.timeout = config.timeout ?? DEFAULT_CONFIG.timeout;
19
+ }
20
+ // ============================================================================
21
+ // Private Helpers
22
+ // ============================================================================
23
+ async request(method, path, options = {}) {
24
+ const url = new URL(`/v1${path}`, this.baseUrl);
25
+ // Add query params
26
+ if (options.params) {
27
+ for (const [key, value] of Object.entries(options.params)) {
28
+ if (value !== undefined) {
29
+ url.searchParams.set(key, String(value));
30
+ }
31
+ }
32
+ }
33
+ const controller = new AbortController();
34
+ const timeoutId = setTimeout(() => controller.abort(), this.timeout);
35
+ try {
36
+ const response = await fetch(url.toString(), {
37
+ method,
38
+ headers: {
39
+ 'Content-Type': 'application/json',
40
+ },
41
+ body: options.body ? JSON.stringify(options.body) : undefined,
42
+ signal: controller.signal,
43
+ });
44
+ if (!response.ok) {
45
+ const errorBody = await response.text().catch(() => 'Unknown error');
46
+ throw new Error(`SignalService request failed: ${response.status} ${response.statusText} - ${errorBody}`);
47
+ }
48
+ return await response.json();
49
+ }
50
+ finally {
51
+ clearTimeout(timeoutId);
52
+ }
53
+ }
54
+ // ============================================================================
55
+ // Health & Stats
56
+ // ============================================================================
57
+ /**
58
+ * Check SignalWorker health
59
+ */
60
+ async health() {
61
+ return this.request('GET', '/health');
62
+ }
63
+ /**
64
+ * Get signal statistics
65
+ */
66
+ async getStats() {
67
+ return this.request('GET', '/stats');
68
+ }
69
+ // ============================================================================
70
+ // Signal Queries
71
+ // ============================================================================
72
+ /**
73
+ * Get signals with optional filtering
74
+ */
75
+ async getSignals(params = {}) {
76
+ return this.request('GET', '/signals', {
77
+ params: {
78
+ type: params.type,
79
+ severity: params.severity,
80
+ status: params.status,
81
+ marketId: params.marketId,
82
+ wallet: params.wallet,
83
+ unreadOnly: params.unreadOnly,
84
+ since: params.since,
85
+ limit: params.limit,
86
+ offset: params.offset,
87
+ },
88
+ });
89
+ }
90
+ /**
91
+ * Get a single signal by ID
92
+ */
93
+ async getSignal(id) {
94
+ try {
95
+ return await this.request('GET', `/signals/${id}`);
96
+ }
97
+ catch (error) {
98
+ if (error instanceof Error && error.message.includes('404')) {
99
+ return null;
100
+ }
101
+ throw error;
102
+ }
103
+ }
104
+ /**
105
+ * Get unread signal count
106
+ */
107
+ async getUnreadCount() {
108
+ const response = await this.request('GET', '/signals/unread/count');
109
+ return response.count;
110
+ }
111
+ // ============================================================================
112
+ // Signal Actions
113
+ // ============================================================================
114
+ /**
115
+ * Mark a signal as read
116
+ */
117
+ async markAsRead(id) {
118
+ try {
119
+ await this.request('POST', `/signals/${id}/read`);
120
+ return true;
121
+ }
122
+ catch (error) {
123
+ if (error instanceof Error && error.message.includes('404')) {
124
+ return false;
125
+ }
126
+ throw error;
127
+ }
128
+ }
129
+ /**
130
+ * Mark all signals as read
131
+ */
132
+ async markAllAsRead() {
133
+ const response = await this.request('POST', '/signals/read-all');
134
+ return response.count ?? 0;
135
+ }
136
+ /**
137
+ * Dismiss a signal
138
+ */
139
+ async dismissSignal(id) {
140
+ try {
141
+ await this.request('POST', `/signals/${id}/dismiss`);
142
+ return true;
143
+ }
144
+ catch (error) {
145
+ if (error instanceof Error && error.message.includes('404')) {
146
+ return false;
147
+ }
148
+ throw error;
149
+ }
150
+ }
151
+ /**
152
+ * Delete a signal
153
+ */
154
+ async deleteSignal(id) {
155
+ try {
156
+ await this.request('DELETE', `/signals/${id}`);
157
+ return true;
158
+ }
159
+ catch (error) {
160
+ if (error instanceof Error && error.message.includes('404')) {
161
+ return false;
162
+ }
163
+ throw error;
164
+ }
165
+ }
166
+ // ============================================================================
167
+ // Signal Creation (for external integrations)
168
+ // ============================================================================
169
+ /**
170
+ * Create an insider new signal
171
+ */
172
+ async createInsiderNewSignal(params) {
173
+ return this.request('POST', '/signals/insider/new', {
174
+ body: params,
175
+ });
176
+ }
177
+ /**
178
+ * Create an insider large trade signal
179
+ */
180
+ async createInsiderLargeTradeSignal(params) {
181
+ return this.request('POST', '/signals/insider/trade', {
182
+ body: params,
183
+ });
184
+ }
185
+ /**
186
+ * Create an insider cluster signal
187
+ */
188
+ async createInsiderClusterSignal(params) {
189
+ return this.request('POST', '/signals/insider/cluster', {
190
+ body: params,
191
+ });
192
+ }
193
+ /**
194
+ * Create a whale trade signal
195
+ */
196
+ async createWhaleTradeSignal(params) {
197
+ return this.request('POST', '/signals/whale/trade', {
198
+ body: params,
199
+ });
200
+ }
201
+ /**
202
+ * Process insider scan results (batch)
203
+ */
204
+ async processInsiderScanResults(params) {
205
+ return this.request('POST', '/signals/process-scan', {
206
+ body: params,
207
+ });
208
+ }
209
+ // ============================================================================
210
+ // Maintenance
211
+ // ============================================================================
212
+ /**
213
+ * Trigger cleanup of expired signals
214
+ */
215
+ async cleanup() {
216
+ const response = await this.request('POST', '/signals/cleanup');
217
+ return response.deletedCount;
218
+ }
219
+ /**
220
+ * Clear all signals (admin)
221
+ */
222
+ async clearAll() {
223
+ await this.request('DELETE', '/signals');
224
+ }
225
+ }
226
+ //# sourceMappingURL=signal-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-service.js","sourceRoot":"","sources":["../../../src/signal/signal-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,280 @@
1
+ /**
2
+ * Signal Service Types
3
+ *
4
+ * Types for SignalService HTTP client
5
+ */
6
+ /**
7
+ * Signal types
8
+ */
9
+ export type SignalType = 'insider_new' | 'insider_large_trade' | 'insider_cluster' | 'market_signal' | 'whale_trade';
10
+ /**
11
+ * Signal severity levels
12
+ */
13
+ export type SignalSeverity = 'low' | 'medium' | 'high' | 'critical';
14
+ /**
15
+ * Signal status
16
+ */
17
+ export type SignalStatus = 'active' | 'read' | 'dismissed' | 'expired';
18
+ /**
19
+ * Insider characteristics (simplified for storage)
20
+ */
21
+ export interface InsiderCharacteristicsSimple {
22
+ isNewWallet: boolean;
23
+ singleSidedBet: boolean;
24
+ largePosition: boolean;
25
+ shortDepositWindow: boolean;
26
+ walletAgeDays: number;
27
+ returnMultiple: number;
28
+ }
29
+ /**
30
+ * Details for insider_new signal
31
+ */
32
+ export interface InsiderNewDetails {
33
+ insiderScore: number;
34
+ characteristics: InsiderCharacteristicsSimple;
35
+ potentialProfit: number;
36
+ returnMultiple: number;
37
+ markets: string[];
38
+ }
39
+ /**
40
+ * Details for insider_large_trade signal
41
+ */
42
+ export interface InsiderLargeTradeDetails {
43
+ trade: {
44
+ txHash?: string;
45
+ side: 'BUY' | 'SELL';
46
+ outcome: string;
47
+ size: number;
48
+ price: number;
49
+ usdcValue: number;
50
+ };
51
+ insiderScore: number;
52
+ potentialReturn: number;
53
+ returnMultiple: number;
54
+ }
55
+ /**
56
+ * Details for insider_cluster signal
57
+ */
58
+ export interface InsiderClusterDetails {
59
+ wallets: string[];
60
+ totalVolume: number;
61
+ direction: string;
62
+ timeWindow: string;
63
+ avgInsiderScore: number;
64
+ }
65
+ /**
66
+ * Details for market_signal
67
+ */
68
+ export interface MarketSignalDetails {
69
+ signalName: string;
70
+ currentValue: number;
71
+ threshold: number;
72
+ change: number;
73
+ changePercent: number;
74
+ }
75
+ /**
76
+ * Details for whale_trade signal
77
+ */
78
+ export interface WhaleTradeDetails {
79
+ trade: {
80
+ txHash?: string;
81
+ side: 'BUY' | 'SELL';
82
+ outcome: string;
83
+ size: number;
84
+ price: number;
85
+ usdcValue: number;
86
+ };
87
+ traderPnL?: number;
88
+ traderVolume?: number;
89
+ }
90
+ /**
91
+ * Union type for signal details
92
+ */
93
+ export type SignalDetails = InsiderNewDetails | InsiderLargeTradeDetails | InsiderClusterDetails | MarketSignalDetails | WhaleTradeDetails;
94
+ /**
95
+ * Signal summary (list view)
96
+ */
97
+ export interface SignalSummary {
98
+ id: string;
99
+ type: SignalType;
100
+ severity: SignalSeverity;
101
+ status: SignalStatus;
102
+ priority: number;
103
+ marketId: string;
104
+ marketTitle?: string;
105
+ wallet?: string;
106
+ walletName?: string;
107
+ title: string;
108
+ description: string;
109
+ createdAt: number;
110
+ readAt?: number;
111
+ }
112
+ /**
113
+ * Full signal with details
114
+ */
115
+ export interface Signal extends SignalSummary {
116
+ details: SignalDetails;
117
+ expiresAt: number;
118
+ }
119
+ /**
120
+ * Query params for getting signals
121
+ */
122
+ export interface GetSignalsParams {
123
+ type?: SignalType;
124
+ severity?: SignalSeverity;
125
+ status?: SignalStatus;
126
+ marketId?: string;
127
+ wallet?: string;
128
+ unreadOnly?: boolean;
129
+ since?: number;
130
+ limit?: number;
131
+ offset?: number;
132
+ }
133
+ /**
134
+ * Health check response
135
+ */
136
+ export interface SignalHealthResponse {
137
+ status: 'ok';
138
+ service: string;
139
+ version: string;
140
+ now: number;
141
+ stats: {
142
+ totalSignals: number;
143
+ unreadCount: number;
144
+ bySeverity: Record<SignalSeverity, number>;
145
+ };
146
+ }
147
+ /**
148
+ * Stats response
149
+ */
150
+ export interface SignalStatsResponse {
151
+ totalSignals: number;
152
+ unreadCount: number;
153
+ byType: Record<SignalType, number>;
154
+ bySeverity: Record<SignalSeverity, number>;
155
+ byStatus: Record<SignalStatus, number>;
156
+ oldestSignal: number | null;
157
+ newestSignal: number | null;
158
+ }
159
+ /**
160
+ * Get signals response
161
+ */
162
+ export interface GetSignalsResponse {
163
+ signals: Signal[];
164
+ pagination: {
165
+ total: number;
166
+ unreadCount: number;
167
+ limit: number;
168
+ offset: number;
169
+ };
170
+ }
171
+ /**
172
+ * Unread count response
173
+ */
174
+ export interface UnreadCountResponse {
175
+ count: number;
176
+ }
177
+ /**
178
+ * Success response
179
+ */
180
+ export interface SuccessResponse {
181
+ success: boolean;
182
+ count?: number;
183
+ }
184
+ /**
185
+ * Signal created response
186
+ */
187
+ export interface SignalCreatedResponse {
188
+ created: boolean;
189
+ signal?: Signal;
190
+ reason?: string;
191
+ }
192
+ /**
193
+ * Process scan response
194
+ */
195
+ export interface ProcessScanResponse {
196
+ processed: number;
197
+ signalsCreated: number;
198
+ signals: Signal[];
199
+ }
200
+ /**
201
+ * Params for creating insider new signal
202
+ */
203
+ export interface CreateInsiderNewParams {
204
+ wallet: string;
205
+ walletName?: string;
206
+ marketId: string;
207
+ marketTitle: string;
208
+ insiderScore: number;
209
+ characteristics: InsiderCharacteristicsSimple;
210
+ potentialProfit: number;
211
+ returnMultiple: number;
212
+ markets?: string[];
213
+ }
214
+ /**
215
+ * Params for creating insider large trade signal
216
+ */
217
+ export interface CreateInsiderLargeTradeParams {
218
+ wallet: string;
219
+ walletName?: string;
220
+ marketId: string;
221
+ marketTitle: string;
222
+ insiderScore: number;
223
+ trade: {
224
+ txHash?: string;
225
+ side: 'BUY' | 'SELL';
226
+ outcome: string;
227
+ size: number;
228
+ price: number;
229
+ usdcValue: number;
230
+ };
231
+ potentialReturn: number;
232
+ returnMultiple: number;
233
+ }
234
+ /**
235
+ * Params for creating insider cluster signal
236
+ */
237
+ export interface CreateInsiderClusterParams {
238
+ wallets: string[];
239
+ marketId: string;
240
+ marketTitle: string;
241
+ totalVolume: number;
242
+ direction: string;
243
+ timeWindow: string;
244
+ avgInsiderScore: number;
245
+ }
246
+ /**
247
+ * Params for creating whale trade signal
248
+ */
249
+ export interface CreateWhaleTradeParams {
250
+ wallet: string;
251
+ walletName?: string;
252
+ marketId: string;
253
+ marketTitle: string;
254
+ trade: {
255
+ txHash?: string;
256
+ side: 'BUY' | 'SELL';
257
+ outcome: string;
258
+ size: number;
259
+ price: number;
260
+ usdcValue: number;
261
+ };
262
+ traderPnL?: number;
263
+ traderVolume?: number;
264
+ }
265
+ /**
266
+ * Params for processing insider scan results
267
+ */
268
+ export interface ProcessInsiderScanParams {
269
+ marketId: string;
270
+ marketTitle: string;
271
+ candidates: Array<{
272
+ address: string;
273
+ name?: string;
274
+ insiderScore: number;
275
+ characteristics: InsiderCharacteristicsSimple;
276
+ potentialProfit?: number;
277
+ returnMultiple?: number;
278
+ }>;
279
+ }
280
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/signal/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Signal Service Types
3
+ *
4
+ * Types for SignalService HTTP client
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/signal/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,3 @@
1
+ export { WalletReportService, type WalletReportServiceConfig } from './wallet-report-service.js';
2
+ export * from './types.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wallet-report/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACjG,cAAc,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { WalletReportService } from './wallet-report-service.js';
2
+ export * from './types.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wallet-report/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAkC,MAAM,4BAA4B,CAAC;AACjG,cAAc,YAAY,CAAC"}