pmxtjs 2.35.7 → 2.35.9

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/dist/esm/generated/src/apis/DefaultApi.d.ts +196 -13
  2. package/dist/esm/generated/src/apis/DefaultApi.js +292 -13
  3. package/dist/esm/generated/src/models/FetchEventMatchesParams.d.ts +13 -1
  4. package/dist/esm/generated/src/models/FetchEventMatchesParams.js +4 -0
  5. package/dist/esm/generated/src/models/FetchMarketMatchesParams.d.ts +34 -1
  6. package/dist/esm/generated/src/models/FetchMarketMatchesParams.js +16 -0
  7. package/dist/esm/generated/src/models/FetchMatchedMarkets200Response.d.ts +46 -0
  8. package/dist/esm/generated/src/models/FetchMatchedMarkets200Response.js +47 -0
  9. package/dist/esm/generated/src/models/FetchMatchedMarketsParams.d.ts +61 -0
  10. package/dist/esm/generated/src/models/FetchMatchedMarketsParams.js +57 -0
  11. package/dist/esm/generated/src/models/MatchResult.d.ts +6 -0
  12. package/dist/esm/generated/src/models/MatchResult.js +2 -0
  13. package/dist/esm/generated/src/models/MatchedMarketPair.d.ts +98 -0
  14. package/dist/esm/generated/src/models/MatchedMarketPair.js +84 -0
  15. package/dist/esm/generated/src/models/index.d.ts +3 -0
  16. package/dist/esm/generated/src/models/index.js +3 -0
  17. package/dist/esm/pmxt/client.js +20 -0
  18. package/dist/generated/src/apis/DefaultApi.d.ts +196 -13
  19. package/dist/generated/src/apis/DefaultApi.js +293 -14
  20. package/dist/generated/src/models/FetchEventMatchesParams.d.ts +13 -1
  21. package/dist/generated/src/models/FetchEventMatchesParams.js +4 -0
  22. package/dist/generated/src/models/FetchMarketMatchesParams.d.ts +34 -1
  23. package/dist/generated/src/models/FetchMarketMatchesParams.js +17 -1
  24. package/dist/generated/src/models/FetchMatchedMarkets200Response.d.ts +46 -0
  25. package/dist/generated/src/models/FetchMatchedMarkets200Response.js +54 -0
  26. package/dist/generated/src/models/FetchMatchedMarketsParams.d.ts +61 -0
  27. package/dist/generated/src/models/FetchMatchedMarketsParams.js +65 -0
  28. package/dist/generated/src/models/MatchResult.d.ts +6 -0
  29. package/dist/generated/src/models/MatchResult.js +2 -0
  30. package/dist/generated/src/models/MatchedMarketPair.d.ts +98 -0
  31. package/dist/generated/src/models/MatchedMarketPair.js +92 -0
  32. package/dist/generated/src/models/index.d.ts +3 -0
  33. package/dist/generated/src/models/index.js +3 -0
  34. package/dist/pmxt/client.js +20 -0
  35. package/generated/.openapi-generator/FILES +6 -0
  36. package/generated/docs/DefaultApi.md +307 -21
  37. package/generated/docs/FetchEventMatchesParams.md +4 -0
  38. package/generated/docs/FetchMarketMatchesParams.md +8 -0
  39. package/generated/docs/FetchMatchedMarkets200Response.md +38 -0
  40. package/generated/docs/FetchMatchedMarketsParams.md +40 -0
  41. package/generated/docs/MatchResult.md +2 -0
  42. package/generated/docs/MatchedMarketPair.md +52 -0
  43. package/generated/package.json +1 -1
  44. package/generated/src/apis/DefaultApi.ts +408 -12
  45. package/generated/src/models/FetchEventMatchesParams.ts +17 -1
  46. package/generated/src/models/FetchMarketMatchesParams.ts +43 -1
  47. package/generated/src/models/FetchMatchedMarkets200Response.ts +96 -0
  48. package/generated/src/models/FetchMatchedMarketsParams.ts +103 -0
  49. package/generated/src/models/MatchResult.ts +8 -0
  50. package/generated/src/models/MatchedMarketPair.ts +166 -0
  51. package/generated/src/models/index.ts +3 -0
  52. package/package.json +2 -2
  53. package/pmxt/client.ts +28 -0
@@ -46,8 +46,8 @@ var __importStar = (this && this.__importStar) || (function () {
46
46
  };
47
47
  })();
48
48
  Object.defineProperty(exports, "__esModule", { value: true });
49
- exports.UnwatchAddressOperationExchangeEnum = exports.SubmitOrderOperationExchangeEnum = exports.LoadMarketsOperationExchangeEnum = exports.GetExecutionPriceDetailedOperationExchangeEnum = exports.GetExecutionPriceOperationExchangeEnum = exports.FilterMarketsOperationExchangeEnum = exports.FilterEventsOperationExchangeEnum = exports.FetchTradesExchangeEnum = exports.FetchPositionsExchangeEnum = exports.FetchOrderBookExchangeEnum = exports.FetchOrderExchangeEnum = exports.FetchOpenOrdersExchangeEnum = exports.FetchOHLCVResolutionEnum = exports.FetchOHLCVExchangeEnum = exports.FetchMyTradesExchangeEnum = exports.FetchMarketsPaginatedExchangeEnum = exports.FetchMarketsSearchInEnum = exports.FetchMarketsStatusEnum = exports.FetchMarketsSortEnum = exports.FetchMarketsExchangeEnum = exports.FetchMarketMatchesRelationEnum = exports.FetchMarketMatchesExchangeEnum = exports.FetchMarketSearchInEnum = exports.FetchMarketStatusEnum = exports.FetchMarketSortEnum = exports.FetchMarketExchangeEnum = exports.FetchHedgesRelationEnum = exports.FetchHedgesExchangeEnum = exports.FetchEventsPaginatedExchangeEnum = exports.FetchEventsSearchInEnum = exports.FetchEventsStatusEnum = exports.FetchEventsSortEnum = exports.FetchEventsExchangeEnum = exports.FetchEventMatchesRelationEnum = exports.FetchEventMatchesExchangeEnum = exports.FetchEventSearchInEnum = exports.FetchEventStatusEnum = exports.FetchEventSortEnum = exports.FetchEventExchangeEnum = exports.FetchClosedOrdersExchangeEnum = exports.FetchBalanceExchangeEnum = exports.FetchArbitrageRelationsEnum = exports.FetchArbitrageExchangeEnum = exports.FetchAllOrdersExchangeEnum = exports.CreateOrderOperationExchangeEnum = exports.CompareMarketPricesOperationExchangeEnum = exports.CloseOperationExchangeEnum = exports.CancelOrderOperationExchangeEnum = exports.BuildOrderOperationExchangeEnum = exports.DefaultApi = void 0;
50
- exports.WatchTradesOperationExchangeEnum = exports.WatchOrderBookOperationExchangeEnum = exports.WatchAddressOperationExchangeEnum = exports.UnwatchOrderBookOperationExchangeEnum = void 0;
49
+ exports.FetchRelatedMarketsRelationEnum = exports.FetchRelatedMarketsExchangeEnum = exports.FetchPositionsExchangeEnum = exports.FetchOrderBookExchangeEnum = exports.FetchOrderExchangeEnum = exports.FetchOpenOrdersExchangeEnum = exports.FetchOHLCVResolutionEnum = exports.FetchOHLCVExchangeEnum = exports.FetchMyTradesExchangeEnum = exports.FetchMatchedPricesRelationsEnum = exports.FetchMatchedPricesExchangeEnum = exports.FetchMatchedMarketsRelationsEnum = exports.FetchMatchedMarketsExchangeEnum = exports.FetchMarketsPaginatedExchangeEnum = exports.FetchMarketsSearchInEnum = exports.FetchMarketsStatusEnum = exports.FetchMarketsSortEnum = exports.FetchMarketsExchangeEnum = exports.FetchMarketMatchesSortEnum = exports.FetchMarketMatchesRelationEnum = exports.FetchMarketMatchesExchangeEnum = exports.FetchMarketSearchInEnum = exports.FetchMarketStatusEnum = exports.FetchMarketSortEnum = exports.FetchMarketExchangeEnum = exports.FetchHedgesSortEnum = exports.FetchHedgesRelationEnum = exports.FetchHedgesExchangeEnum = exports.FetchEventsPaginatedExchangeEnum = exports.FetchEventsSearchInEnum = exports.FetchEventsStatusEnum = exports.FetchEventsSortEnum = exports.FetchEventsExchangeEnum = exports.FetchEventMatchesRelationEnum = exports.FetchEventMatchesExchangeEnum = exports.FetchEventSearchInEnum = exports.FetchEventStatusEnum = exports.FetchEventSortEnum = exports.FetchEventExchangeEnum = exports.FetchClosedOrdersExchangeEnum = exports.FetchBalanceExchangeEnum = exports.FetchArbitrageRelationsEnum = exports.FetchArbitrageExchangeEnum = exports.FetchAllOrdersExchangeEnum = exports.CreateOrderOperationExchangeEnum = exports.CompareMarketPricesOperationExchangeEnum = exports.CloseOperationExchangeEnum = exports.CancelOrderOperationExchangeEnum = exports.BuildOrderOperationExchangeEnum = exports.DefaultApi = void 0;
50
+ exports.WatchTradesOperationExchangeEnum = exports.WatchOrderBookOperationExchangeEnum = exports.WatchAddressOperationExchangeEnum = exports.UnwatchOrderBookOperationExchangeEnum = exports.UnwatchAddressOperationExchangeEnum = exports.SubmitOrderOperationExchangeEnum = exports.LoadMarketsOperationExchangeEnum = exports.GetExecutionPriceDetailedOperationExchangeEnum = exports.GetExecutionPriceOperationExchangeEnum = exports.FilterMarketsOperationExchangeEnum = exports.FilterEventsOperationExchangeEnum = exports.FetchTradesExchangeEnum = exports.FetchRelatedMarketsSortEnum = void 0;
51
51
  const runtime = __importStar(require("../runtime"));
52
52
  const index_1 = require("../models/index");
53
53
  /**
@@ -246,8 +246,8 @@ class DefaultApi extends runtime.BaseAPI {
246
246
  return await response.value();
247
247
  }
248
248
  /**
249
- * Scan for arbitrage opportunities across venues. Finds identity matches where the same market is priced differently on different venues, returning opportunities sorted by spread size.
250
249
  * Find Arbitrage Opportunities
250
+ * @deprecated
251
251
  */
252
252
  async fetchArbitrageRaw(requestParameters, initOverrides) {
253
253
  if (requestParameters['exchange'] == null) {
@@ -278,8 +278,8 @@ class DefaultApi extends runtime.BaseAPI {
278
278
  return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.FetchArbitrage200ResponseFromJSON)(jsonValue));
279
279
  }
280
280
  /**
281
- * Scan for arbitrage opportunities across venues. Finds identity matches where the same market is priced differently on different venues, returning opportunities sorted by spread size.
282
281
  * Find Arbitrage Opportunities
282
+ * @deprecated
283
283
  */
284
284
  async fetchArbitrage(requestParameters, initOverrides) {
285
285
  const response = await this.fetchArbitrageRaw(requestParameters, initOverrides);
@@ -419,14 +419,20 @@ class DefaultApi extends runtime.BaseAPI {
419
419
  return await response.value();
420
420
  }
421
421
  /**
422
- * Find the same or related event on other venues. Given an event on one venue, discover semantically equivalent events across every other venue PMXT ingests including market-level match details for each child market.
423
- * Find Similar Events
422
+ * Find the same or related event on other venues. Two modes: **Lookup mode** (eventId/slug provided): Given an event on one venue, discover semantically equivalent events across every other venue PMXT ingests. **Browse mode** (no identifier): Returns all matched event pairs from the catalog. Supports query and category params for filtering.
423
+ * Event Matches
424
424
  */
425
425
  async fetchEventMatchesRaw(requestParameters, initOverrides) {
426
426
  if (requestParameters['exchange'] == null) {
427
427
  throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchEventMatches().');
428
428
  }
429
429
  const queryParameters = {};
430
+ if (requestParameters['query'] != null) {
431
+ queryParameters['query'] = requestParameters['query'];
432
+ }
433
+ if (requestParameters['category'] != null) {
434
+ queryParameters['category'] = requestParameters['category'];
435
+ }
430
436
  if (requestParameters['event'] != null) {
431
437
  queryParameters['event'] = requestParameters['event'];
432
438
  }
@@ -460,8 +466,8 @@ class DefaultApi extends runtime.BaseAPI {
460
466
  return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.FetchEventMatches200ResponseFromJSON)(jsonValue));
461
467
  }
462
468
  /**
463
- * Find the same or related event on other venues. Given an event on one venue, discover semantically equivalent events across every other venue PMXT ingests including market-level match details for each child market.
464
- * Find Similar Events
469
+ * Find the same or related event on other venues. Two modes: **Lookup mode** (eventId/slug provided): Given an event on one venue, discover semantically equivalent events across every other venue PMXT ingests. **Browse mode** (no identifier): Returns all matched event pairs from the catalog. Supports query and category params for filtering.
470
+ * Event Matches
465
471
  */
466
472
  async fetchEventMatches(requestParameters, initOverrides) {
467
473
  const response = await this.fetchEventMatchesRaw(requestParameters, initOverrides);
@@ -566,14 +572,20 @@ class DefaultApi extends runtime.BaseAPI {
566
572
  return await response.value();
567
573
  }
568
574
  /**
569
- * Find hedging opportunities across venues. Discovers subset/superset market relationships where one market\'s outcome implies another, enabling cross-venue hedging strategies with live prices.
570
575
  * Find Hedging Opportunities
576
+ * @deprecated
571
577
  */
572
578
  async fetchHedgesRaw(requestParameters, initOverrides) {
573
579
  if (requestParameters['exchange'] == null) {
574
580
  throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchHedges().');
575
581
  }
576
582
  const queryParameters = {};
583
+ if (requestParameters['query'] != null) {
584
+ queryParameters['query'] = requestParameters['query'];
585
+ }
586
+ if (requestParameters['category'] != null) {
587
+ queryParameters['category'] = requestParameters['category'];
588
+ }
577
589
  if (requestParameters['market'] != null) {
578
590
  queryParameters['market'] = requestParameters['market'];
579
591
  }
@@ -598,6 +610,12 @@ class DefaultApi extends runtime.BaseAPI {
598
610
  if (requestParameters['includePrices'] != null) {
599
611
  queryParameters['includePrices'] = requestParameters['includePrices'];
600
612
  }
613
+ if (requestParameters['minDifference'] != null) {
614
+ queryParameters['minDifference'] = requestParameters['minDifference'];
615
+ }
616
+ if (requestParameters['sort'] != null) {
617
+ queryParameters['sort'] = requestParameters['sort'];
618
+ }
601
619
  const headerParameters = {};
602
620
  let urlPath = `/api/{exchange}/fetchHedges`;
603
621
  urlPath = urlPath.replace(`{${"exchange"}}`, encodeURIComponent(String(requestParameters['exchange'])));
@@ -610,8 +628,8 @@ class DefaultApi extends runtime.BaseAPI {
610
628
  return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CompareMarketPrices200ResponseFromJSON)(jsonValue));
611
629
  }
612
630
  /**
613
- * Find hedging opportunities across venues. Discovers subset/superset market relationships where one market\'s outcome implies another, enabling cross-venue hedging strategies with live prices.
614
631
  * Find Hedging Opportunities
632
+ * @deprecated
615
633
  */
616
634
  async fetchHedges(requestParameters, initOverrides) {
617
635
  const response = await this.fetchHedgesRaw(requestParameters, initOverrides);
@@ -682,14 +700,20 @@ class DefaultApi extends runtime.BaseAPI {
682
700
  return await response.value();
683
701
  }
684
702
  /**
685
- * Find the same or related market on other venues. Given a market on one venue, discover semantically equivalent markets across every other venue PMXT ingests each with a relation type (identity, subset, superset, overlap, disjoint), confidence score, and reasoning.
686
- * Find Similar Markets
703
+ * Find the same or related market on other venues. Two modes: **Lookup mode** (marketId/slug/url provided): Given a market on one venue, discover semantically equivalent markets across every other venue PMXT ingests. **Browse mode** (no identifier): Returns all matched market pairs from the catalog. Supports query, category, minDifference, and sort params for filtering.
704
+ * Market Matches
687
705
  */
688
706
  async fetchMarketMatchesRaw(requestParameters, initOverrides) {
689
707
  if (requestParameters['exchange'] == null) {
690
708
  throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchMarketMatches().');
691
709
  }
692
710
  const queryParameters = {};
711
+ if (requestParameters['query'] != null) {
712
+ queryParameters['query'] = requestParameters['query'];
713
+ }
714
+ if (requestParameters['category'] != null) {
715
+ queryParameters['category'] = requestParameters['category'];
716
+ }
693
717
  if (requestParameters['market'] != null) {
694
718
  queryParameters['market'] = requestParameters['market'];
695
719
  }
@@ -714,6 +738,12 @@ class DefaultApi extends runtime.BaseAPI {
714
738
  if (requestParameters['includePrices'] != null) {
715
739
  queryParameters['includePrices'] = requestParameters['includePrices'];
716
740
  }
741
+ if (requestParameters['minDifference'] != null) {
742
+ queryParameters['minDifference'] = requestParameters['minDifference'];
743
+ }
744
+ if (requestParameters['sort'] != null) {
745
+ queryParameters['sort'] = requestParameters['sort'];
746
+ }
717
747
  const headerParameters = {};
718
748
  let urlPath = `/api/{exchange}/fetchMarketMatches`;
719
749
  urlPath = urlPath.replace(`{${"exchange"}}`, encodeURIComponent(String(requestParameters['exchange'])));
@@ -726,8 +756,8 @@ class DefaultApi extends runtime.BaseAPI {
726
756
  return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.FetchMarketMatches200ResponseFromJSON)(jsonValue));
727
757
  }
728
758
  /**
729
- * Find the same or related market on other venues. Given a market on one venue, discover semantically equivalent markets across every other venue PMXT ingests each with a relation type (identity, subset, superset, overlap, disjoint), confidence score, and reasoning.
730
- * Find Similar Markets
759
+ * Find the same or related market on other venues. Two modes: **Lookup mode** (marketId/slug/url provided): Given a market on one venue, discover semantically equivalent markets across every other venue PMXT ingests. **Browse mode** (no identifier): Returns all matched market pairs from the catalog. Supports query, category, minDifference, and sort params for filtering.
760
+ * Market Matches
731
761
  */
732
762
  async fetchMarketMatches(requestParameters, initOverrides) {
733
763
  const response = await this.fetchMarketMatchesRaw(requestParameters, initOverrides);
@@ -834,6 +864,86 @@ class DefaultApi extends runtime.BaseAPI {
834
864
  const response = await this.fetchMarketsPaginatedRaw(requestParameters, initOverrides);
835
865
  return await response.value();
836
866
  }
867
+ /**
868
+ * Matched Markets
869
+ * @deprecated
870
+ */
871
+ async fetchMatchedMarketsRaw(requestParameters, initOverrides) {
872
+ if (requestParameters['exchange'] == null) {
873
+ throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchMatchedMarkets().');
874
+ }
875
+ const queryParameters = {};
876
+ if (requestParameters['minDifference'] != null) {
877
+ queryParameters['minDifference'] = requestParameters['minDifference'];
878
+ }
879
+ if (requestParameters['category'] != null) {
880
+ queryParameters['category'] = requestParameters['category'];
881
+ }
882
+ if (requestParameters['limit'] != null) {
883
+ queryParameters['limit'] = requestParameters['limit'];
884
+ }
885
+ if (requestParameters['relations'] != null) {
886
+ queryParameters['relations'] = requestParameters['relations'];
887
+ }
888
+ const headerParameters = {};
889
+ let urlPath = `/api/{exchange}/fetchMatchedMarkets`;
890
+ urlPath = urlPath.replace(`{${"exchange"}}`, encodeURIComponent(String(requestParameters['exchange'])));
891
+ const response = await this.request({
892
+ path: urlPath,
893
+ method: 'GET',
894
+ headers: headerParameters,
895
+ query: queryParameters,
896
+ }, initOverrides);
897
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.FetchMatchedMarkets200ResponseFromJSON)(jsonValue));
898
+ }
899
+ /**
900
+ * Matched Markets
901
+ * @deprecated
902
+ */
903
+ async fetchMatchedMarkets(requestParameters, initOverrides) {
904
+ const response = await this.fetchMatchedMarketsRaw(requestParameters, initOverrides);
905
+ return await response.value();
906
+ }
907
+ /**
908
+ * Compare Matched Market Prices
909
+ * @deprecated
910
+ */
911
+ async fetchMatchedPricesRaw(requestParameters, initOverrides) {
912
+ if (requestParameters['exchange'] == null) {
913
+ throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchMatchedPrices().');
914
+ }
915
+ const queryParameters = {};
916
+ if (requestParameters['minDifference'] != null) {
917
+ queryParameters['minDifference'] = requestParameters['minDifference'];
918
+ }
919
+ if (requestParameters['category'] != null) {
920
+ queryParameters['category'] = requestParameters['category'];
921
+ }
922
+ if (requestParameters['limit'] != null) {
923
+ queryParameters['limit'] = requestParameters['limit'];
924
+ }
925
+ if (requestParameters['relations'] != null) {
926
+ queryParameters['relations'] = requestParameters['relations'];
927
+ }
928
+ const headerParameters = {};
929
+ let urlPath = `/api/{exchange}/fetchMatchedPrices`;
930
+ urlPath = urlPath.replace(`{${"exchange"}}`, encodeURIComponent(String(requestParameters['exchange'])));
931
+ const response = await this.request({
932
+ path: urlPath,
933
+ method: 'GET',
934
+ headers: headerParameters,
935
+ query: queryParameters,
936
+ }, initOverrides);
937
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.FetchMatchedMarkets200ResponseFromJSON)(jsonValue));
938
+ }
939
+ /**
940
+ * Compare Matched Market Prices
941
+ * @deprecated
942
+ */
943
+ async fetchMatchedPrices(requestParameters, initOverrides) {
944
+ const response = await this.fetchMatchedPricesRaw(requestParameters, initOverrides);
945
+ return await response.value();
946
+ }
837
947
  /**
838
948
  * Fetch My Trades
839
949
  */
@@ -1054,6 +1164,70 @@ class DefaultApi extends runtime.BaseAPI {
1054
1164
  const response = await this.fetchPositionsRaw(requestParameters, initOverrides);
1055
1165
  return await response.value();
1056
1166
  }
1167
+ /**
1168
+ * Find related markets across venues. Discovers subset/superset market relationships where one market\'s outcome implies another, with live prices.
1169
+ * Find Related Markets
1170
+ */
1171
+ async fetchRelatedMarketsRaw(requestParameters, initOverrides) {
1172
+ if (requestParameters['exchange'] == null) {
1173
+ throw new runtime.RequiredError('exchange', 'Required parameter "exchange" was null or undefined when calling fetchRelatedMarkets().');
1174
+ }
1175
+ const queryParameters = {};
1176
+ if (requestParameters['query'] != null) {
1177
+ queryParameters['query'] = requestParameters['query'];
1178
+ }
1179
+ if (requestParameters['category'] != null) {
1180
+ queryParameters['category'] = requestParameters['category'];
1181
+ }
1182
+ if (requestParameters['market'] != null) {
1183
+ queryParameters['market'] = requestParameters['market'];
1184
+ }
1185
+ if (requestParameters['marketId'] != null) {
1186
+ queryParameters['marketId'] = requestParameters['marketId'];
1187
+ }
1188
+ if (requestParameters['slug'] != null) {
1189
+ queryParameters['slug'] = requestParameters['slug'];
1190
+ }
1191
+ if (requestParameters['url'] != null) {
1192
+ queryParameters['url'] = requestParameters['url'];
1193
+ }
1194
+ if (requestParameters['relation'] != null) {
1195
+ queryParameters['relation'] = requestParameters['relation'];
1196
+ }
1197
+ if (requestParameters['minConfidence'] != null) {
1198
+ queryParameters['minConfidence'] = requestParameters['minConfidence'];
1199
+ }
1200
+ if (requestParameters['limit'] != null) {
1201
+ queryParameters['limit'] = requestParameters['limit'];
1202
+ }
1203
+ if (requestParameters['includePrices'] != null) {
1204
+ queryParameters['includePrices'] = requestParameters['includePrices'];
1205
+ }
1206
+ if (requestParameters['minDifference'] != null) {
1207
+ queryParameters['minDifference'] = requestParameters['minDifference'];
1208
+ }
1209
+ if (requestParameters['sort'] != null) {
1210
+ queryParameters['sort'] = requestParameters['sort'];
1211
+ }
1212
+ const headerParameters = {};
1213
+ let urlPath = `/api/{exchange}/fetchRelatedMarkets`;
1214
+ urlPath = urlPath.replace(`{${"exchange"}}`, encodeURIComponent(String(requestParameters['exchange'])));
1215
+ const response = await this.request({
1216
+ path: urlPath,
1217
+ method: 'GET',
1218
+ headers: headerParameters,
1219
+ query: queryParameters,
1220
+ }, initOverrides);
1221
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.CompareMarketPrices200ResponseFromJSON)(jsonValue));
1222
+ }
1223
+ /**
1224
+ * Find related markets across venues. Discovers subset/superset market relationships where one market\'s outcome implies another, with live prices.
1225
+ * Find Related Markets
1226
+ */
1227
+ async fetchRelatedMarkets(requestParameters, initOverrides) {
1228
+ const response = await this.fetchRelatedMarketsRaw(requestParameters, initOverrides);
1229
+ return await response.value();
1230
+ }
1057
1231
  /**
1058
1232
  * Fetch raw trade history for a specific outcome.
1059
1233
  * Fetch Trades
@@ -1769,6 +1943,14 @@ exports.FetchHedgesRelationEnum = {
1769
1943
  Overlap: 'overlap',
1770
1944
  Disjoint: 'disjoint'
1771
1945
  };
1946
+ /**
1947
+ * @export
1948
+ */
1949
+ exports.FetchHedgesSortEnum = {
1950
+ Confidence: 'confidence',
1951
+ Volume: 'volume',
1952
+ PriceDifference: 'priceDifference'
1953
+ };
1772
1954
  /**
1773
1955
  * @export
1774
1956
  */
@@ -1838,6 +2020,14 @@ exports.FetchMarketMatchesRelationEnum = {
1838
2020
  Overlap: 'overlap',
1839
2021
  Disjoint: 'disjoint'
1840
2022
  };
2023
+ /**
2024
+ * @export
2025
+ */
2026
+ exports.FetchMarketMatchesSortEnum = {
2027
+ Confidence: 'confidence',
2028
+ Volume: 'volume',
2029
+ PriceDifference: 'priceDifference'
2030
+ };
1841
2031
  /**
1842
2032
  * @export
1843
2033
  */
@@ -1897,6 +2087,60 @@ exports.FetchMarketsPaginatedExchangeEnum = {
1897
2087
  PolymarketUs: 'polymarket_us',
1898
2088
  Router: 'router'
1899
2089
  };
2090
+ /**
2091
+ * @export
2092
+ */
2093
+ exports.FetchMatchedMarketsExchangeEnum = {
2094
+ Polymarket: 'polymarket',
2095
+ Kalshi: 'kalshi',
2096
+ KalshiDemo: 'kalshi-demo',
2097
+ Limitless: 'limitless',
2098
+ Probable: 'probable',
2099
+ Baozi: 'baozi',
2100
+ Myriad: 'myriad',
2101
+ Opinion: 'opinion',
2102
+ Metaculus: 'metaculus',
2103
+ Smarkets: 'smarkets',
2104
+ PolymarketUs: 'polymarket_us',
2105
+ Router: 'router'
2106
+ };
2107
+ /**
2108
+ * @export
2109
+ */
2110
+ exports.FetchMatchedMarketsRelationsEnum = {
2111
+ Identity: 'identity',
2112
+ Subset: 'subset',
2113
+ Superset: 'superset',
2114
+ Overlap: 'overlap',
2115
+ Disjoint: 'disjoint'
2116
+ };
2117
+ /**
2118
+ * @export
2119
+ */
2120
+ exports.FetchMatchedPricesExchangeEnum = {
2121
+ Polymarket: 'polymarket',
2122
+ Kalshi: 'kalshi',
2123
+ KalshiDemo: 'kalshi-demo',
2124
+ Limitless: 'limitless',
2125
+ Probable: 'probable',
2126
+ Baozi: 'baozi',
2127
+ Myriad: 'myriad',
2128
+ Opinion: 'opinion',
2129
+ Metaculus: 'metaculus',
2130
+ Smarkets: 'smarkets',
2131
+ PolymarketUs: 'polymarket_us',
2132
+ Router: 'router'
2133
+ };
2134
+ /**
2135
+ * @export
2136
+ */
2137
+ exports.FetchMatchedPricesRelationsEnum = {
2138
+ Identity: 'identity',
2139
+ Subset: 'subset',
2140
+ Superset: 'superset',
2141
+ Overlap: 'overlap',
2142
+ Disjoint: 'disjoint'
2143
+ };
1900
2144
  /**
1901
2145
  * @export
1902
2146
  */
@@ -2010,6 +2254,41 @@ exports.FetchPositionsExchangeEnum = {
2010
2254
  PolymarketUs: 'polymarket_us',
2011
2255
  Router: 'router'
2012
2256
  };
2257
+ /**
2258
+ * @export
2259
+ */
2260
+ exports.FetchRelatedMarketsExchangeEnum = {
2261
+ Polymarket: 'polymarket',
2262
+ Kalshi: 'kalshi',
2263
+ KalshiDemo: 'kalshi-demo',
2264
+ Limitless: 'limitless',
2265
+ Probable: 'probable',
2266
+ Baozi: 'baozi',
2267
+ Myriad: 'myriad',
2268
+ Opinion: 'opinion',
2269
+ Metaculus: 'metaculus',
2270
+ Smarkets: 'smarkets',
2271
+ PolymarketUs: 'polymarket_us',
2272
+ Router: 'router'
2273
+ };
2274
+ /**
2275
+ * @export
2276
+ */
2277
+ exports.FetchRelatedMarketsRelationEnum = {
2278
+ Identity: 'identity',
2279
+ Subset: 'subset',
2280
+ Superset: 'superset',
2281
+ Overlap: 'overlap',
2282
+ Disjoint: 'disjoint'
2283
+ };
2284
+ /**
2285
+ * @export
2286
+ */
2287
+ exports.FetchRelatedMarketsSortEnum = {
2288
+ Confidence: 'confidence',
2289
+ Volume: 'volume',
2290
+ PriceDifference: 'priceDifference'
2291
+ };
2013
2292
  /**
2014
2293
  * @export
2015
2294
  */
@@ -16,6 +16,18 @@ import type { UnifiedEvent } from './UnifiedEvent';
16
16
  * @interface FetchEventMatchesParams
17
17
  */
18
18
  export interface FetchEventMatchesParams {
19
+ /**
20
+ * Keyword search across matched event titles.
21
+ * @type {string}
22
+ * @memberof FetchEventMatchesParams
23
+ */
24
+ query?: string;
25
+ /**
26
+ * Filter matches by category.
27
+ * @type {string}
28
+ * @memberof FetchEventMatchesParams
29
+ */
30
+ category?: string;
19
31
  /**
20
32
  * Pass a UnifiedEvent directly instead of eventId/slug.
21
33
  * @type {UnifiedEvent}
@@ -23,7 +35,7 @@ export interface FetchEventMatchesParams {
23
35
  */
24
36
  event?: UnifiedEvent;
25
37
  /**
26
- *
38
+ * Lookup a specific event by ID. Omit for browse mode.
27
39
  * @type {string}
28
40
  * @memberof FetchEventMatchesParams
29
41
  */
@@ -44,6 +44,8 @@ function FetchEventMatchesParamsFromJSONTyped(json, ignoreDiscriminator) {
44
44
  return json;
45
45
  }
46
46
  return {
47
+ 'query': json['query'] == null ? undefined : json['query'],
48
+ 'category': json['category'] == null ? undefined : json['category'],
47
49
  'event': json['event'] == null ? undefined : (0, UnifiedEvent_1.UnifiedEventFromJSON)(json['event']),
48
50
  'eventId': json['eventId'] == null ? undefined : json['eventId'],
49
51
  'slug': json['slug'] == null ? undefined : json['slug'],
@@ -61,6 +63,8 @@ function FetchEventMatchesParamsToJSONTyped(value, ignoreDiscriminator = false)
61
63
  return value;
62
64
  }
63
65
  return {
66
+ 'query': value['query'],
67
+ 'category': value['category'],
64
68
  'event': (0, UnifiedEvent_1.UnifiedEventToJSON)(value['event']),
65
69
  'eventId': value['eventId'],
66
70
  'slug': value['slug'],
@@ -16,6 +16,18 @@ import type { UnifiedMarket } from './UnifiedMarket';
16
16
  * @interface FetchMarketMatchesParams
17
17
  */
18
18
  export interface FetchMarketMatchesParams {
19
+ /**
20
+ * Keyword search across matched market titles.
21
+ * @type {string}
22
+ * @memberof FetchMarketMatchesParams
23
+ */
24
+ query?: string;
25
+ /**
26
+ * Filter matches by category.
27
+ * @type {string}
28
+ * @memberof FetchMarketMatchesParams
29
+ */
30
+ category?: string;
19
31
  /**
20
32
  * Pass a UnifiedMarket directly instead of marketId/slug/url.
21
33
  * @type {UnifiedMarket}
@@ -23,7 +35,7 @@ export interface FetchMarketMatchesParams {
23
35
  */
24
36
  market?: UnifiedMarket;
25
37
  /**
26
- *
38
+ * Lookup a specific market by ID. Omit for browse mode.
27
39
  * @type {string}
28
40
  * @memberof FetchMarketMatchesParams
29
41
  */
@@ -64,6 +76,18 @@ export interface FetchMarketMatchesParams {
64
76
  * @memberof FetchMarketMatchesParams
65
77
  */
66
78
  includePrices?: boolean;
79
+ /**
80
+ * Minimum price difference between venues. Browse mode only.
81
+ * @type {number}
82
+ * @memberof FetchMarketMatchesParams
83
+ */
84
+ minDifference?: number;
85
+ /**
86
+ * Sort order. Browse mode only.
87
+ * @type {string}
88
+ * @memberof FetchMarketMatchesParams
89
+ */
90
+ sort?: FetchMarketMatchesParamsSortEnum;
67
91
  }
68
92
  /**
69
93
  * @export
@@ -76,6 +100,15 @@ export declare const FetchMarketMatchesParamsRelationEnum: {
76
100
  readonly Disjoint: "disjoint";
77
101
  };
78
102
  export type FetchMarketMatchesParamsRelationEnum = typeof FetchMarketMatchesParamsRelationEnum[keyof typeof FetchMarketMatchesParamsRelationEnum];
103
+ /**
104
+ * @export
105
+ */
106
+ export declare const FetchMarketMatchesParamsSortEnum: {
107
+ readonly Confidence: "confidence";
108
+ readonly Volume: "volume";
109
+ readonly PriceDifference: "priceDifference";
110
+ };
111
+ export type FetchMarketMatchesParamsSortEnum = typeof FetchMarketMatchesParamsSortEnum[keyof typeof FetchMarketMatchesParamsSortEnum];
79
112
  /**
80
113
  * Check if a given object implements the FetchMarketMatchesParams interface.
81
114
  */
@@ -13,7 +13,7 @@
13
13
  * Do not edit the class manually.
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.FetchMarketMatchesParamsRelationEnum = void 0;
16
+ exports.FetchMarketMatchesParamsSortEnum = exports.FetchMarketMatchesParamsRelationEnum = void 0;
17
17
  exports.instanceOfFetchMarketMatchesParams = instanceOfFetchMarketMatchesParams;
18
18
  exports.FetchMarketMatchesParamsFromJSON = FetchMarketMatchesParamsFromJSON;
19
19
  exports.FetchMarketMatchesParamsFromJSONTyped = FetchMarketMatchesParamsFromJSONTyped;
@@ -30,6 +30,14 @@ exports.FetchMarketMatchesParamsRelationEnum = {
30
30
  Overlap: 'overlap',
31
31
  Disjoint: 'disjoint'
32
32
  };
33
+ /**
34
+ * @export
35
+ */
36
+ exports.FetchMarketMatchesParamsSortEnum = {
37
+ Confidence: 'confidence',
38
+ Volume: 'volume',
39
+ PriceDifference: 'priceDifference'
40
+ };
33
41
  /**
34
42
  * Check if a given object implements the FetchMarketMatchesParams interface.
35
43
  */
@@ -44,6 +52,8 @@ function FetchMarketMatchesParamsFromJSONTyped(json, ignoreDiscriminator) {
44
52
  return json;
45
53
  }
46
54
  return {
55
+ 'query': json['query'] == null ? undefined : json['query'],
56
+ 'category': json['category'] == null ? undefined : json['category'],
47
57
  'market': json['market'] == null ? undefined : (0, UnifiedMarket_1.UnifiedMarketFromJSON)(json['market']),
48
58
  'marketId': json['marketId'] == null ? undefined : json['marketId'],
49
59
  'slug': json['slug'] == null ? undefined : json['slug'],
@@ -52,6 +62,8 @@ function FetchMarketMatchesParamsFromJSONTyped(json, ignoreDiscriminator) {
52
62
  'minConfidence': json['minConfidence'] == null ? undefined : json['minConfidence'],
53
63
  'limit': json['limit'] == null ? undefined : json['limit'],
54
64
  'includePrices': json['includePrices'] == null ? undefined : json['includePrices'],
65
+ 'minDifference': json['minDifference'] == null ? undefined : json['minDifference'],
66
+ 'sort': json['sort'] == null ? undefined : json['sort'],
55
67
  };
56
68
  }
57
69
  function FetchMarketMatchesParamsToJSON(json) {
@@ -62,6 +74,8 @@ function FetchMarketMatchesParamsToJSONTyped(value, ignoreDiscriminator = false)
62
74
  return value;
63
75
  }
64
76
  return {
77
+ 'query': value['query'],
78
+ 'category': value['category'],
65
79
  'market': (0, UnifiedMarket_1.UnifiedMarketToJSON)(value['market']),
66
80
  'marketId': value['marketId'],
67
81
  'slug': value['slug'],
@@ -70,5 +84,7 @@ function FetchMarketMatchesParamsToJSONTyped(value, ignoreDiscriminator = false)
70
84
  'minConfidence': value['minConfidence'],
71
85
  'limit': value['limit'],
72
86
  'includePrices': value['includePrices'],
87
+ 'minDifference': value['minDifference'],
88
+ 'sort': value['sort'],
73
89
  };
74
90
  }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * PMXT Sidecar API
3
+ * A unified local sidecar API for prediction markets (Polymarket, Kalshi, Limitless). This API acts as a JSON-RPC-style gateway. Each endpoint corresponds to a specific method on the generic exchange implementation.
4
+ *
5
+ * The version of the OpenAPI document: 0.4.4
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ErrorDetail } from './ErrorDetail';
13
+ import type { MatchedMarketPair } from './MatchedMarketPair';
14
+ /**
15
+ *
16
+ * @export
17
+ * @interface FetchMatchedMarkets200Response
18
+ */
19
+ export interface FetchMatchedMarkets200Response {
20
+ /**
21
+ *
22
+ * @type {boolean}
23
+ * @memberof FetchMatchedMarkets200Response
24
+ */
25
+ success?: boolean;
26
+ /**
27
+ *
28
+ * @type {ErrorDetail}
29
+ * @memberof FetchMatchedMarkets200Response
30
+ */
31
+ error?: ErrorDetail;
32
+ /**
33
+ *
34
+ * @type {Array<MatchedMarketPair>}
35
+ * @memberof FetchMatchedMarkets200Response
36
+ */
37
+ data?: Array<MatchedMarketPair>;
38
+ }
39
+ /**
40
+ * Check if a given object implements the FetchMatchedMarkets200Response interface.
41
+ */
42
+ export declare function instanceOfFetchMatchedMarkets200Response(value: object): value is FetchMatchedMarkets200Response;
43
+ export declare function FetchMatchedMarkets200ResponseFromJSON(json: any): FetchMatchedMarkets200Response;
44
+ export declare function FetchMatchedMarkets200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): FetchMatchedMarkets200Response;
45
+ export declare function FetchMatchedMarkets200ResponseToJSON(json: any): FetchMatchedMarkets200Response;
46
+ export declare function FetchMatchedMarkets200ResponseToJSONTyped(value?: FetchMatchedMarkets200Response | null, ignoreDiscriminator?: boolean): any;