@0xinsider/mcp 3.6.1 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +58 -22
  2. package/dist/constants.d.ts +1 -1
  3. package/dist/constants.js +1 -1
  4. package/dist/product-cli/index.d.ts.map +1 -1
  5. package/dist/product-cli/index.js +162 -26
  6. package/dist/product-cli/index.js.map +1 -1
  7. package/dist/product-cli/operations.d.ts +24 -0
  8. package/dist/product-cli/operations.d.ts.map +1 -0
  9. package/dist/product-cli/operations.js +222 -0
  10. package/dist/product-cli/operations.js.map +1 -0
  11. package/dist/prompts/index.js +2 -2
  12. package/dist/sdk/client.d.ts +75 -160
  13. package/dist/sdk/client.d.ts.map +1 -1
  14. package/dist/sdk/client.js +122 -220
  15. package/dist/sdk/client.js.map +1 -1
  16. package/dist/sdk/errors.d.ts +17 -6
  17. package/dist/sdk/errors.d.ts.map +1 -1
  18. package/dist/sdk/errors.js +30 -6
  19. package/dist/sdk/errors.js.map +1 -1
  20. package/dist/sdk/index.d.ts +5 -27
  21. package/dist/sdk/index.d.ts.map +1 -1
  22. package/dist/sdk/index.js +3 -2
  23. package/dist/sdk/index.js.map +1 -1
  24. package/dist/sdk/pagination.d.ts +3 -3
  25. package/dist/sdk/pagination.js +2 -2
  26. package/dist/sdk/schema.d.ts +481 -215
  27. package/dist/sdk/schema.d.ts.map +1 -1
  28. package/dist/sdk/stream.d.ts.map +1 -1
  29. package/dist/sdk/stream.js +3 -2
  30. package/dist/sdk/stream.js.map +1 -1
  31. package/dist/sdk/webhooks.d.ts +8 -60
  32. package/dist/sdk/webhooks.d.ts.map +1 -1
  33. package/dist/sdk/webhooks.js.map +1 -1
  34. package/dist/tools/explore-markets.js +4 -4
  35. package/dist/tools/explore-markets.js.map +1 -1
  36. package/dist/tools/get-insider-radar.js +1 -1
  37. package/dist/tools/get-insider-radar.js.map +1 -1
  38. package/dist/tools/get-leaderboard.d.ts.map +1 -1
  39. package/dist/tools/get-leaderboard.js +5 -14
  40. package/dist/tools/get-leaderboard.js.map +1 -1
  41. package/dist/tools/get-market-flow.js +1 -1
  42. package/dist/tools/get-trader-pnl.js +3 -3
  43. package/dist/tools/get-trader-pnl.js.map +1 -1
  44. package/dist/tools/get-trader.js +3 -3
  45. package/dist/tools/get-trending-wallets.js +1 -1
  46. package/dist/tools/get-whale-trades.js +3 -3
  47. package/dist/tools/get-whale-trades.js.map +1 -1
  48. package/dist/tools/pick-of-the-day.js +2 -2
  49. package/dist/tools/read-parity.d.ts.map +1 -1
  50. package/dist/tools/read-parity.js +17 -15
  51. package/dist/tools/read-parity.js.map +1 -1
  52. package/dist/tools/trader-reads.js +1 -1
  53. package/package.json +6 -6
@@ -0,0 +1,222 @@
1
+ import { API_CLIENT_OPERATIONS, READ_ONLY_POST_OPERATIONS, } from "#sdk";
2
+ /**
3
+ * Checked against the SDK's generated `OperationQuery` at compile time in both
4
+ * directions: a name the operation does not document fails, and so does a
5
+ * documented name left out, reported as `Property 'missing' is missing`. When
6
+ * the OpenAPI document adds or removes a query parameter, the SDK types move
7
+ * and `npm run check-types` names the row to change here.
8
+ */
9
+ function completeQueryTable(table) {
10
+ return table;
11
+ }
12
+ // The SDK registry carries no runtime query metadata, so this is the CLI's one
13
+ // copy of it. Operation ids, methods and paths still come from
14
+ // `API_CLIENT_OPERATIONS`; nothing here restates them.
15
+ const QUERY_PARAMETERS = completeQueryTable({
16
+ batchGetMarketFlow: [],
17
+ batchGetTraders: [],
18
+ exploreMarkets: ["q", "category", "status", "platform", "sort", "limit", "cursor"],
19
+ getAccountIdentity: [],
20
+ getApiDiscovery: [],
21
+ getCombo: [],
22
+ getCombosSummary: [],
23
+ getCoverage: [],
24
+ getDailyReportSnapshot: ["date"],
25
+ getEdgeHunter: [
26
+ "view",
27
+ "kind",
28
+ "sports",
29
+ "leagues",
30
+ "market_types",
31
+ "condition_ids",
32
+ "event_slugs",
33
+ "series_slugs",
34
+ "category",
35
+ "cohort",
36
+ "admission",
37
+ "min_grade",
38
+ "horizon_hours",
39
+ "limit",
40
+ "cursor",
41
+ ],
42
+ getEventReplaySince: ["trader", "condition_id", "min_grade", "min_size", "expand", "limit", "cursor"],
43
+ getGame: [],
44
+ getHealth: [],
45
+ getLargeTrade: [],
46
+ getMarketCandles: ["resolution", "from", "to"],
47
+ getMarketContextMarkdown: [],
48
+ getMarketFlow: ["timeframe"],
49
+ getMarketHolders: ["outcome", "min_grade", "limit", "cursor"],
50
+ getMarketSnapshot: ["expand"],
51
+ getMonthlyReportSnapshot: ["month"],
52
+ getPickOfTheDay: [],
53
+ getPickOfTheDayArchive: [],
54
+ getPickOfTheDayLedger: [],
55
+ getPickOfTheDayLedgerEntry: [],
56
+ getPositionTimeline: ["condition_id", "limit", "cursor"],
57
+ getPositionTimelineById: ["condition_id", "limit", "cursor"],
58
+ getReports: ["granularity", "period"],
59
+ getStream: ["last_event_id", "seq", "event", "condition_id", "min_grade", "wallet", "min_size"],
60
+ getSuspiciousTrade: [],
61
+ getTrader: ["expand", "max_age_s"],
62
+ getTraderCategoryRecords: ["category"],
63
+ getTraderContext: [],
64
+ getTraderContextMarkdown: [],
65
+ getTraderExportSnapshot: [],
66
+ getTraderExportStatus: ["job_id"],
67
+ getTraderGradeAt: ["as_of"],
68
+ getTraderPnl: ["from", "to", "sections"],
69
+ getUsage: [],
70
+ getWebhook: [],
71
+ getWebhookVerificationAttempt: [],
72
+ getWeeklyReportSnapshot: ["week", "from", "to"],
73
+ getWhaleDatasetStatus: [],
74
+ listComboFills: [
75
+ "result",
76
+ "legs",
77
+ "min_stake",
78
+ "min_multiplier",
79
+ "grades",
80
+ "sports",
81
+ "sort",
82
+ "window",
83
+ "limit",
84
+ "cursor",
85
+ "offset",
86
+ ],
87
+ listGames: ["sport", "league", "status", "starts_after", "starts_before", "limit", "cursor"],
88
+ listLargePositions: ["condition_id", "category", "min_grade", "min_size", "limit", "cursor"],
89
+ listLargeTradeCounterpartyExecutions: ["snapshot_id", "limit", "cursor"],
90
+ listLargeTradeCounterpartyMakers: ["snapshot_id", "limit", "cursor"],
91
+ listLargeTradeHistory: [
92
+ "condition_id",
93
+ "trader",
94
+ "category",
95
+ "platform",
96
+ "min_grade",
97
+ "min_size",
98
+ "min_market_volume_share",
99
+ "suspicious_only",
100
+ "from",
101
+ "to",
102
+ "sort",
103
+ "limit",
104
+ "cursor",
105
+ ],
106
+ listLargeTrades: [
107
+ "category",
108
+ "min_grade",
109
+ "min_size",
110
+ "min_market_volume_share",
111
+ "suspicious_only",
112
+ "since",
113
+ "sort",
114
+ "limit",
115
+ "cursor",
116
+ ],
117
+ listLeaderboard: ["category", "strategy", "limit", "cursor"],
118
+ listPositions: [
119
+ "wallet",
120
+ "condition_id",
121
+ "category",
122
+ "side",
123
+ "min_grade",
124
+ "min_size",
125
+ "consistency",
126
+ "limit",
127
+ "cursor",
128
+ ],
129
+ listSharpMoneyFlows: [
130
+ "timeframe",
131
+ "category",
132
+ "platform",
133
+ "min_grade",
134
+ "direction",
135
+ "limit",
136
+ "cursor",
137
+ ],
138
+ listSuspiciousTrades: ["min_suspicion", "severity", "mode", "limit", "cursor"],
139
+ listTrendingWallets: ["window", "limit", "cursor"],
140
+ listWebhookDeliveries: ["limit", "cursor"],
141
+ listWebhookEvents: [],
142
+ listWebhooks: [],
143
+ searchContent: ["q", "limit"],
144
+ searchMarkets: ["q", "status", "category", "limit", "cursor"],
145
+ });
146
+ /**
147
+ * Reads the MCP catalog serves (`backend/src/mcp/tools/contract.rs`) on a
148
+ * path the general rule below excludes. None changes state, and neither
149
+ * webhook read returns the signing secret: the OpenAPI document returns it
150
+ * only on create and rotation.
151
+ */
152
+ const CATALOG_READS = new Set([
153
+ "listWebhooks",
154
+ "getWebhook",
155
+ "getTraderExportSnapshot",
156
+ ]);
157
+ const READ_ONLY_POSTS = new Set(READ_ONLY_POST_OPERATIONS);
158
+ const EXCLUDED_PATH = /\/(webhooks|stream|mcp)(\/|$)|\/export(\/|$)|\.md$/;
159
+ /**
160
+ * Whether `api call` may run an operation: a JSON GET outside webhook
161
+ * administration, streams, MCP, exports and Markdown, one of the catalog
162
+ * reads above, or a read-only POST batch. Every other write stays refused.
163
+ */
164
+ export function isCliCallable(operation) {
165
+ if (READ_ONLY_POSTS.has(operation.operationId))
166
+ return true;
167
+ if (operation.method !== "GET" || "kind" in operation)
168
+ return false;
169
+ return CATALOG_READS.has(operation.operationId) || !EXCLUDED_PATH.test(operation.path);
170
+ }
171
+ export function pathParameters(path) {
172
+ return [...path.matchAll(/\{([^}]+)\}/g)].flatMap((match) => match[1] === undefined ? [] : [match[1]]);
173
+ }
174
+ function isTabled(operationId) {
175
+ return Object.hasOwn(QUERY_PARAMETERS, operationId);
176
+ }
177
+ /** Every operation `api call` accepts, in registry order. */
178
+ export function cliOperations(commandFor) {
179
+ return API_CLIENT_OPERATIONS.filter(isCliCallable).map((operation) => ({
180
+ operation_id: operation.operationId,
181
+ method: operation.method,
182
+ path: operation.path,
183
+ path_parameters: pathParameters(operation.path),
184
+ query_parameters: isTabled(operation.operationId)
185
+ ? QUERY_PARAMETERS[operation.operationId]
186
+ : [],
187
+ body: operation.method !== "GET",
188
+ command: commandFor(operation.operationId),
189
+ }));
190
+ }
191
+ function distance(a, b) {
192
+ let previous = Array.from({ length: b.length + 1 }, (_, index) => index);
193
+ for (let i = 1; i <= a.length; i++) {
194
+ const current = [i];
195
+ for (let j = 1; j <= b.length; j++) {
196
+ const substitution = (previous[j - 1] ?? 0) + (a[i - 1] === b[j - 1] ? 0 : 1);
197
+ current.push(Math.min((previous[j] ?? 0) + 1, (current[j - 1] ?? 0) + 1, substitution));
198
+ }
199
+ previous = current;
200
+ }
201
+ return previous[b.length] ?? 0;
202
+ }
203
+ // `getGames` should find `listGames`, whose noun matches, as well as `getGame`.
204
+ const VERB = /^(get|list|search|explore|batch|fetch|read|show)(?=[A-Z])/;
205
+ function noun(id) {
206
+ return id.replace(VERB, "").toLowerCase();
207
+ }
208
+ /** Up to 3 callable ids closest to an unknown one, nearest first. */
209
+ export function suggestOperations(input, candidates) {
210
+ const wanted = input.toLowerCase();
211
+ const wantedNoun = noun(input);
212
+ return candidates
213
+ .map((id) => ({
214
+ id,
215
+ score: Math.min(distance(wanted, id.toLowerCase()), distance(wantedNoun, noun(id))),
216
+ }))
217
+ .filter(({ score }) => score <= Math.max(2, Math.floor(wanted.length / 4)))
218
+ .sort((a, b) => a.score - b.score || a.id.localeCompare(b.id))
219
+ .slice(0, 3)
220
+ .map(({ id }) => id);
221
+ }
222
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/product-cli/operations.ts"],"names":[],"mappings":"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"}
@@ -11,13 +11,13 @@ export function registerPrompts(server) {
11
11
  role: "user",
12
12
  content: {
13
13
  type: "text",
14
- text: `Analyze the prediction market trader identified by ${address}. Use the get_trader tool with all expand fields (strategy, categories, quant_metrics) to get comprehensive data.
14
+ text: `Analyze the prediction market trader identified by ${address}. Use the get_trader tool with the strategy and categories expand fields to get comprehensive data.
15
15
 
16
16
  Provide:
17
17
  1. **Overview** — Grade, score, rank, and what tier they fall in
18
18
  2. **P&L Analysis** — Total, realized vs unrealized, recent trends (7d/30d)
19
19
  3. **Strategy** — What type of trader they are and how they operate
20
- 4. **Risk Profile** — copy_score and smart_score (0-100), Sharpe (7d/30d), profit_factor, and edge_consistency interpretation
20
+ 4. **Risk Profile** — the sports and esports record in pnl.in_scope (realized P&L, settled markets, win rate) and what it says about consistency
21
21
  5. **Category Strengths** — Where they perform best/worst
22
22
  6. **Key Takeaway** — One-paragraph summary of whether this trader is worth following and why`,
23
23
  },
@@ -115,7 +115,9 @@ export interface ApiUnsupportedOperation {
115
115
  * `scripts/check-sdk-openapi-drift.mjs`, which also checks every row's kind
116
116
  * against the spec. Do not add a row without a matching spec operation, and
117
117
  * do not remove a spec operation without removing its row. A redirect-only
118
- * operation belongs in `REDIRECT_OPERATIONS` below, not here.
118
+ * operation belongs in `REDIRECT_OPERATIONS` below, not here, and a
119
+ * deprecated alias this client no longer wraps belongs in
120
+ * `UNSUPPORTED_OPERATIONS` (#29350).
119
121
  */
120
122
  export declare const API_CLIENT_OPERATIONS: readonly [{
121
123
  readonly method: "GET";
@@ -273,36 +275,11 @@ export declare const API_CLIENT_OPERATIONS: readonly [{
273
275
  readonly path: "/api/v1/large-trades/{id}";
274
276
  readonly operationId: "getLargeTrade";
275
277
  readonly auth: "bearer";
276
- }, {
277
- readonly method: "GET";
278
- readonly path: "/api/v1/whale-trades";
279
- readonly operationId: "listWhaleTrades";
280
- readonly auth: "bearer";
281
- }, {
282
- readonly method: "GET";
283
- readonly path: "/api/v1/whale-trades/history";
284
- readonly operationId: "listWhaleTradeHistory";
285
- readonly auth: "bearer";
286
- }, {
287
- readonly method: "GET";
288
- readonly path: "/api/v1/whale-trades/{id}/counterparties/executions";
289
- readonly operationId: "listWhaleTradeCounterpartyExecutions";
290
- readonly auth: "bearer";
291
- }, {
292
- readonly method: "GET";
293
- readonly path: "/api/v1/whale-trades/{id}/counterparties/executions/{execution_id}/makers";
294
- readonly operationId: "listWhaleTradeCounterpartyMakers";
295
- readonly auth: "bearer";
296
278
  }, {
297
279
  readonly method: "GET";
298
280
  readonly path: "/api/v1/content/search";
299
281
  readonly operationId: "searchContent";
300
282
  readonly auth: "bearer";
301
- }, {
302
- readonly method: "GET";
303
- readonly path: "/api/v1/whale-trades/{id}";
304
- readonly operationId: "getWhaleTrade";
305
- readonly auth: "bearer";
306
283
  }, {
307
284
  readonly method: "GET";
308
285
  readonly path: "/api/v1/leaderboard";
@@ -318,11 +295,6 @@ export declare const API_CLIENT_OPERATIONS: readonly [{
318
295
  readonly path: "/api/v1/markets/explore";
319
296
  readonly operationId: "exploreMarkets";
320
297
  readonly auth: "bearer";
321
- }, {
322
- readonly method: "GET";
323
- readonly path: "/api/v1/markets/smart-money-flows";
324
- readonly operationId: "listSmartMoneyFlows";
325
- readonly auth: "bearer";
326
298
  }, {
327
299
  readonly method: "GET";
328
300
  readonly path: "/api/v1/markets/sharp-money-flows";
@@ -333,11 +305,6 @@ export declare const API_CLIENT_OPERATIONS: readonly [{
333
305
  readonly path: "/api/v1/coverage";
334
306
  readonly operationId: "getCoverage";
335
307
  readonly auth: "none";
336
- }, {
337
- readonly method: "GET";
338
- readonly path: "/api/v1/platforms";
339
- readonly operationId: "getPlatforms";
340
- readonly auth: "none";
341
308
  }, {
342
309
  readonly method: "GET";
343
310
  readonly path: "/api/v1/market/{condition_id}/holders";
@@ -348,21 +315,11 @@ export declare const API_CLIENT_OPERATIONS: readonly [{
348
315
  readonly path: "/api/v1/market/{condition_id}/flow";
349
316
  readonly operationId: "getMarketFlow";
350
317
  readonly auth: "bearer";
351
- }, {
352
- readonly method: "GET";
353
- readonly path: "/api/v1/market/{condition_id}/intel";
354
- readonly operationId: "getMarketIntel";
355
- readonly auth: "bearer";
356
318
  }, {
357
319
  readonly method: "POST";
358
320
  readonly path: "/api/v1/markets/flow/batch";
359
321
  readonly operationId: "batchGetMarketFlow";
360
322
  readonly auth: "bearer";
361
- }, {
362
- readonly method: "POST";
363
- readonly path: "/api/v1/markets/intel/batch";
364
- readonly operationId: "batchGetMarketIntel";
365
- readonly auth: "bearer";
366
323
  }, {
367
324
  readonly method: "GET";
368
325
  readonly path: "/api/v1/market/{condition_id}/snapshot";
@@ -389,16 +346,6 @@ export declare const API_CLIENT_OPERATIONS: readonly [{
389
346
  readonly path: "/api/v1/suspicious-trades/{id}";
390
347
  readonly operationId: "getSuspiciousTrade";
391
348
  readonly auth: "bearer";
392
- }, {
393
- readonly method: "GET";
394
- readonly path: "/api/v1/insider-radar";
395
- readonly operationId: "listInsiderRadar";
396
- readonly auth: "bearer";
397
- }, {
398
- readonly method: "GET";
399
- readonly path: "/api/v1/insider-radar/{id}";
400
- readonly operationId: "getInsiderRadarFlag";
401
- readonly auth: "bearer";
402
349
  }, {
403
350
  readonly method: "GET";
404
351
  readonly path: "/api/v1/events/feed/since";
@@ -597,9 +544,67 @@ export declare const REDIRECT_OPERATIONS: readonly [{
597
544
  /**
598
545
  * Published operations this client deliberately does not wrap, with the
599
546
  * reason. The drift check requires every remaining spec operation to be
600
- * accounted for here, so "unsupported" is always a stated decision.
547
+ * accounted for here, so "unsupported" is always a stated decision. An
548
+ * operation that still answers 200 may appear here only while the spec marks
549
+ * it `deprecated`: 0.32.0 dropped the September rename aliases (#29350), whose
550
+ * paths stay live until their 2027-02-01 sunset (#29351).
601
551
  */
602
552
  export declare const UNSUPPORTED_OPERATIONS: readonly [{
553
+ readonly method: "GET";
554
+ readonly path: "/api/v1/whale-trades";
555
+ readonly operationId: "listWhaleTrades";
556
+ readonly reason: "Deprecated alias (#16304), sunset 2027-02-01: use listLargeTrades().";
557
+ }, {
558
+ readonly method: "GET";
559
+ readonly path: "/api/v1/whale-trades/history";
560
+ readonly operationId: "listWhaleTradeHistory";
561
+ readonly reason: "Deprecated alias (#16304), sunset 2027-02-01: use listLargeTradeHistory().";
562
+ }, {
563
+ readonly method: "GET";
564
+ readonly path: "/api/v1/whale-trades/{id}";
565
+ readonly operationId: "getWhaleTrade";
566
+ readonly reason: "Deprecated alias (#16304), sunset 2027-02-01: use getLargeTrade().";
567
+ }, {
568
+ readonly method: "GET";
569
+ readonly path: "/api/v1/whale-trades/{id}/counterparties/executions";
570
+ readonly operationId: "listWhaleTradeCounterpartyExecutions";
571
+ readonly reason: 'Deprecated alias (#16304), sunset 2027-02-01: use call("listLargeTradeCounterpartyExecutions").';
572
+ }, {
573
+ readonly method: "GET";
574
+ readonly path: "/api/v1/whale-trades/{id}/counterparties/executions/{execution_id}/makers";
575
+ readonly operationId: "listWhaleTradeCounterpartyMakers";
576
+ readonly reason: 'Deprecated alias (#16304), sunset 2027-02-01: use call("listLargeTradeCounterpartyMakers").';
577
+ }, {
578
+ readonly method: "GET";
579
+ readonly path: "/api/v1/markets/smart-money-flows";
580
+ readonly operationId: "listSmartMoneyFlows";
581
+ readonly reason: "Deprecated alias (#16308), sunset 2027-02-01: use listSharpMoneyFlows().";
582
+ }, {
583
+ readonly method: "GET";
584
+ readonly path: "/api/v1/platforms";
585
+ readonly operationId: "getPlatforms";
586
+ readonly reason: "Deprecated alias (#16315), sunset 2027-02-01: use getCoverage().";
587
+ }, {
588
+ readonly method: "GET";
589
+ readonly path: "/api/v1/market/{condition_id}/intel";
590
+ readonly operationId: "getMarketIntel";
591
+ readonly reason: "Deprecated alias (#16312), sunset 2027-02-01: use getMarketFlow().";
592
+ }, {
593
+ readonly method: "POST";
594
+ readonly path: "/api/v1/markets/intel/batch";
595
+ readonly operationId: "batchGetMarketIntel";
596
+ readonly reason: "Deprecated alias (#16312), sunset 2027-02-01: use batchGetMarketFlow().";
597
+ }, {
598
+ readonly method: "GET";
599
+ readonly path: "/api/v1/insider-radar";
600
+ readonly operationId: "listInsiderRadar";
601
+ readonly reason: "Deprecated alias (#16301), sunset 2027-02-01: use listSuspiciousTrades().";
602
+ }, {
603
+ readonly method: "GET";
604
+ readonly path: "/api/v1/insider-radar/{id}";
605
+ readonly operationId: "getInsiderRadarFlag";
606
+ readonly reason: "Deprecated alias (#16301), sunset 2027-02-01: use getSuspiciousTrade().";
607
+ }, {
603
608
  readonly method: "GET";
604
609
  readonly path: "/api/v1/sports/pre-game-sides";
605
610
  readonly operationId: "listPreGameSides";
@@ -640,15 +645,14 @@ export declare const IDEMPOTENT_WRITE_OPERATIONS: readonly ["createWebhookVerifi
640
645
  export type IdempotentWriteOperationId = (typeof IDEMPOTENT_WRITE_OPERATIONS)[number];
641
646
  /**
642
647
  * POST operations that read and never write (#16182): the batch lookups.
643
- * `POST /api/v1/traders/batch` and `POST /api/v1/markets/flow/batch` (with its
644
- * deprecated alias `POST /api/v1/markets/intel/batch`) resolve
648
+ * `POST /api/v1/traders/batch` and `POST /api/v1/markets/flow/batch` resolve
645
649
  * their inputs and store nothing (`backend/src/api_v1/handlers/batch.rs`), so
646
650
  * a repeat cannot duplicate a side effect. Each attempt is one request
647
651
  * against the account's quota and one reservation of batch item units, which
648
652
  * is exactly what a retried GET costs, so they are retried like a GET. Every
649
653
  * other POST, PATCH or DELETE is retried only as a keyed write above.
650
654
  */
651
- export declare const READ_ONLY_POST_OPERATIONS: readonly ["batchGetTraders", "batchGetMarketFlow", "batchGetMarketIntel"];
655
+ export declare const READ_ONLY_POST_OPERATIONS: readonly ["batchGetTraders", "batchGetMarketFlow"];
652
656
  /**
653
657
  * Writes whose repeat converges on the state the first one reached, so a
654
658
  * retry cannot repeat a side effect and needs no `Idempotency-Key` (#16254).
@@ -807,9 +811,8 @@ export declare function assertTrustedBaseUrl(baseUrl: string): URL;
807
811
  */
808
812
  export declare function resolveApiUrl(baseUrl: string, path: string): URL;
809
813
  /**
810
- * One signal that aborts on the deadline OR when the caller's signal aborts.
811
- * Uses native composition where available. The manual fallback removes both
812
- * source listeners when either source aborts.
814
+ * One signal that aborts on the deadline OR when the caller's signal aborts,
815
+ * composed with `AbortSignal.any`, which every supported Node release has.
813
816
  */
814
817
  export declare function composeSignals(timeoutMs: number | null, caller?: AbortSignal): AbortSignal | undefined;
815
818
  /**
@@ -869,8 +872,12 @@ export type EdgeHunterBoardParams = EdgeHunterSelectionParams & Pick<OperationQu
869
872
  export type EdgeHunterSignalsParams = EdgeHunterSelectionParams & Pick<OperationQuery["getEdgeHunter"], "limit" | "cursor" | "horizon_hours" | "min_grade"> & {
870
873
  view: "signals";
871
874
  };
872
- /** Full observation evidence; cohort is required, including for empty pages. */
873
- export type EdgeHunterObservationsParams = EdgeHunterSelectionParams & Pick<OperationQuery["getEdgeHunter"], "limit" | "cursor"> & {
875
+ /**
876
+ * Full observation evidence; cohort is required, including for empty pages.
877
+ * admission "most_held_48h" (cohort "wider_holder" only) opts in to the
878
+ * most-held selection; the read then requires the server to echo it.
879
+ */
880
+ export type EdgeHunterObservationsParams = EdgeHunterSelectionParams & Pick<OperationQuery["getEdgeHunter"], "limit" | "cursor" | "admission"> & {
874
881
  view: "observations";
875
882
  cohort: NonNullable<OperationQuery["getEdgeHunter"]["cohort"]>;
876
883
  };
@@ -1109,7 +1116,7 @@ export interface ListParams {
1109
1116
  [key: string]: ApiQueryValue;
1110
1117
  }
1111
1118
  /** `GET /api/v1/leaderboard` -> parameters -> strategy (`web/public/api/v1/openapi.json`). */
1112
- export declare const LEADERBOARD_STRATEGIES: readonly ["accumulator", "algo_trader", "arbitrageur", "category_focused", "directional", "diversified", "event_driven", "high_activity", "market_maker", "mixed", "momentum", "scalper", "speculator", "swing_trader", "two_sided", "unclassified"];
1119
+ export declare const LEADERBOARD_STRATEGIES: readonly ["category_focused", "diversified", "high_activity", "mixed", "two_sided", "unclassified"];
1113
1120
  export type LeaderboardStrategy = (typeof LEADERBOARD_STRATEGIES)[number];
1114
1121
  /**
1115
1122
  * Query parameters for `GET /api/v1/leaderboard`, from the operation
@@ -1124,27 +1131,16 @@ export type TrendingWalletsParams = OperationQuery["listTrendingWallets"];
1124
1131
  export type LargeTradeListParams = OperationQuery["listLargeTrades"];
1125
1132
  /** Query parameters of the V1 historical large-trade replay (#16304). */
1126
1133
  export type LargeTradeHistoryParams = OperationQuery["listLargeTradeHistory"];
1127
- /** @deprecated Use {@link LargeTradeListParams} (#16304). */
1128
- export type WhaleTradeListParams = OperationQuery["listWhaleTrades"];
1129
- /** @deprecated Use {@link LargeTradeHistoryParams} (#16304). */
1130
- export type WhaleTradeHistoryParams = OperationQuery["listWhaleTradeHistory"];
1131
1134
  /** Query parameters of `GET /api/v1/positions`. */
1132
1135
  export type PositionsListParams = OperationQuery["listPositions"];
1133
1136
  /** Query parameters of `GET /api/v1/combos/fills`. */
1134
1137
  export type ComboFillsParams = OperationQuery["listComboFills"];
1135
1138
  /** Query parameters of `GET /api/v1/large-positions`. */
1136
1139
  export type LargePositionsListParams = OperationQuery["listLargePositions"];
1137
- /** Query parameters of the sharp-money flows read and its legacy alias. */
1140
+ /** Query parameters of `GET /api/v1/markets/sharp-money-flows`. */
1138
1141
  export type SharpMoneyFlowsParams = OperationQuery["listSharpMoneyFlows"];
1139
1142
  /** Query parameters of `GET /api/v1/suspicious-trades`: `min_suspicion` and `severity`, not a grade. */
1140
1143
  export type SuspiciousTradesListParams = OperationQuery["listSuspiciousTrades"];
1141
- /**
1142
- * @deprecated Use `SuspiciousTradesListParams`; the Insider Radar spelling of
1143
- * this contract was renamed to suspicious trades in #16301. The deprecated
1144
- * `GET /api/v1/insider-radar` takes the same parameters, so this stays an
1145
- * alias with no retirement date.
1146
- */
1147
- export type InsiderRadarListParams = SuspiciousTradesListParams;
1148
1144
  /** Query parameters of `GET /api/v1/markets/explore`. */
1149
1145
  export type ExploreMarketsParams = OperationQuery["exploreMarkets"];
1150
1146
  /**
@@ -1386,12 +1382,6 @@ export declare class OxinsiderApiClient {
1386
1382
  * (`POST /api/v1/markets/flow/batch`); `meta` is the batch's own.
1387
1383
  */
1388
1384
  batchGetMarketFlow(body: OperationBody["batchGetMarketFlow"], options?: ConvenienceOptions): Promise<OperationResult<"batchGetMarketFlow">>;
1389
- /**
1390
- * @deprecated Use {@link batchGetMarketFlow} (#16312); calls the deprecated
1391
- * `POST /api/v1/markets/intel/batch`, whose envelope keeps
1392
- * `object: "market_intel_batch"`.
1393
- */
1394
- batchGetMarketIntel(body: OperationBody["batchGetMarketIntel"], options?: ConvenienceOptions): Promise<OperationResult<"batchGetMarketIntel">>;
1395
1385
  listLeaderboard(params?: LeaderboardListParams, options?: ConvenienceOptions): Promise<Omit<{
1396
1386
  object: "list";
1397
1387
  data: OperationData["listLeaderboard"];
@@ -1442,30 +1432,6 @@ export declare class OxinsiderApiClient {
1442
1432
  }, "meta"> & {
1443
1433
  meta: ClientMeta<import("./schema.js").LargeTradeHistoryMeta>;
1444
1434
  }>;
1445
- /** @deprecated Use {@link listLargeTrades} (#16304); calls the deprecated `/api/v1/whale-trades`. */
1446
- listWhaleTrades(params?: WhaleTradeListParams, options?: ConvenienceOptions): Promise<Omit<{
1447
- object: "list";
1448
- data: OperationData["listWhaleTrades"];
1449
- data_quality: import("./schema.js").DataQuality;
1450
- has_more: boolean;
1451
- next_cursor?: string;
1452
- total?: number;
1453
- meta: ResponseMeta;
1454
- }, "meta"> & {
1455
- meta: ClientMeta<ResponseMeta>;
1456
- }>;
1457
- /** @deprecated Use {@link listLargeTradeHistory} (#16304); calls the deprecated `/api/v1/whale-trades/history`. */
1458
- listWhaleTradeHistory(params?: WhaleTradeHistoryParams, options?: ConvenienceOptions): Promise<Omit<{
1459
- object: "list";
1460
- data: OperationData["listWhaleTradeHistory"];
1461
- data_quality: import("./schema.js").DataQuality;
1462
- has_more: boolean;
1463
- next_cursor?: string;
1464
- total?: number;
1465
- meta: import("./schema.js").LargeTradeHistoryMeta;
1466
- }, "meta"> & {
1467
- meta: ClientMeta<import("./schema.js").LargeTradeHistoryMeta>;
1468
- }>;
1469
1435
  listPositions(params?: PositionsListParams, options?: ConvenienceOptions): Promise<Omit<{
1470
1436
  object: "list";
1471
1437
  data: OperationData["listPositions"];
@@ -1506,21 +1472,6 @@ export declare class OxinsiderApiClient {
1506
1472
  }, "meta"> & {
1507
1473
  meta: ClientMeta<ResponseMeta>;
1508
1474
  }>;
1509
- /**
1510
- * @deprecated Use {@link listSharpMoneyFlows} (#16308). Kept live; it calls
1511
- * the deprecated `/api/v1/markets/smart-money-flows`, whose responses carry
1512
- * `Deprecation` and a `Link rel="successor-version"`.
1513
- */
1514
- listSmartMoneyFlows(params?: OperationQuery["listSmartMoneyFlows"], options?: ConvenienceOptions): Promise<Omit<{
1515
- object: "list";
1516
- data: OperationData["listSmartMoneyFlows"];
1517
- has_more: boolean;
1518
- next_cursor?: string;
1519
- total?: number;
1520
- meta: ResponseMeta;
1521
- }, "meta"> & {
1522
- meta: ClientMeta<ResponseMeta>;
1523
- }>;
1524
1475
  /**
1525
1476
  * List covered games: both sides with their provider ids and live scores, the
1526
1477
  * UTC kickoff, the provider's own status, and every linked Polymarket market
@@ -1584,18 +1535,12 @@ export declare class OxinsiderApiClient {
1584
1535
  }>;
1585
1536
  /** One market's flow and top positions (`GET /api/v1/market/{condition_id}/flow`). */
1586
1537
  getMarketFlow(conditionId: OperationPath["getMarketFlow"]["condition_id"], options?: Omit<OperationRequestOptions<"getMarketFlow">, "path">): Promise<OperationResult<"getMarketFlow">>;
1587
- /**
1588
- * @deprecated Use {@link getMarketFlow} (#16312); calls the deprecated
1589
- * `GET /api/v1/market/{condition_id}/intel`, whose envelope keeps
1590
- * `object: "market_intel"`.
1591
- */
1592
- getMarketIntel(conditionId: OperationPath["getMarketIntel"]["condition_id"], options?: Omit<OperationRequestOptions<"getMarketIntel">, "path">): Promise<OperationResult<"getMarketIntel">>;
1593
1538
  getMarketSnapshot(conditionId: OperationPath["getMarketSnapshot"]["condition_id"], options?: Omit<OperationRequestOptions<"getMarketSnapshot">, "path">): Promise<OperationResult<"getMarketSnapshot">>;
1594
1539
  /**
1595
1540
  * One page of a market's graded (S/A/B) holder roster from a complete
1596
1541
  * provider holder scan: the list a Pick of the Day shows, for any market.
1597
1542
  * `params.outcome` (`yes` | `no` | `all`), `params.min_grade` (`S` | `A` |
1598
- * `B`), `params.limit` and `params.cursor` (`mh_` prefix). The page carries
1543
+ * `B`), `params.limit` and `params.cursor` (the previous page's opaque `next_cursor`). The page carries
1599
1544
  * the `market`, `scan` and roster `totals` beside `data`; `total` is the
1600
1545
  * count matching the filters across every page.
1601
1546
  */
@@ -1636,32 +1581,7 @@ export declare class OxinsiderApiClient {
1636
1581
  }, "meta"> & {
1637
1582
  meta: ClientMeta<ResponseMeta>;
1638
1583
  }>;
1639
- /**
1640
- * @deprecated Use `getSuspiciousTrade()`; renamed in #16301. This method
1641
- * keeps calling the deprecated `GET /api/v1/insider-radar/{id}`, which stays
1642
- * live with no retirement date and still answers `object: "radar_flag"`, so
1643
- * an integration branching on that envelope keeps working.
1644
- */
1645
- getInsiderRadarFlag(id: OperationPath["getInsiderRadarFlag"]["id"], options?: ConvenienceOptions): Promise<OperationResult<"getInsiderRadarFlag">>;
1646
- /**
1647
- * @deprecated Use `listSuspiciousTrades()`; renamed in #16301. This method
1648
- * keeps calling the deprecated `GET /api/v1/insider-radar`, which stays live
1649
- * with no retirement date and answers with `Deprecation` plus a `Link
1650
- * rel="successor-version"` header.
1651
- */
1652
- listInsiderRadar(params?: InsiderRadarListParams, options?: ConvenienceOptions): Promise<Omit<{
1653
- object: "list";
1654
- data: OperationData["listInsiderRadar"];
1655
- has_more: boolean;
1656
- next_cursor?: string;
1657
- total?: number;
1658
- meta: ResponseMeta;
1659
- }, "meta"> & {
1660
- meta: ClientMeta<ResponseMeta>;
1661
- }>;
1662
1584
  getLargeTrade(id: OperationPath["getLargeTrade"]["id"], options?: ConvenienceOptions): Promise<OperationResult<"getLargeTrade">>;
1663
- /** @deprecated Use {@link getLargeTrade} (#16304); calls the deprecated `/api/v1/whale-trades/{id}`. */
1664
- getWhaleTrade(id: OperationPath["getWhaleTrade"]["id"], options?: ConvenienceOptions): Promise<OperationResult<"getWhaleTrade">>;
1665
1585
  /**
1666
1586
  * Cancel a submitted export (`POST /api/v1/trader/{address}/export/cancel`, #16254).
1667
1587
  *
@@ -1734,11 +1654,6 @@ export declare class OxinsiderApiClient {
1734
1654
  * Public: needs no API key.
1735
1655
  */
1736
1656
  getCoverage(options?: ConvenienceOptions): Promise<OperationResult<"getCoverage">>;
1737
- /**
1738
- * @deprecated Use {@link getCoverage} (#16315); calls the deprecated
1739
- * `GET /api/v1/platforms`, which serves the same body.
1740
- */
1741
- getPlatforms(options?: ConvenienceOptions): Promise<OperationResult<"getPlatforms">>;
1742
1657
  getAccountIdentity(options?: ConvenienceOptions): Promise<OperationResult<"getAccountIdentity">>;
1743
1658
  /**
1744
1659
  * One wallet's context as Markdown, ready to paste into a model prompt