pmxtjs 2.49.10 → 2.50.2

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 (42) hide show
  1. package/dist/esm/generated/src/apis/DefaultApi.d.ts +28 -0
  2. package/dist/esm/generated/src/apis/DefaultApi.js +28 -0
  3. package/dist/esm/index.d.ts +4 -3
  4. package/dist/esm/index.js +4 -3
  5. package/dist/esm/pmxt/client.d.ts +37 -25
  6. package/dist/esm/pmxt/client.js +117 -202
  7. package/dist/esm/pmxt/constants.d.ts +4 -0
  8. package/dist/esm/pmxt/constants.js +6 -0
  9. package/dist/esm/pmxt/hosted-routing.js +1 -0
  10. package/dist/esm/pmxt/hosted-typed-data.d.ts +1 -1
  11. package/dist/esm/pmxt/hosted-typed-data.js +53 -12
  12. package/dist/esm/pmxt/models.d.ts +1 -0
  13. package/dist/esm/pmxt/router.js +12 -3
  14. package/dist/esm/pmxt/signers.d.ts +7 -0
  15. package/dist/esm/pmxt/signers.js +30 -8
  16. package/dist/generated/src/apis/DefaultApi.d.ts +28 -0
  17. package/dist/generated/src/apis/DefaultApi.js +28 -0
  18. package/dist/index.d.ts +4 -3
  19. package/dist/index.js +6 -1
  20. package/dist/pmxt/client.d.ts +37 -25
  21. package/dist/pmxt/client.js +116 -200
  22. package/dist/pmxt/constants.d.ts +4 -0
  23. package/dist/pmxt/constants.js +7 -1
  24. package/dist/pmxt/hosted-routing.js +1 -0
  25. package/dist/pmxt/hosted-typed-data.d.ts +1 -1
  26. package/dist/pmxt/hosted-typed-data.js +53 -12
  27. package/dist/pmxt/models.d.ts +1 -0
  28. package/dist/pmxt/router.js +12 -3
  29. package/dist/pmxt/signers.d.ts +7 -0
  30. package/dist/pmxt/signers.js +31 -8
  31. package/generated/docs/DefaultApi.md +56 -56
  32. package/generated/package.json +1 -1
  33. package/generated/src/apis/DefaultApi.ts +28 -0
  34. package/index.ts +12 -3
  35. package/package.json +2 -2
  36. package/pmxt/client.ts +123 -219
  37. package/pmxt/constants.ts +7 -0
  38. package/pmxt/hosted-routing.ts +1 -0
  39. package/pmxt/hosted-typed-data.ts +67 -17
  40. package/pmxt/models.ts +3 -0
  41. package/pmxt/router.ts +14 -3
  42. package/pmxt/signers.ts +28 -7
@@ -8,6 +8,35 @@
8
8
  * Mirrors `sdks/python/pmxt/signers.py`.
9
9
  */
10
10
  const ETHERS_INSTALL_HINT = "hosted trading requires the optional 'ethers' peer dependency. Install with: npm install ethers";
11
+ /**
12
+ * Load ethers lazily in BOTH module systems. The CJS build has native
13
+ * `require`; the ESM build does not — bare `require("ethers")` there threw
14
+ * ReferenceError, which callers swallowed, silently dropping the signer and
15
+ * killing every hosted write with "hosted write requires a signer".
16
+ */
17
+ export function loadEthers(installHint = ETHERS_INSTALL_HINT) {
18
+ if (typeof require === "function") {
19
+ try {
20
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
21
+ return require("ethers");
22
+ }
23
+ catch {
24
+ throw new Error(installHint);
25
+ }
26
+ }
27
+ // ESM: synthesize a require. getBuiltinModule is sync-safe in both
28
+ // module systems (Node >= 20.16).
29
+ const nodeModule = globalThis.process?.getBuiltinModule?.("node:module");
30
+ const req = nodeModule?.createRequire?.(`${process.cwd()}/__pmxt_resolver__.js`);
31
+ if (!req)
32
+ throw new Error(installHint);
33
+ try {
34
+ return req("ethers");
35
+ }
36
+ catch {
37
+ throw new Error(installHint);
38
+ }
39
+ }
11
40
  /**
12
41
  * Built-in signer backed by an ethers `Wallet`.
13
42
  *
@@ -18,14 +47,7 @@ export class EthersSigner {
18
47
  _wallet; // ethers.Wallet
19
48
  address;
20
49
  constructor(privateKey) {
21
- let ethers;
22
- try {
23
- // eslint-disable-next-line @typescript-eslint/no-require-imports
24
- ethers = require("ethers");
25
- }
26
- catch {
27
- throw new Error(ETHERS_INSTALL_HINT);
28
- }
50
+ const ethers = loadEthers();
29
51
  this._wallet = new ethers.Wallet(privateKey);
30
52
  this.address = this._wallet.address;
31
53
  }
@@ -664,6 +664,7 @@ export declare const BuildOrderOperationExchangeEnum: {
664
664
  readonly GeminiTitan: "gemini-titan";
665
665
  readonly Hyperliquid: "hyperliquid";
666
666
  readonly Suibets: "suibets";
667
+ readonly Rain: "rain";
667
668
  readonly Mock: "mock";
668
669
  readonly Router: "router";
669
670
  };
@@ -686,6 +687,7 @@ export declare const CancelOrderOperationExchangeEnum: {
686
687
  readonly GeminiTitan: "gemini-titan";
687
688
  readonly Hyperliquid: "hyperliquid";
688
689
  readonly Suibets: "suibets";
690
+ readonly Rain: "rain";
689
691
  readonly Mock: "mock";
690
692
  readonly Router: "router";
691
693
  };
@@ -708,6 +710,7 @@ export declare const CloseOperationExchangeEnum: {
708
710
  readonly GeminiTitan: "gemini-titan";
709
711
  readonly Hyperliquid: "hyperliquid";
710
712
  readonly Suibets: "suibets";
713
+ readonly Rain: "rain";
711
714
  readonly Mock: "mock";
712
715
  readonly Router: "router";
713
716
  };
@@ -737,6 +740,7 @@ export declare const CreateOrderOperationExchangeEnum: {
737
740
  readonly GeminiTitan: "gemini-titan";
738
741
  readonly Hyperliquid: "hyperliquid";
739
742
  readonly Suibets: "suibets";
743
+ readonly Rain: "rain";
740
744
  readonly Mock: "mock";
741
745
  readonly Router: "router";
742
746
  };
@@ -759,6 +763,7 @@ export declare const FetchAllOrdersExchangeEnum: {
759
763
  readonly GeminiTitan: "gemini-titan";
760
764
  readonly Hyperliquid: "hyperliquid";
761
765
  readonly Suibets: "suibets";
766
+ readonly Rain: "rain";
762
767
  readonly Mock: "mock";
763
768
  readonly Router: "router";
764
769
  };
@@ -800,6 +805,7 @@ export declare const FetchBalanceExchangeEnum: {
800
805
  readonly GeminiTitan: "gemini-titan";
801
806
  readonly Hyperliquid: "hyperliquid";
802
807
  readonly Suibets: "suibets";
808
+ readonly Rain: "rain";
803
809
  readonly Mock: "mock";
804
810
  readonly Router: "router";
805
811
  };
@@ -822,6 +828,7 @@ export declare const FetchClosedOrdersExchangeEnum: {
822
828
  readonly GeminiTitan: "gemini-titan";
823
829
  readonly Hyperliquid: "hyperliquid";
824
830
  readonly Suibets: "suibets";
831
+ readonly Rain: "rain";
825
832
  readonly Mock: "mock";
826
833
  readonly Router: "router";
827
834
  };
@@ -844,6 +851,7 @@ export declare const FetchEventExchangeEnum: {
844
851
  readonly GeminiTitan: "gemini-titan";
845
852
  readonly Hyperliquid: "hyperliquid";
846
853
  readonly Suibets: "suibets";
854
+ readonly Rain: "rain";
847
855
  readonly Mock: "mock";
848
856
  readonly Router: "router";
849
857
  };
@@ -913,6 +921,7 @@ export declare const FetchEventsExchangeEnum: {
913
921
  readonly GeminiTitan: "gemini-titan";
914
922
  readonly Hyperliquid: "hyperliquid";
915
923
  readonly Suibets: "suibets";
924
+ readonly Rain: "rain";
916
925
  readonly Mock: "mock";
917
926
  readonly Router: "router";
918
927
  };
@@ -963,6 +972,7 @@ export declare const FetchEventsPaginatedExchangeEnum: {
963
972
  readonly GeminiTitan: "gemini-titan";
964
973
  readonly Hyperliquid: "hyperliquid";
965
974
  readonly Suibets: "suibets";
975
+ readonly Rain: "rain";
966
976
  readonly Mock: "mock";
967
977
  readonly Router: "router";
968
978
  };
@@ -1013,6 +1023,7 @@ export declare const FetchMarketExchangeEnum: {
1013
1023
  readonly GeminiTitan: "gemini-titan";
1014
1024
  readonly Hyperliquid: "hyperliquid";
1015
1025
  readonly Suibets: "suibets";
1026
+ readonly Rain: "rain";
1016
1027
  readonly Mock: "mock";
1017
1028
  readonly Router: "router";
1018
1029
  };
@@ -1091,6 +1102,7 @@ export declare const FetchMarketsExchangeEnum: {
1091
1102
  readonly GeminiTitan: "gemini-titan";
1092
1103
  readonly Hyperliquid: "hyperliquid";
1093
1104
  readonly Suibets: "suibets";
1105
+ readonly Rain: "rain";
1094
1106
  readonly Mock: "mock";
1095
1107
  readonly Router: "router";
1096
1108
  };
@@ -1141,6 +1153,7 @@ export declare const FetchMarketsPaginatedExchangeEnum: {
1141
1153
  readonly GeminiTitan: "gemini-titan";
1142
1154
  readonly Hyperliquid: "hyperliquid";
1143
1155
  readonly Suibets: "suibets";
1156
+ readonly Rain: "rain";
1144
1157
  readonly Mock: "mock";
1145
1158
  readonly Router: "router";
1146
1159
  };
@@ -1201,6 +1214,7 @@ export declare const FetchMyTradesExchangeEnum: {
1201
1214
  readonly GeminiTitan: "gemini-titan";
1202
1215
  readonly Hyperliquid: "hyperliquid";
1203
1216
  readonly Suibets: "suibets";
1217
+ readonly Rain: "rain";
1204
1218
  readonly Mock: "mock";
1205
1219
  readonly Router: "router";
1206
1220
  };
@@ -1223,6 +1237,7 @@ export declare const FetchOHLCVExchangeEnum: {
1223
1237
  readonly GeminiTitan: "gemini-titan";
1224
1238
  readonly Hyperliquid: "hyperliquid";
1225
1239
  readonly Suibets: "suibets";
1240
+ readonly Rain: "rain";
1226
1241
  readonly Mock: "mock";
1227
1242
  readonly Router: "router";
1228
1243
  };
@@ -1245,6 +1260,7 @@ export declare const FetchOpenOrdersExchangeEnum: {
1245
1260
  readonly GeminiTitan: "gemini-titan";
1246
1261
  readonly Hyperliquid: "hyperliquid";
1247
1262
  readonly Suibets: "suibets";
1263
+ readonly Rain: "rain";
1248
1264
  readonly Mock: "mock";
1249
1265
  readonly Router: "router";
1250
1266
  };
@@ -1267,6 +1283,7 @@ export declare const FetchOrderExchangeEnum: {
1267
1283
  readonly GeminiTitan: "gemini-titan";
1268
1284
  readonly Hyperliquid: "hyperliquid";
1269
1285
  readonly Suibets: "suibets";
1286
+ readonly Rain: "rain";
1270
1287
  readonly Mock: "mock";
1271
1288
  readonly Router: "router";
1272
1289
  };
@@ -1289,6 +1306,7 @@ export declare const FetchOrderBookExchangeEnum: {
1289
1306
  readonly GeminiTitan: "gemini-titan";
1290
1307
  readonly Hyperliquid: "hyperliquid";
1291
1308
  readonly Suibets: "suibets";
1309
+ readonly Rain: "rain";
1292
1310
  readonly Mock: "mock";
1293
1311
  readonly Router: "router";
1294
1312
  };
@@ -1319,6 +1337,7 @@ export declare const FetchOrderBooksOperationExchangeEnum: {
1319
1337
  readonly GeminiTitan: "gemini-titan";
1320
1338
  readonly Hyperliquid: "hyperliquid";
1321
1339
  readonly Suibets: "suibets";
1340
+ readonly Rain: "rain";
1322
1341
  readonly Mock: "mock";
1323
1342
  readonly Router: "router";
1324
1343
  };
@@ -1341,6 +1360,7 @@ export declare const FetchPositionsExchangeEnum: {
1341
1360
  readonly GeminiTitan: "gemini-titan";
1342
1361
  readonly Hyperliquid: "hyperliquid";
1343
1362
  readonly Suibets: "suibets";
1363
+ readonly Rain: "rain";
1344
1364
  readonly Mock: "mock";
1345
1365
  readonly Router: "router";
1346
1366
  };
@@ -1391,6 +1411,7 @@ export declare const FetchSeriesExchangeEnum: {
1391
1411
  readonly GeminiTitan: "gemini-titan";
1392
1412
  readonly Hyperliquid: "hyperliquid";
1393
1413
  readonly Suibets: "suibets";
1414
+ readonly Rain: "rain";
1394
1415
  readonly Mock: "mock";
1395
1416
  readonly Router: "router";
1396
1417
  };
@@ -1413,6 +1434,7 @@ export declare const FetchTradesExchangeEnum: {
1413
1434
  readonly GeminiTitan: "gemini-titan";
1414
1435
  readonly Hyperliquid: "hyperliquid";
1415
1436
  readonly Suibets: "suibets";
1437
+ readonly Rain: "rain";
1416
1438
  readonly Mock: "mock";
1417
1439
  readonly Router: "router";
1418
1440
  };
@@ -1435,6 +1457,7 @@ export declare const FilterEventsOperationExchangeEnum: {
1435
1457
  readonly GeminiTitan: "gemini-titan";
1436
1458
  readonly Hyperliquid: "hyperliquid";
1437
1459
  readonly Suibets: "suibets";
1460
+ readonly Rain: "rain";
1438
1461
  readonly Mock: "mock";
1439
1462
  readonly Router: "router";
1440
1463
  };
@@ -1457,6 +1480,7 @@ export declare const FilterMarketsOperationExchangeEnum: {
1457
1480
  readonly GeminiTitan: "gemini-titan";
1458
1481
  readonly Hyperliquid: "hyperliquid";
1459
1482
  readonly Suibets: "suibets";
1483
+ readonly Rain: "rain";
1460
1484
  readonly Mock: "mock";
1461
1485
  readonly Router: "router";
1462
1486
  };
@@ -1479,6 +1503,7 @@ export declare const GetExecutionPriceOperationExchangeEnum: {
1479
1503
  readonly GeminiTitan: "gemini-titan";
1480
1504
  readonly Hyperliquid: "hyperliquid";
1481
1505
  readonly Suibets: "suibets";
1506
+ readonly Rain: "rain";
1482
1507
  readonly Mock: "mock";
1483
1508
  readonly Router: "router";
1484
1509
  };
@@ -1501,6 +1526,7 @@ export declare const GetExecutionPriceDetailedOperationExchangeEnum: {
1501
1526
  readonly GeminiTitan: "gemini-titan";
1502
1527
  readonly Hyperliquid: "hyperliquid";
1503
1528
  readonly Suibets: "suibets";
1529
+ readonly Rain: "rain";
1504
1530
  readonly Mock: "mock";
1505
1531
  readonly Router: "router";
1506
1532
  };
@@ -1523,6 +1549,7 @@ export declare const LoadMarketsOperationExchangeEnum: {
1523
1549
  readonly GeminiTitan: "gemini-titan";
1524
1550
  readonly Hyperliquid: "hyperliquid";
1525
1551
  readonly Suibets: "suibets";
1552
+ readonly Rain: "rain";
1526
1553
  readonly Mock: "mock";
1527
1554
  readonly Router: "router";
1528
1555
  };
@@ -1545,6 +1572,7 @@ export declare const SubmitOrderOperationExchangeEnum: {
1545
1572
  readonly GeminiTitan: "gemini-titan";
1546
1573
  readonly Hyperliquid: "hyperliquid";
1547
1574
  readonly Suibets: "suibets";
1575
+ readonly Rain: "rain";
1548
1576
  readonly Mock: "mock";
1549
1577
  readonly Router: "router";
1550
1578
  };
@@ -1578,6 +1578,7 @@ exports.BuildOrderOperationExchangeEnum = {
1578
1578
  GeminiTitan: 'gemini-titan',
1579
1579
  Hyperliquid: 'hyperliquid',
1580
1580
  Suibets: 'suibets',
1581
+ Rain: 'rain',
1581
1582
  Mock: 'mock',
1582
1583
  Router: 'router'
1583
1584
  };
@@ -1599,6 +1600,7 @@ exports.CancelOrderOperationExchangeEnum = {
1599
1600
  GeminiTitan: 'gemini-titan',
1600
1601
  Hyperliquid: 'hyperliquid',
1601
1602
  Suibets: 'suibets',
1603
+ Rain: 'rain',
1602
1604
  Mock: 'mock',
1603
1605
  Router: 'router'
1604
1606
  };
@@ -1620,6 +1622,7 @@ exports.CloseOperationExchangeEnum = {
1620
1622
  GeminiTitan: 'gemini-titan',
1621
1623
  Hyperliquid: 'hyperliquid',
1622
1624
  Suibets: 'suibets',
1625
+ Rain: 'rain',
1623
1626
  Mock: 'mock',
1624
1627
  Router: 'router'
1625
1628
  };
@@ -1647,6 +1650,7 @@ exports.CreateOrderOperationExchangeEnum = {
1647
1650
  GeminiTitan: 'gemini-titan',
1648
1651
  Hyperliquid: 'hyperliquid',
1649
1652
  Suibets: 'suibets',
1653
+ Rain: 'rain',
1650
1654
  Mock: 'mock',
1651
1655
  Router: 'router'
1652
1656
  };
@@ -1668,6 +1672,7 @@ exports.FetchAllOrdersExchangeEnum = {
1668
1672
  GeminiTitan: 'gemini-titan',
1669
1673
  Hyperliquid: 'hyperliquid',
1670
1674
  Suibets: 'suibets',
1675
+ Rain: 'rain',
1671
1676
  Mock: 'mock',
1672
1677
  Router: 'router'
1673
1678
  };
@@ -1706,6 +1711,7 @@ exports.FetchBalanceExchangeEnum = {
1706
1711
  GeminiTitan: 'gemini-titan',
1707
1712
  Hyperliquid: 'hyperliquid',
1708
1713
  Suibets: 'suibets',
1714
+ Rain: 'rain',
1709
1715
  Mock: 'mock',
1710
1716
  Router: 'router'
1711
1717
  };
@@ -1727,6 +1733,7 @@ exports.FetchClosedOrdersExchangeEnum = {
1727
1733
  GeminiTitan: 'gemini-titan',
1728
1734
  Hyperliquid: 'hyperliquid',
1729
1735
  Suibets: 'suibets',
1736
+ Rain: 'rain',
1730
1737
  Mock: 'mock',
1731
1738
  Router: 'router'
1732
1739
  };
@@ -1748,6 +1755,7 @@ exports.FetchEventExchangeEnum = {
1748
1755
  GeminiTitan: 'gemini-titan',
1749
1756
  Hyperliquid: 'hyperliquid',
1750
1757
  Suibets: 'suibets',
1758
+ Rain: 'rain',
1751
1759
  Mock: 'mock',
1752
1760
  Router: 'router'
1753
1761
  };
@@ -1811,6 +1819,7 @@ exports.FetchEventsExchangeEnum = {
1811
1819
  GeminiTitan: 'gemini-titan',
1812
1820
  Hyperliquid: 'hyperliquid',
1813
1821
  Suibets: 'suibets',
1822
+ Rain: 'rain',
1814
1823
  Mock: 'mock',
1815
1824
  Router: 'router'
1816
1825
  };
@@ -1857,6 +1866,7 @@ exports.FetchEventsPaginatedExchangeEnum = {
1857
1866
  GeminiTitan: 'gemini-titan',
1858
1867
  Hyperliquid: 'hyperliquid',
1859
1868
  Suibets: 'suibets',
1869
+ Rain: 'rain',
1860
1870
  Mock: 'mock',
1861
1871
  Router: 'router'
1862
1872
  };
@@ -1903,6 +1913,7 @@ exports.FetchMarketExchangeEnum = {
1903
1913
  GeminiTitan: 'gemini-titan',
1904
1914
  Hyperliquid: 'hyperliquid',
1905
1915
  Suibets: 'suibets',
1916
+ Rain: 'rain',
1906
1917
  Mock: 'mock',
1907
1918
  Router: 'router'
1908
1919
  };
@@ -1974,6 +1985,7 @@ exports.FetchMarketsExchangeEnum = {
1974
1985
  GeminiTitan: 'gemini-titan',
1975
1986
  Hyperliquid: 'hyperliquid',
1976
1987
  Suibets: 'suibets',
1988
+ Rain: 'rain',
1977
1989
  Mock: 'mock',
1978
1990
  Router: 'router'
1979
1991
  };
@@ -2020,6 +2032,7 @@ exports.FetchMarketsPaginatedExchangeEnum = {
2020
2032
  GeminiTitan: 'gemini-titan',
2021
2033
  Hyperliquid: 'hyperliquid',
2022
2034
  Suibets: 'suibets',
2035
+ Rain: 'rain',
2023
2036
  Mock: 'mock',
2024
2037
  Router: 'router'
2025
2038
  };
@@ -2075,6 +2088,7 @@ exports.FetchMyTradesExchangeEnum = {
2075
2088
  GeminiTitan: 'gemini-titan',
2076
2089
  Hyperliquid: 'hyperliquid',
2077
2090
  Suibets: 'suibets',
2091
+ Rain: 'rain',
2078
2092
  Mock: 'mock',
2079
2093
  Router: 'router'
2080
2094
  };
@@ -2096,6 +2110,7 @@ exports.FetchOHLCVExchangeEnum = {
2096
2110
  GeminiTitan: 'gemini-titan',
2097
2111
  Hyperliquid: 'hyperliquid',
2098
2112
  Suibets: 'suibets',
2113
+ Rain: 'rain',
2099
2114
  Mock: 'mock',
2100
2115
  Router: 'router'
2101
2116
  };
@@ -2117,6 +2132,7 @@ exports.FetchOpenOrdersExchangeEnum = {
2117
2132
  GeminiTitan: 'gemini-titan',
2118
2133
  Hyperliquid: 'hyperliquid',
2119
2134
  Suibets: 'suibets',
2135
+ Rain: 'rain',
2120
2136
  Mock: 'mock',
2121
2137
  Router: 'router'
2122
2138
  };
@@ -2138,6 +2154,7 @@ exports.FetchOrderExchangeEnum = {
2138
2154
  GeminiTitan: 'gemini-titan',
2139
2155
  Hyperliquid: 'hyperliquid',
2140
2156
  Suibets: 'suibets',
2157
+ Rain: 'rain',
2141
2158
  Mock: 'mock',
2142
2159
  Router: 'router'
2143
2160
  };
@@ -2159,6 +2176,7 @@ exports.FetchOrderBookExchangeEnum = {
2159
2176
  GeminiTitan: 'gemini-titan',
2160
2177
  Hyperliquid: 'hyperliquid',
2161
2178
  Suibets: 'suibets',
2179
+ Rain: 'rain',
2162
2180
  Mock: 'mock',
2163
2181
  Router: 'router'
2164
2182
  };
@@ -2187,6 +2205,7 @@ exports.FetchOrderBooksOperationExchangeEnum = {
2187
2205
  GeminiTitan: 'gemini-titan',
2188
2206
  Hyperliquid: 'hyperliquid',
2189
2207
  Suibets: 'suibets',
2208
+ Rain: 'rain',
2190
2209
  Mock: 'mock',
2191
2210
  Router: 'router'
2192
2211
  };
@@ -2208,6 +2227,7 @@ exports.FetchPositionsExchangeEnum = {
2208
2227
  GeminiTitan: 'gemini-titan',
2209
2228
  Hyperliquid: 'hyperliquid',
2210
2229
  Suibets: 'suibets',
2230
+ Rain: 'rain',
2211
2231
  Mock: 'mock',
2212
2232
  Router: 'router'
2213
2233
  };
@@ -2254,6 +2274,7 @@ exports.FetchSeriesExchangeEnum = {
2254
2274
  GeminiTitan: 'gemini-titan',
2255
2275
  Hyperliquid: 'hyperliquid',
2256
2276
  Suibets: 'suibets',
2277
+ Rain: 'rain',
2257
2278
  Mock: 'mock',
2258
2279
  Router: 'router'
2259
2280
  };
@@ -2275,6 +2296,7 @@ exports.FetchTradesExchangeEnum = {
2275
2296
  GeminiTitan: 'gemini-titan',
2276
2297
  Hyperliquid: 'hyperliquid',
2277
2298
  Suibets: 'suibets',
2299
+ Rain: 'rain',
2278
2300
  Mock: 'mock',
2279
2301
  Router: 'router'
2280
2302
  };
@@ -2296,6 +2318,7 @@ exports.FilterEventsOperationExchangeEnum = {
2296
2318
  GeminiTitan: 'gemini-titan',
2297
2319
  Hyperliquid: 'hyperliquid',
2298
2320
  Suibets: 'suibets',
2321
+ Rain: 'rain',
2299
2322
  Mock: 'mock',
2300
2323
  Router: 'router'
2301
2324
  };
@@ -2317,6 +2340,7 @@ exports.FilterMarketsOperationExchangeEnum = {
2317
2340
  GeminiTitan: 'gemini-titan',
2318
2341
  Hyperliquid: 'hyperliquid',
2319
2342
  Suibets: 'suibets',
2343
+ Rain: 'rain',
2320
2344
  Mock: 'mock',
2321
2345
  Router: 'router'
2322
2346
  };
@@ -2338,6 +2362,7 @@ exports.GetExecutionPriceOperationExchangeEnum = {
2338
2362
  GeminiTitan: 'gemini-titan',
2339
2363
  Hyperliquid: 'hyperliquid',
2340
2364
  Suibets: 'suibets',
2365
+ Rain: 'rain',
2341
2366
  Mock: 'mock',
2342
2367
  Router: 'router'
2343
2368
  };
@@ -2359,6 +2384,7 @@ exports.GetExecutionPriceDetailedOperationExchangeEnum = {
2359
2384
  GeminiTitan: 'gemini-titan',
2360
2385
  Hyperliquid: 'hyperliquid',
2361
2386
  Suibets: 'suibets',
2387
+ Rain: 'rain',
2362
2388
  Mock: 'mock',
2363
2389
  Router: 'router'
2364
2390
  };
@@ -2380,6 +2406,7 @@ exports.LoadMarketsOperationExchangeEnum = {
2380
2406
  GeminiTitan: 'gemini-titan',
2381
2407
  Hyperliquid: 'hyperliquid',
2382
2408
  Suibets: 'suibets',
2409
+ Rain: 'rain',
2383
2410
  Mock: 'mock',
2384
2411
  Router: 'router'
2385
2412
  };
@@ -2401,6 +2428,7 @@ exports.SubmitOrderOperationExchangeEnum = {
2401
2428
  GeminiTitan: 'gemini-titan',
2402
2429
  Hyperliquid: 'hyperliquid',
2403
2430
  Suibets: 'suibets',
2431
+ Rain: 'rain',
2404
2432
  Mock: 'mock',
2405
2433
  Router: 'router'
2406
2434
  };
package/dist/index.d.ts CHANGED
@@ -17,18 +17,18 @@
17
17
  * console.log(markets[0].title);
18
18
  * ```
19
19
  */
20
- import { Exchange, Polymarket, Kalshi, KalshiDemo, Limitless, Myriad, Probable, Baozi, Opinion, Metaculus, Smarkets, PolymarketUS, GeminiTitan, Hyperliquid, SuiBets, Mock } from "./pmxt/client.js";
20
+ import { Exchange, Polymarket, Kalshi, KalshiDemo, Limitless, Myriad, Probable, Baozi, Opinion, Metaculus, Smarkets, PolymarketUS, GeminiTitan, Hyperliquid, SuiBets, Rain, Mock } from "./pmxt/client.js";
21
21
  import { Router } from "./pmxt/router.js";
22
22
  import { ServerManager } from "./pmxt/server-manager.js";
23
23
  import { FeedClient } from "./pmxt/feed-client.js";
24
24
  import * as models from "./pmxt/models.js";
25
25
  import * as errors from "./pmxt/errors.js";
26
- export { Exchange, Polymarket, Kalshi, KalshiDemo, Limitless, Myriad, Probable, Baozi, Opinion, Metaculus, Smarkets, PolymarketUS, GeminiTitan, Hyperliquid, SuiBets, Suibets, Mock, PolymarketOptions } from "./pmxt/client.js";
26
+ export { Exchange, Polymarket, Kalshi, KalshiDemo, Limitless, Myriad, Probable, Baozi, Opinion, Metaculus, Smarkets, PolymarketUS, GeminiTitan, Hyperliquid, SuiBets, Suibets, Rain, Mock, PolymarketOptions } from "./pmxt/client.js";
27
27
  export { FeedClient } from "./pmxt/feed-client.js";
28
28
  export type { Ticker, Tickers, OHLCV, Market as FeedMarket, OracleRound, FeedClientOptions } from "./pmxt/feed-client.js";
29
29
  export { Router } from "./pmxt/router.js";
30
30
  export { ServerManager } from "./pmxt/server-manager.js";
31
- export { HOSTED_URL, LOCAL_URL, ENV, resolvePmxtBaseUrl } from "./pmxt/constants.js";
31
+ export { HOSTED_URL, LOCAL_URL, ENV, resolvePmxtBaseUrl, PREFUNDED_ESCROW_ADDRESSES, VENUE_ESCROW_ADDRESSES, LIMITLESS_VENUE_ESCROW_ADDRESSES, } from "./pmxt/constants.js";
32
32
  export { MarketList } from "./pmxt/models.js";
33
33
  export type { UnifiedSeries } from "./pmxt/models.js";
34
34
  export type * from "./pmxt/models.js";
@@ -96,6 +96,7 @@ declare const pmxt: {
96
96
  Hyperliquid: typeof Hyperliquid;
97
97
  SuiBets: typeof SuiBets;
98
98
  Suibets: typeof SuiBets;
99
+ Rain: typeof Rain;
99
100
  Mock: typeof Mock;
100
101
  Router: typeof Router;
101
102
  ServerManager: typeof ServerManager;
package/dist/index.js CHANGED
@@ -55,7 +55,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
55
55
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
56
56
  };
57
57
  Object.defineProperty(exports, "__esModule", { value: true });
58
- exports.server = exports.MarketList = exports.resolvePmxtBaseUrl = exports.ENV = exports.LOCAL_URL = exports.HOSTED_URL = exports.ServerManager = exports.Router = exports.FeedClient = exports.Mock = exports.Suibets = exports.SuiBets = exports.Hyperliquid = exports.GeminiTitan = exports.PolymarketUS = exports.Smarkets = exports.Metaculus = exports.Opinion = exports.Baozi = exports.Probable = exports.Myriad = exports.Limitless = exports.KalshiDemo = exports.Kalshi = exports.Polymarket = exports.Exchange = void 0;
58
+ exports.server = exports.MarketList = exports.LIMITLESS_VENUE_ESCROW_ADDRESSES = exports.VENUE_ESCROW_ADDRESSES = exports.PREFUNDED_ESCROW_ADDRESSES = exports.resolvePmxtBaseUrl = exports.ENV = exports.LOCAL_URL = exports.HOSTED_URL = exports.ServerManager = exports.Router = exports.FeedClient = exports.Mock = exports.Rain = exports.Suibets = exports.SuiBets = exports.Hyperliquid = exports.GeminiTitan = exports.PolymarketUS = exports.Smarkets = exports.Metaculus = exports.Opinion = exports.Baozi = exports.Probable = exports.Myriad = exports.Limitless = exports.KalshiDemo = exports.Kalshi = exports.Polymarket = exports.Exchange = void 0;
59
59
  const client_js_1 = require("./pmxt/client.js");
60
60
  const router_js_1 = require("./pmxt/router.js");
61
61
  const server_manager_js_1 = require("./pmxt/server-manager.js");
@@ -79,6 +79,7 @@ Object.defineProperty(exports, "GeminiTitan", { enumerable: true, get: function
79
79
  Object.defineProperty(exports, "Hyperliquid", { enumerable: true, get: function () { return client_js_2.Hyperliquid; } });
80
80
  Object.defineProperty(exports, "SuiBets", { enumerable: true, get: function () { return client_js_2.SuiBets; } });
81
81
  Object.defineProperty(exports, "Suibets", { enumerable: true, get: function () { return client_js_2.Suibets; } });
82
+ Object.defineProperty(exports, "Rain", { enumerable: true, get: function () { return client_js_2.Rain; } });
82
83
  Object.defineProperty(exports, "Mock", { enumerable: true, get: function () { return client_js_2.Mock; } });
83
84
  var feed_client_js_2 = require("./pmxt/feed-client.js");
84
85
  Object.defineProperty(exports, "FeedClient", { enumerable: true, get: function () { return feed_client_js_2.FeedClient; } });
@@ -91,6 +92,9 @@ Object.defineProperty(exports, "HOSTED_URL", { enumerable: true, get: function (
91
92
  Object.defineProperty(exports, "LOCAL_URL", { enumerable: true, get: function () { return constants_js_1.LOCAL_URL; } });
92
93
  Object.defineProperty(exports, "ENV", { enumerable: true, get: function () { return constants_js_1.ENV; } });
93
94
  Object.defineProperty(exports, "resolvePmxtBaseUrl", { enumerable: true, get: function () { return constants_js_1.resolvePmxtBaseUrl; } });
95
+ Object.defineProperty(exports, "PREFUNDED_ESCROW_ADDRESSES", { enumerable: true, get: function () { return constants_js_1.PREFUNDED_ESCROW_ADDRESSES; } });
96
+ Object.defineProperty(exports, "VENUE_ESCROW_ADDRESSES", { enumerable: true, get: function () { return constants_js_1.VENUE_ESCROW_ADDRESSES; } });
97
+ Object.defineProperty(exports, "LIMITLESS_VENUE_ESCROW_ADDRESSES", { enumerable: true, get: function () { return constants_js_1.LIMITLESS_VENUE_ESCROW_ADDRESSES; } });
94
98
  var models_js_1 = require("./pmxt/models.js");
95
99
  Object.defineProperty(exports, "MarketList", { enumerable: true, get: function () { return models_js_1.MarketList; } });
96
100
  __exportStar(require("./pmxt/errors.js"), exports);
@@ -141,6 +145,7 @@ const pmxt = {
141
145
  Hyperliquid: client_js_1.Hyperliquid,
142
146
  SuiBets: client_js_1.SuiBets,
143
147
  Suibets: client_js_1.Suibets,
148
+ Rain: client_js_1.Rain,
144
149
  Mock: client_js_1.Mock,
145
150
  Router: router_js_1.Router,
146
151
  ServerManager: server_manager_js_1.ServerManager,
@@ -5,7 +5,7 @@
5
5
  * OpenAPI client, matching the Python API exactly.
6
6
  */
7
7
  import { Configuration, DefaultApi, ExchangeCredentials } from "../generated/src/index.js";
8
- import { Balance, BuiltOrder, CreateOrderParams, EventFetchParams, EventFilterCriteria, EventFilterFunction, ExecutionPriceResult, FetchOrderBookParams, MarketFetchParams, MarketFilterCriteria, MarketFilterFunction, MarketOutcome, MyTradesParams, Order, OrderBook, OrderHistoryParams, PaginatedMarketsResult, Position, SeriesFetchParams, PriceCandle, SubscribedAddressSnapshot, SubscriptionOption, Trade, UnifiedEvent, UnifiedMarket, UnifiedSeries, UserTrade, FirehoseEvent } from "./models.js";
8
+ import { Balance, BuiltOrder, CreateOrderParams, EventFetchParams, EventFilterCriteria, EventFilterFunction, ExecutionPriceResult, FetchOrderBookParams, MarketFetchParams, MarketFilterCriteria, MarketFilterFunction, MarketOutcome, MyTradesParams, Order, OrderBook, OrderHistoryParams, PaginatedMarketsResult, Position, SeriesFetchParams, PriceCandle, SubscribedAddressSnapshot, SubscriptionOption, Trade, UnifiedEvent, UnifiedMarket, UnifiedSeries, UserTrade, FirehoseEvent, FetchMatchedMarketClustersParams } from "./models.js";
9
9
  import { ServerManager } from "./server-manager.js";
10
10
  import type { Signer } from "./signers.js";
11
11
  import { Escrow } from "./escrow.js";
@@ -219,37 +219,14 @@ export declare abstract class Exchange {
219
219
  fetchOrderBook(outcomeId: string | MarketOutcome, limit?: number, params?: FetchOrderBookParams): Promise<OrderBook | OrderBook[]>;
220
220
  fetchOrderBooks(outcomeIds: (string | MarketOutcome)[]): Promise<Record<string, OrderBook>>;
221
221
  submitOrder(built: BuiltOrder): Promise<Order>;
222
- /**
223
- * Hosted-mode submitOrder: validate the stored build response, sign the
224
- * typed_data (and pull_typed_data for Opinion cross-chain sells), then
225
- * POST to `/v0/trade/submit-order`.
226
- */
227
- private _hostedSubmitOrder;
228
- /**
229
- * Resolve the per-(venue, side, pull) typed-data schema route used by
230
- * `validateTypedData` / `validateEconomics`. Returns undefined for the
231
- * pull leg when a venue/side combo doesn't have one.
232
- */
233
- private _hostedTypedDataRoute;
234
- private _hostedCancelTypedDataRoute;
235
222
  cancelOrder(orderId: string): Promise<Order>;
236
- /**
237
- * Hosted-mode cancelOrder: build the cancel typed_data on the server,
238
- * validate + sign (dual-sign for Opinion cross-chain), then submit.
239
- */
240
- private _hostedCancelOrder;
241
223
  fetchOrder(orderId: string): Promise<Order>;
242
- private _hostedFetchOrder;
243
224
  fetchOpenOrders(marketId?: string): Promise<Order[]>;
244
- private _hostedFetchOpenOrders;
245
225
  fetchMyTrades(params?: MyTradesParams): Promise<UserTrade[]>;
246
- private _hostedFetchMyTrades;
247
226
  fetchClosedOrders(params?: OrderHistoryParams): Promise<Order[]>;
248
227
  fetchAllOrders(params?: OrderHistoryParams): Promise<Order[]>;
249
228
  fetchPositions(address?: string): Promise<Position[]>;
250
- private _hostedFetchPositions;
251
229
  fetchBalance(address?: string): Promise<Balance[]>;
252
- private _hostedFetchBalance;
253
230
  unwatchOrderBook(outcomeId: string | MarketOutcome): Promise<void>;
254
231
  unwatchAddress(address: string): Promise<void>;
255
232
  close(): Promise<void>;
@@ -258,7 +235,7 @@ export declare abstract class Exchange {
258
235
  fetchEventMatches(params?: any): Promise<any[]>;
259
236
  compareMarketPrices(params: any): Promise<any[]>;
260
237
  fetchRelatedMarkets(params: any): Promise<any[]>;
261
- fetchMatchedMarkets(params?: any): Promise<any[]>;
238
+ fetchMatchedMarkets(params?: FetchMatchedMarketClustersParams): Promise<any[]>;
262
239
  fetchMatchedPrices(params?: any): Promise<any[]>;
263
240
  fetchHedges(params: any): Promise<any[]>;
264
241
  fetchArbitrage(params?: any): Promise<any[]>;
@@ -457,6 +434,22 @@ export declare abstract class Exchange {
457
434
  * Hosted-mode createOrder: build → sign → submit single-call wrapper.
458
435
  */
459
436
  private _hostedCreateOrder;
437
+ /**
438
+ * Hosted-mode submitOrder: validate the stored build response, sign the
439
+ * typed_data (and pull_typed_data for cross-chain venue sells), then
440
+ * POST to `/v0/trade/submit-order`.
441
+ *
442
+ * Restored after PR #1058 (Limitless hosted wire-up) accidentally
443
+ * removed it but left the call site + signing imports intact.
444
+ */
445
+ private _hostedSubmitOrder;
446
+ /**
447
+ * Resolve the per-(venue, side, pull) typed-data schema route used by
448
+ * `validateTypedData` / `validateEconomics`. Returns the cross-chain
449
+ * pull-leg route name for Opinion sells and Limitless cross-chain orders.
450
+ */
451
+ private _hostedTypedDataRoute;
452
+ private _hostedCancelTypedDataRoute;
460
453
  /**
461
454
  * Construct the hosted build-order request body and validate inputs
462
455
  * locally per the v0 contract (denom/side compatibility, > 6-decimal
@@ -838,6 +831,25 @@ export declare class SuiBets extends Exchange {
838
831
  protected getCredentials(): ExchangeCredentials | undefined;
839
832
  }
840
833
  export declare const Suibets: typeof SuiBets;
834
+ /**
835
+ * Rain exchange client.
836
+ *
837
+ * Rain is a permissionless AMM-plus-orderbook prediction market on Arbitrum One.
838
+ * Reads are unauthenticated; trading requires an EVM privateKey.
839
+ *
840
+ * @example
841
+ * ```typescript
842
+ * const rain = new Rain();
843
+ * const markets = await rain.fetchMarkets({ limit: 20 });
844
+ *
845
+ * // With wallet for trading
846
+ * const me = new Rain({ privateKey: '0x...' });
847
+ * await me.createOrder({ marketId, outcomeId, side: 'buy', type: 'market', amount: 10 });
848
+ * ```
849
+ */
850
+ export declare class Rain extends Exchange {
851
+ constructor(options?: ExchangeOptions);
852
+ }
841
853
  /**
842
854
  * Mock exchange client.
843
855
  *