pmxt-core 2.47.0 → 2.48.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 (67) hide show
  1. package/dist/BaseExchange.d.ts +42 -1
  2. package/dist/BaseExchange.js +29 -2
  3. package/dist/exchanges/baozi/index.d.ts +1 -0
  4. package/dist/exchanges/baozi/index.js +5 -0
  5. package/dist/exchanges/gemini-titan/index.d.ts +6 -2
  6. package/dist/exchanges/gemini-titan/index.js +81 -1
  7. package/dist/exchanges/gemini-titan/normalizer.d.ts +7 -1
  8. package/dist/exchanges/gemini-titan/normalizer.js +23 -0
  9. package/dist/exchanges/hyperliquid/index.d.ts +3 -0
  10. package/dist/exchanges/hyperliquid/index.js +7 -0
  11. package/dist/exchanges/kalshi/api.d.ts +1 -1
  12. package/dist/exchanges/kalshi/api.js +1 -1
  13. package/dist/exchanges/kalshi/fetcher.d.ts +10 -0
  14. package/dist/exchanges/kalshi/fetcher.js +36 -0
  15. package/dist/exchanges/kalshi/index.d.ts +3 -2
  16. package/dist/exchanges/kalshi/index.js +33 -0
  17. package/dist/exchanges/kalshi/normalizer.d.ts +3 -2
  18. package/dist/exchanges/kalshi/normalizer.js +14 -0
  19. package/dist/exchanges/limitless/api.d.ts +1 -1
  20. package/dist/exchanges/limitless/api.js +1 -1
  21. package/dist/exchanges/limitless/index.d.ts +1 -0
  22. package/dist/exchanges/limitless/index.js +5 -0
  23. package/dist/exchanges/metaculus/fetchEvents.js +4 -0
  24. package/dist/exchanges/metaculus/index.d.ts +3 -0
  25. package/dist/exchanges/metaculus/index.js +3 -0
  26. package/dist/exchanges/myriad/api.d.ts +1 -1
  27. package/dist/exchanges/myriad/api.js +1 -1
  28. package/dist/exchanges/myriad/index.d.ts +1 -0
  29. package/dist/exchanges/myriad/index.js +5 -0
  30. package/dist/exchanges/opinion/api.d.ts +1 -1
  31. package/dist/exchanges/opinion/api.js +1 -1
  32. package/dist/exchanges/opinion/index.d.ts +6 -2
  33. package/dist/exchanges/opinion/index.js +54 -1
  34. package/dist/exchanges/opinion/normalizer.d.ts +8 -2
  35. package/dist/exchanges/opinion/normalizer.js +16 -0
  36. package/dist/exchanges/polymarket/api-clob.d.ts +1 -1
  37. package/dist/exchanges/polymarket/api-clob.js +1 -1
  38. package/dist/exchanges/polymarket/api-data.d.ts +1 -1
  39. package/dist/exchanges/polymarket/api-data.js +1 -1
  40. package/dist/exchanges/polymarket/api-gamma.d.ts +1 -1
  41. package/dist/exchanges/polymarket/api-gamma.js +1 -1
  42. package/dist/exchanges/polymarket/index.d.ts +13 -2
  43. package/dist/exchanges/polymarket/index.js +49 -0
  44. package/dist/exchanges/polymarket/normalizer.d.ts +2 -1
  45. package/dist/exchanges/polymarket/normalizer.js +33 -0
  46. package/dist/exchanges/polymarket_us/index.d.ts +3 -2
  47. package/dist/exchanges/polymarket_us/index.js +57 -0
  48. package/dist/exchanges/polymarket_us/normalizer.d.ts +9 -2
  49. package/dist/exchanges/polymarket_us/normalizer.js +27 -0
  50. package/dist/exchanges/probable/api.d.ts +1 -1
  51. package/dist/exchanges/probable/api.js +1 -1
  52. package/dist/exchanges/probable/index.d.ts +3 -0
  53. package/dist/exchanges/probable/index.js +7 -0
  54. package/dist/exchanges/smarkets/index.d.ts +1 -0
  55. package/dist/exchanges/smarkets/index.js +5 -0
  56. package/dist/exchanges/suibets/index.d.ts +1 -0
  57. package/dist/exchanges/suibets/index.js +5 -0
  58. package/dist/router/Router.d.ts +29 -2
  59. package/dist/router/Router.js +145 -0
  60. package/dist/router/index.d.ts +1 -0
  61. package/dist/router/index.js +1 -0
  62. package/dist/router/series-map.d.ts +32 -0
  63. package/dist/router/series-map.js +146 -0
  64. package/dist/server/method-verbs.json +10 -0
  65. package/dist/server/openapi.yaml +118 -0
  66. package/dist/types.d.ts +31 -0
  67. package/package.json +3 -3
package/dist/types.d.ts CHANGED
@@ -90,6 +90,37 @@ export interface UnifiedMarket {
90
90
  /** Convenience accessor for the DOWN outcome on a binary market. */
91
91
  down?: MarketOutcome;
92
92
  }
93
+ /**
94
+ * A recurring grouping of events on a venue — the fourth tier above
95
+ * Event -> Market -> Outcome. Examples: Kalshi `KXATPMATCH` (every ATP
96
+ * tennis match), Polymarket `wta` (every WTA match), Opinion's daily
97
+ * `collection`. Series only exists where the venue exposes a recurring-event
98
+ * concept; venues without one return an empty array from `fetchSeries`.
99
+ */
100
+ export interface UnifiedSeries {
101
+ /** Stable venue-native series identifier (e.g. "KXATPMATCH" on Kalshi, "atp" on Polymarket Gamma, numeric Gamma id). */
102
+ id: string;
103
+ /** Venue-native ticker, when distinct from `id`. */
104
+ ticker?: string;
105
+ /** Venue-native slug. */
106
+ slug?: string;
107
+ /** Human-readable series title (e.g. "ATP Match Winner", "WTA"). */
108
+ title: string;
109
+ /** Long-form series description. */
110
+ description?: string | null;
111
+ /** Recurrence cadence the venue reports ('daily', 'weekly', 'annual', ...). */
112
+ recurrence?: string | null;
113
+ /** Child events. Populated when fetched by id; the list form usually omits this to keep payloads small. */
114
+ events?: UnifiedEvent[];
115
+ /** Canonical venue URL for the series. */
116
+ url?: string | null;
117
+ /** Venue-hosted image. */
118
+ image?: string | null;
119
+ /** The exchange this series originates from. Populated by the Router. */
120
+ sourceExchange?: string;
121
+ /** Raw venue-specific fields not promoted to first-class columns. */
122
+ sourceMetadata?: Record<string, unknown>;
123
+ }
93
124
  /**
94
125
  * Candle interval for OHLCV data.
95
126
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pmxt-core",
3
- "version": "2.47.0",
3
+ "version": "2.48.0",
4
4
  "description": "pmxt is a unified prediction market data API. The ccxt for prediction markets.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -29,8 +29,8 @@
29
29
  "test": "jest -c jest.config.js",
30
30
  "server": "tsx watch src/server/index.ts",
31
31
  "server:prod": "node dist/server/index.js",
32
- "generate:sdk:python": "npx @openapitools/openapi-generator-cli generate -i src/server/openapi.yaml -g python -o ../sdks/python/generated --package-name pmxt_internal --additional-properties=projectName=pmxt-internal,packageVersion=2.47.0,library=urllib3",
33
- "generate:sdk:typescript": "npx @openapitools/openapi-generator-cli generate -i src/server/openapi.yaml -g typescript-fetch -o ../sdks/typescript/generated --additional-properties=npmName=pmxtjs,npmVersion=2.47.0,supportsES6=true,typescriptThreePlus=true && node ../sdks/typescript/scripts/fix-generated.js",
32
+ "generate:sdk:python": "npx @openapitools/openapi-generator-cli generate -i src/server/openapi.yaml -g python -o ../sdks/python/generated --package-name pmxt_internal --additional-properties=projectName=pmxt-internal,packageVersion=2.48.0,library=urllib3",
33
+ "generate:sdk:typescript": "npx @openapitools/openapi-generator-cli generate -i src/server/openapi.yaml -g typescript-fetch -o ../sdks/typescript/generated --additional-properties=npmName=pmxtjs,npmVersion=2.48.0,supportsES6=true,typescriptThreePlus=true && node ../sdks/typescript/scripts/fix-generated.js",
34
34
  "fetch:openapi": "node scripts/fetch-openapi-specs.js",
35
35
  "extract:jsdoc": "node ../scripts/extract-jsdoc.js",
36
36
  "generate:docs": "npm run extract:jsdoc && node ../scripts/generate-api-docs.js",