@catalyst-team/poly-sdk 0.4.3 → 0.4.5
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.
- package/dist/src/core/order-status.d.ts +159 -0
- package/dist/src/core/order-status.d.ts.map +1 -0
- package/dist/src/core/order-status.js +254 -0
- package/dist/src/core/order-status.js.map +1 -0
- package/dist/src/core/types.d.ts +124 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js +120 -0
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +6 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/services/ctf-detector.d.ts +215 -0
- package/dist/src/services/ctf-detector.d.ts.map +1 -0
- package/dist/src/services/ctf-detector.js +420 -0
- package/dist/src/services/ctf-detector.js.map +1 -0
- package/dist/src/services/ctf-manager.d.ts +202 -0
- package/dist/src/services/ctf-manager.d.ts.map +1 -0
- package/dist/src/services/ctf-manager.js +542 -0
- package/dist/src/services/ctf-manager.js.map +1 -0
- package/dist/src/services/order-manager.d.ts +281 -0
- package/dist/src/services/order-manager.d.ts.map +1 -0
- package/dist/src/services/order-manager.js +641 -0
- package/dist/src/services/order-manager.js.map +1 -0
- package/dist/src/services/order-manager.test.d.ts +8 -0
- package/dist/src/services/order-manager.test.d.ts.map +1 -0
- package/dist/src/services/order-manager.test.js +477 -0
- package/dist/src/services/order-manager.test.js.map +1 -0
- package/dist/src/services/trading-service.d.ts +89 -1
- package/dist/src/services/trading-service.d.ts.map +1 -1
- package/dist/src/services/trading-service.js +227 -1
- package/dist/src/services/trading-service.js.map +1 -1
- package/package.json +1 -1
package/dist/src/core/types.js
CHANGED
|
@@ -1,6 +1,126 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Common types used across the SDK
|
|
3
3
|
*/
|
|
4
|
+
/**
|
|
5
|
+
* ============================================================================
|
|
6
|
+
* Order Status - Internal State Management
|
|
7
|
+
* ============================================================================
|
|
8
|
+
*
|
|
9
|
+
* This SDK uses a 7-state enum for detailed order lifecycle tracking.
|
|
10
|
+
* Polymarket CLOB API returns 4 states which are mapped to these internal states.
|
|
11
|
+
*
|
|
12
|
+
* State Flow (Happy Path):
|
|
13
|
+
* ┌────────┐ submit ┌──────┐ match ┌─────────────────┐ full fill ┌────────┐
|
|
14
|
+
* │pending │ ───────────> │ open │ ─────────> │partially_filled │ ──────────────> │ filled │
|
|
15
|
+
* └────────┘ └──────┘ └─────────────────┘ └────────┘
|
|
16
|
+
*
|
|
17
|
+
* State Flow (Cancellation Path):
|
|
18
|
+
* ┌────────┐ ┌───────────┐
|
|
19
|
+
* │pending │ ─── reject ──> │ rejected │
|
|
20
|
+
* └────────┘ └───────────┘
|
|
21
|
+
* │
|
|
22
|
+
* │ ┌──────┐ ┌───────────┐
|
|
23
|
+
* └─>│ open │ ─── cancel ──> │cancelled │
|
|
24
|
+
* └──────┘ └───────────┘
|
|
25
|
+
* │
|
|
26
|
+
* └─── expire ──────> ┌──────────┐
|
|
27
|
+
* │ expired │
|
|
28
|
+
* └──────────┘
|
|
29
|
+
*
|
|
30
|
+
* State Mapping (Polymarket API → Internal):
|
|
31
|
+
* - API "live" → open (order in orderbook, no fills)
|
|
32
|
+
* - API "matched" → partially_filled (some fills) OR filled (fully filled)
|
|
33
|
+
* - API "delayed" → pending (order submitted but not yet in orderbook)
|
|
34
|
+
* - API "cancelled" → cancelled
|
|
35
|
+
* - API "expired" → expired (if GTD order expires)
|
|
36
|
+
* - (rejection) → rejected (order failed validation, not in API)
|
|
37
|
+
*
|
|
38
|
+
* Terminal States: filled, cancelled, expired, rejected
|
|
39
|
+
* Active States: pending, open, partially_filled
|
|
40
|
+
*
|
|
41
|
+
* @see https://docs.polymarket.com/#tag/Orders (Polymarket order states)
|
|
42
|
+
* @see https://docs.polymarket.com/developers/CLOB/order-lifecycle (Order lifecycle)
|
|
43
|
+
*/
|
|
44
|
+
export var OrderStatus;
|
|
45
|
+
(function (OrderStatus) {
|
|
46
|
+
/**
|
|
47
|
+
* pending - Order created locally but not yet submitted to exchange
|
|
48
|
+
*
|
|
49
|
+
* Transitions:
|
|
50
|
+
* - → open (submission successful)
|
|
51
|
+
* - → rejected (submission failed)
|
|
52
|
+
*
|
|
53
|
+
* Use case: Pre-submission validation, rate limiting queue
|
|
54
|
+
*/
|
|
55
|
+
OrderStatus["PENDING"] = "pending";
|
|
56
|
+
/**
|
|
57
|
+
* open - Order submitted and active in orderbook, no fills yet
|
|
58
|
+
*
|
|
59
|
+
* Polymarket API status: "live"
|
|
60
|
+
* Transitions:
|
|
61
|
+
* - → partially_filled (first fill received)
|
|
62
|
+
* - → filled (immediate full fill, rare)
|
|
63
|
+
* - → cancelled (user cancels)
|
|
64
|
+
* - → expired (GTD order expires)
|
|
65
|
+
*
|
|
66
|
+
* Use case: Active maker orders, liquidity provision
|
|
67
|
+
*/
|
|
68
|
+
OrderStatus["OPEN"] = "open";
|
|
69
|
+
/**
|
|
70
|
+
* partially_filled - Order has received some fills but not complete
|
|
71
|
+
*
|
|
72
|
+
* Polymarket API status: "matched" (size_matched > 0 && size_matched < original_size)
|
|
73
|
+
* Transitions:
|
|
74
|
+
* - → filled (remaining size filled)
|
|
75
|
+
* - → cancelled (user cancels remaining)
|
|
76
|
+
* - → expired (GTD order expires with remaining)
|
|
77
|
+
*
|
|
78
|
+
* Use case: Large orders filling incrementally
|
|
79
|
+
*/
|
|
80
|
+
OrderStatus["PARTIALLY_FILLED"] = "partially_filled";
|
|
81
|
+
/**
|
|
82
|
+
* filled - Order completely filled
|
|
83
|
+
*
|
|
84
|
+
* Polymarket API status: "matched" (size_matched == original_size)
|
|
85
|
+
* Terminal state: No further transitions
|
|
86
|
+
*
|
|
87
|
+
* Use case: Successful order completion
|
|
88
|
+
*/
|
|
89
|
+
OrderStatus["FILLED"] = "filled";
|
|
90
|
+
/**
|
|
91
|
+
* cancelled - Order cancelled by user or system
|
|
92
|
+
*
|
|
93
|
+
* Polymarket API status: "cancelled"
|
|
94
|
+
* Terminal state: No further transitions
|
|
95
|
+
*
|
|
96
|
+
* Use case: User cancellation, strategy stop, position limit reached
|
|
97
|
+
*/
|
|
98
|
+
OrderStatus["CANCELLED"] = "cancelled";
|
|
99
|
+
/**
|
|
100
|
+
* expired - GTD order expired before completion
|
|
101
|
+
*
|
|
102
|
+
* Polymarket API status: "expired" (or inferred from expiration timestamp)
|
|
103
|
+
* Terminal state: No further transitions
|
|
104
|
+
*
|
|
105
|
+
* Use case: Time-limited orders
|
|
106
|
+
*/
|
|
107
|
+
OrderStatus["EXPIRED"] = "expired";
|
|
108
|
+
/**
|
|
109
|
+
* rejected - Order rejected during submission (never reached exchange)
|
|
110
|
+
*
|
|
111
|
+
* Not returned by Polymarket API (local state only)
|
|
112
|
+
* Terminal state: No further transitions
|
|
113
|
+
*
|
|
114
|
+
* Common reasons:
|
|
115
|
+
* - Below minimum size/value ($1, 5 shares)
|
|
116
|
+
* - Invalid price (out of tick size)
|
|
117
|
+
* - Insufficient balance
|
|
118
|
+
* - API validation error
|
|
119
|
+
*
|
|
120
|
+
* Use case: Pre-flight validation failures
|
|
121
|
+
*/
|
|
122
|
+
OrderStatus["REJECTED"] = "rejected";
|
|
123
|
+
})(OrderStatus || (OrderStatus = {}));
|
|
4
124
|
/**
|
|
5
125
|
* Get binary tokens from a market's token array
|
|
6
126
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoBH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,CAAN,IAAY,WAoFX;AApFD,WAAY,WAAW;IACrB;;;;;;;;OAQG;IACH,kCAAmB,CAAA;IAEnB;;;;;;;;;;;OAWG;IACH,4BAAa,CAAA;IAEb;;;;;;;;;;OAUG;IACH,oDAAqC,CAAA;IAErC;;;;;;;OAOG;IACH,gCAAiB,CAAA;IAEjB;;;;;;;OAOG;IACH,sCAAuB,CAAA;IAEvB;;;;;;;OAOG;IACH,kCAAmB,CAAA;IAEnB;;;;;;;;;;;;;OAaG;IACH,oCAAqB,CAAA;AACvB,CAAC,EApFW,WAAW,KAAX,WAAW,QAoFtB;AAodD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,eAAe,CAAC,MAAqB;IACnD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QACpB,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,MAAM,UAAU,aAAa,CAAC,QAAuB;IACnD,MAAM,GAAG,GAAkC;QACzC,IAAI,EAAE,CAAC,GAAG,IAAI;QACd,IAAI,EAAE,CAAC,GAAG,IAAI;QACd,KAAK,EAAE,EAAE,GAAG,IAAI;QAChB,KAAK,EAAE,EAAE,GAAG,IAAI;QAChB,IAAI,EAAE,EAAE,GAAG,IAAI;QACf,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;QACnB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACrB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACrB,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;QACpB,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QACxB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;QAC1B,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;KAC1B,CAAC;IACF,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC;AACvB,CAAC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export { RateLimiter, ApiType } from './core/rate-limiter.js';
|
|
|
11
11
|
export { Cache, CACHE_TTL } from './core/cache.js';
|
|
12
12
|
export { PolymarketError, ErrorCode, withRetry } from './core/errors.js';
|
|
13
13
|
export * from './core/types.js';
|
|
14
|
+
export { mapApiStatusToInternal, mapInternalStatusToApi, isActiveStatus, isTerminalStatus, isOrderOpen, isOrderFilled, canOrderBeCancelled, calculateOrderProgress, isValidStatusTransition, getStatusDescription, } from './core/order-status.js';
|
|
14
15
|
export type { UnifiedCache } from './core/unified-cache.js';
|
|
15
16
|
export { createUnifiedCache } from './core/unified-cache.js';
|
|
16
17
|
export { DataApiClient } from './clients/data-api.js';
|
|
@@ -43,6 +44,10 @@ export { BinanceService } from './services/binance-service.js';
|
|
|
43
44
|
export type { BinanceKLine, BinanceSymbol, BinanceInterval, BinanceKLineOptions, } from './services/binance-service.js';
|
|
44
45
|
export { TradingService, POLYGON_MAINNET, POLYGON_AMOY, MIN_ORDER_VALUE_USDC, MIN_ORDER_SIZE_SHARES, } from './services/trading-service.js';
|
|
45
46
|
export type { TradingServiceConfig, ApiCredentials, LimitOrderParams, MarketOrderParams, Order, OrderResult, TradeInfo, UserEarning, MarketReward, } from './services/trading-service.js';
|
|
47
|
+
export { CTFManager } from './services/ctf-manager.js';
|
|
48
|
+
export type { CTFManagerConfig, CTFEvent, SplitEvent, MergeEvent, RedeemEvent, CTFOperationType as CTFManagerOperationType, } from './services/ctf-manager.js';
|
|
49
|
+
export { OrderManager } from './services/order-manager.js';
|
|
50
|
+
export type { OrderManagerConfig, OrderMetadata, OrderStatusChangeEvent, FillEvent, TransactionEvent, SettlementEvent, CancelEvent, ExpireEvent, RejectEvent, } from './services/order-manager.js';
|
|
46
51
|
export type { Market, MarketToken, PricePoint, PriceHistoryParams, PriceHistoryIntervalString, } from './services/market-service.js';
|
|
47
52
|
export { CTFClient, CTF_CONTRACT, USDC_CONTRACT, // USDC.e (0x2791...) - Required for CTF
|
|
48
53
|
NATIVE_USDC_CONTRACT, // Native USDC (0x3c49...) - NOT for CTF
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -12,6 +12,8 @@ export { RateLimiter, ApiType } from './core/rate-limiter.js';
|
|
|
12
12
|
export { Cache, CACHE_TTL } from './core/cache.js';
|
|
13
13
|
export { PolymarketError, ErrorCode, withRetry } from './core/errors.js';
|
|
14
14
|
export * from './core/types.js';
|
|
15
|
+
// Order status utilities
|
|
16
|
+
export { mapApiStatusToInternal, mapInternalStatusToApi, isActiveStatus, isTerminalStatus, isOrderOpen, isOrderFilled, canOrderBeCancelled, calculateOrderProgress, isValidStatusTransition, getStatusDescription, } from './core/order-status.js';
|
|
15
17
|
export { createUnifiedCache } from './core/unified-cache.js';
|
|
16
18
|
// API Clients
|
|
17
19
|
export { DataApiClient } from './clients/data-api.js';
|
|
@@ -52,6 +54,10 @@ export { BinanceService } from './services/binance-service.js';
|
|
|
52
54
|
export { TradingService, POLYGON_MAINNET, POLYGON_AMOY,
|
|
53
55
|
// Polymarket order minimum requirements
|
|
54
56
|
MIN_ORDER_VALUE_USDC, MIN_ORDER_SIZE_SHARES, } from './services/trading-service.js';
|
|
57
|
+
// CTFManager - CTF operations + event monitoring (Recommended)
|
|
58
|
+
export { CTFManager } from './services/ctf-manager.js';
|
|
59
|
+
// OrderManager - Unified order creation + lifecycle monitoring
|
|
60
|
+
export { OrderManager } from './services/order-manager.js';
|
|
55
61
|
// TradingClient (legacy) has been removed - use TradingService instead
|
|
56
62
|
// TradingService provides all trading functionality with proper type exports
|
|
57
63
|
// CTF (Conditional Token Framework)
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,sBAAsB;AACtB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzE,cAAc,iBAAiB,CAAC;AAIhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,cAAc;AACd,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAwBtD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAOxD,8DAA8D;AAC9D,qEAAqE;AAErE,8CAA8C;AAC9C,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAsB3E,WAAW;AACX,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAkB7D,OAAO,EAAE,aAAa,EAAE,aAAa,IAAI,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGpG,oEAAoE;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AA0BtE,4EAA4E;AAE5E,+EAA+E;AAC/E,qDAAqD;AACrD,+EAA+E;AAE/E,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAuB7B,+EAA+E;AAC/E,2DAA2D;AAC3D,+EAA+E;AAE/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAgB7D,sDAAsD;AACtD,+EAA+E;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAoB/D,0CAA0C;AAC1C,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAqClD,2FAA2F;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAsBnE,6DAA6D;AAC7D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,mCAAmC,CAAC;AA0C3C,2DAA2D;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAwB9D,wDAAwD;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAQ/D,mDAAmD;AACnD,OAAO,EACL,cAAc,EACd,eAAe,EACf,YAAY;AACZ,wCAAwC;AACxC,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CTF Detector
|
|
3
|
+
*
|
|
4
|
+
* Monitors Conditional Token Framework (CTF) operations:
|
|
5
|
+
* - Split: USDC → YES + NO tokens
|
|
6
|
+
* - Merge: YES + NO tokens → USDC
|
|
7
|
+
* - Redeem: Winning token → USDC (after market resolution)
|
|
8
|
+
*
|
|
9
|
+
* Detection Methods:
|
|
10
|
+
* - WebSocket: ERC1155 Transfer events (primary, low-latency)
|
|
11
|
+
* - Polling: Balance changes (backup, reliable)
|
|
12
|
+
*
|
|
13
|
+
* ERC1155 Transfer Event Patterns:
|
|
14
|
+
* - Split: Transfer(from=0x0, to=user, tokenId=YES/NO, amount)
|
|
15
|
+
* - Merge: Transfer(from=user, to=0x0, tokenId=YES/NO, amount)
|
|
16
|
+
* - Redeem: Transfer(from=user, to=0x0, tokenId=winningToken, amount)
|
|
17
|
+
*
|
|
18
|
+
* Usage:
|
|
19
|
+
* ```ts
|
|
20
|
+
* const detector = new CTFDetector({
|
|
21
|
+
* privateKey: '0x...',
|
|
22
|
+
* market: { conditionId, primaryTokenId, secondaryTokenId },
|
|
23
|
+
* mode: 'hybrid',
|
|
24
|
+
* });
|
|
25
|
+
*
|
|
26
|
+
* detector.on('split', (operation) => console.log('Split detected:', operation));
|
|
27
|
+
* detector.on('merge', (operation) => console.log('Merge detected:', operation));
|
|
28
|
+
* detector.on('redeem', (operation) => console.log('Redeem detected:', operation));
|
|
29
|
+
*
|
|
30
|
+
* await detector.start();
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
import { EventEmitter } from 'events';
|
|
34
|
+
/**
|
|
35
|
+
* Detection mode
|
|
36
|
+
*/
|
|
37
|
+
export type DetectionMode = 'websocket' | 'polling' | 'hybrid';
|
|
38
|
+
/**
|
|
39
|
+
* CTF operation types
|
|
40
|
+
*/
|
|
41
|
+
export type CTFOperationType = 'split' | 'merge' | 'redeem';
|
|
42
|
+
/**
|
|
43
|
+
* CTF operation event base
|
|
44
|
+
*/
|
|
45
|
+
interface CTFOperationBase {
|
|
46
|
+
/** Operation type */
|
|
47
|
+
type: CTFOperationType;
|
|
48
|
+
/** User address */
|
|
49
|
+
userAddress: string;
|
|
50
|
+
/** Market condition ID */
|
|
51
|
+
conditionId: string;
|
|
52
|
+
/** Amount of tokens involved */
|
|
53
|
+
amount: string;
|
|
54
|
+
/** Timestamp */
|
|
55
|
+
timestamp: number;
|
|
56
|
+
/** Transaction hash (if available) */
|
|
57
|
+
transactionHash?: string;
|
|
58
|
+
/** Block number (if available) */
|
|
59
|
+
blockNumber?: number;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Split operation event
|
|
63
|
+
* USDC → YES + NO tokens
|
|
64
|
+
*/
|
|
65
|
+
export interface SplitOperation extends CTFOperationBase {
|
|
66
|
+
type: 'split';
|
|
67
|
+
/** Primary (YES) token ID */
|
|
68
|
+
primaryTokenId: string;
|
|
69
|
+
/** Secondary (NO) token ID */
|
|
70
|
+
secondaryTokenId: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Merge operation event
|
|
74
|
+
* YES + NO tokens → USDC
|
|
75
|
+
*/
|
|
76
|
+
export interface MergeOperation extends CTFOperationBase {
|
|
77
|
+
type: 'merge';
|
|
78
|
+
/** Primary (YES) token ID */
|
|
79
|
+
primaryTokenId: string;
|
|
80
|
+
/** Secondary (NO) token ID */
|
|
81
|
+
secondaryTokenId: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Redeem operation event
|
|
85
|
+
* Winning token → USDC (after market resolution)
|
|
86
|
+
*/
|
|
87
|
+
export interface RedeemOperation extends CTFOperationBase {
|
|
88
|
+
type: 'redeem';
|
|
89
|
+
/** Winning token ID */
|
|
90
|
+
winningTokenId: string;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* CTF operation union type
|
|
94
|
+
*/
|
|
95
|
+
export type CTFOperation = SplitOperation | MergeOperation | RedeemOperation;
|
|
96
|
+
/**
|
|
97
|
+
* CTF detector configuration
|
|
98
|
+
*/
|
|
99
|
+
export interface CTFDetectorConfig {
|
|
100
|
+
/** Private key for wallet */
|
|
101
|
+
privateKey: string;
|
|
102
|
+
/** Market info (conditionId, token IDs) */
|
|
103
|
+
market: {
|
|
104
|
+
conditionId: string;
|
|
105
|
+
primaryTokenId: string;
|
|
106
|
+
secondaryTokenId: string;
|
|
107
|
+
};
|
|
108
|
+
/** RPC URL for Polygon network (optional) */
|
|
109
|
+
rpcUrl?: string;
|
|
110
|
+
/** Detection mode (default: 'hybrid') */
|
|
111
|
+
mode?: 'websocket' | 'polling' | 'hybrid';
|
|
112
|
+
/** Polling interval in ms (default: 10000) */
|
|
113
|
+
pollInterval?: number;
|
|
114
|
+
/** Polling fallback delay in ms (default: 60000) */
|
|
115
|
+
pollFallbackDelay?: number;
|
|
116
|
+
/** Chain ID (default: 137 Polygon mainnet) */
|
|
117
|
+
chainId?: number;
|
|
118
|
+
/** Enable debug logging (default: false) */
|
|
119
|
+
debug?: boolean;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* CTF Detector
|
|
123
|
+
*
|
|
124
|
+
* Features:
|
|
125
|
+
* - WebSocket for low-latency detection (ERC1155 Transfer events)
|
|
126
|
+
* - Polling for reliability (balance changes)
|
|
127
|
+
* - Deduplication to prevent duplicate events
|
|
128
|
+
* - Hybrid mode for best reliability
|
|
129
|
+
*/
|
|
130
|
+
export declare class CTFDetector extends EventEmitter {
|
|
131
|
+
private config;
|
|
132
|
+
private tradingService;
|
|
133
|
+
private ctfClient;
|
|
134
|
+
private realtimeService;
|
|
135
|
+
private rateLimiter;
|
|
136
|
+
private subscription;
|
|
137
|
+
private pollTimer;
|
|
138
|
+
private fallbackTimer;
|
|
139
|
+
private running;
|
|
140
|
+
private lastBalanceSnapshot;
|
|
141
|
+
private processedOperations;
|
|
142
|
+
private lastWebSocketUpdate;
|
|
143
|
+
private websocketConnected;
|
|
144
|
+
constructor(config: CTFDetectorConfig);
|
|
145
|
+
/**
|
|
146
|
+
* Start CTF operation detection
|
|
147
|
+
*/
|
|
148
|
+
start(): Promise<void>;
|
|
149
|
+
/**
|
|
150
|
+
* Stop CTF operation detection
|
|
151
|
+
*/
|
|
152
|
+
stop(): void;
|
|
153
|
+
/**
|
|
154
|
+
* Start WebSocket subscription
|
|
155
|
+
*
|
|
156
|
+
* Note: Currently poly-sdk RealtimeServiceV2 supports user_order and user_trade events.
|
|
157
|
+
* ERC1155 Transfer events would require additional WebSocket channel support.
|
|
158
|
+
* For now, this is a placeholder for future implementation.
|
|
159
|
+
*/
|
|
160
|
+
private startWebSocket;
|
|
161
|
+
/**
|
|
162
|
+
* Wait for WebSocket connection
|
|
163
|
+
*/
|
|
164
|
+
private waitForConnection;
|
|
165
|
+
/**
|
|
166
|
+
* Start polling
|
|
167
|
+
*/
|
|
168
|
+
private startPolling;
|
|
169
|
+
/**
|
|
170
|
+
* Schedule fallback polling
|
|
171
|
+
*
|
|
172
|
+
* In hybrid mode, start polling after a delay if WebSocket hasn't received updates
|
|
173
|
+
*/
|
|
174
|
+
private scheduleFallbackPolling;
|
|
175
|
+
/**
|
|
176
|
+
* Poll for CTF operations by checking balance changes
|
|
177
|
+
*/
|
|
178
|
+
private pollForCTFOperations;
|
|
179
|
+
/**
|
|
180
|
+
* Update balance snapshot
|
|
181
|
+
*/
|
|
182
|
+
private updateBalanceSnapshot;
|
|
183
|
+
/**
|
|
184
|
+
* Detect split operation
|
|
185
|
+
*/
|
|
186
|
+
private detectSplit;
|
|
187
|
+
/**
|
|
188
|
+
* Detect merge operation
|
|
189
|
+
*/
|
|
190
|
+
private detectMerge;
|
|
191
|
+
/**
|
|
192
|
+
* Detect redeem operation
|
|
193
|
+
*/
|
|
194
|
+
private detectRedeem;
|
|
195
|
+
/**
|
|
196
|
+
* Get statistics
|
|
197
|
+
*/
|
|
198
|
+
getStats(): {
|
|
199
|
+
websocketConnected: boolean;
|
|
200
|
+
lastWebSocketUpdate: number;
|
|
201
|
+
lastBalanceCheck: number | null;
|
|
202
|
+
mode: DetectionMode;
|
|
203
|
+
processedOperations: number;
|
|
204
|
+
};
|
|
205
|
+
/**
|
|
206
|
+
* Log message (if debug enabled)
|
|
207
|
+
*/
|
|
208
|
+
private log;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Factory function to create CTFDetector
|
|
212
|
+
*/
|
|
213
|
+
export declare function createCTFDetector(config: CTFDetectorConfig): CTFDetector;
|
|
214
|
+
export {};
|
|
215
|
+
//# sourceMappingURL=ctf-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ctf-detector.d.ts","sourceRoot":"","sources":["../../../src/services/ctf-detector.ts"],"names":[],"mappings":"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"}
|