@imtbl/sdk 0.0.1-alpha.2 → 0.1.0-alpha

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/index.d.ts CHANGED
@@ -1,5 +1,24 @@
1
1
  /// <reference path="global.d.ts" />
2
2
  /// <reference types="node" />
3
+ import { ProviderConfiguration as ProviderConfiguration$1 } from 'config';
4
+
5
+ declare enum Environment {
6
+ PRODUCTION = "production",
7
+ SANDBOX = "sandbox"
8
+ }
9
+ declare class ImmutableConfiguration {
10
+ readonly environment: Environment;
11
+ readonly apiKey?: string;
12
+ constructor(options: {
13
+ environment: Environment;
14
+ apiKey?: string;
15
+ });
16
+ }
17
+ interface ModuleConfiguration<T> {
18
+ baseConfig: ImmutableConfiguration;
19
+ overrides?: T;
20
+ }
21
+
3
22
  declare type Bytes = ArrayLike<number>;
4
23
  declare type BytesLike = Bytes | string;
5
24
  interface Hexable {
@@ -726,6 +745,12 @@ interface AxiosInstance extends Axios {
726
745
  (url: string, config?: AxiosRequestConfig): AxiosPromise;
727
746
  }
728
747
 
748
+ /**
749
+ * Generates a deterministic Stark private key from the provided signer.
750
+ * @returns the private key as a hex string
751
+ */
752
+ declare function generateLegacyStarkPrivateKey(signer: Signer): Promise<string>;
753
+
729
754
  /**
730
755
  * An abstraction of a Stark account, which can be used to sign messages and transactions on StarkEx to execute state changing operations
731
756
  */
@@ -743,6 +768,19 @@ interface StarkSigner {
743
768
  */
744
769
  getAddress(): string | Promise<string>;
745
770
  }
771
+ /**
772
+ * A pair of Signers
773
+ */
774
+ interface WalletConnection {
775
+ /**
776
+ * The L1 signer
777
+ */
778
+ ethSigner: Signer;
779
+ /**
780
+ * The L2 signer
781
+ */
782
+ starkSigner: StarkSigner;
783
+ }
746
784
 
747
785
  /**
748
786
  * An ERC20 token
@@ -816,7 +854,7 @@ interface ConfigurationParameters {
816
854
  baseOptions?: any;
817
855
  formDataCtor?: new () => any;
818
856
  }
819
- declare class Configuration$1 {
857
+ declare class Configuration {
820
858
  /**
821
859
  * parameter for apiKey security
822
860
  * @param name security name
@@ -887,8 +925,8 @@ declare class Configuration$1 {
887
925
  declare class BaseAPI {
888
926
  protected basePath: string;
889
927
  protected axios: AxiosInstance;
890
- protected configuration: Configuration$1 | undefined;
891
- constructor(configuration?: Configuration$1, basePath?: string, axios?: AxiosInstance);
928
+ protected configuration: Configuration | undefined;
929
+ constructor(configuration?: Configuration, basePath?: string, axios?: AxiosInstance);
892
930
  }
893
931
 
894
932
  /**
@@ -999,49 +1037,6 @@ interface AggregateLimit {
999
1037
  'min_amount'?: number;
1000
1038
  }
1001
1039
 
1002
- /**
1003
- * Immutable X API
1004
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1005
- *
1006
- * The version of the OpenAPI document: 3.0
1007
- * Contact: support@immutable.com
1008
- *
1009
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1010
- * https://openapi-generator.tech
1011
- * Do not edit the class manually.
1012
- */
1013
- /**
1014
- *
1015
- * @export
1016
- * @interface ApiRegisterPassportUserRequest
1017
- */
1018
- interface ApiRegisterPassportUserRequest {
1019
- /**
1020
- * Eth signature
1021
- * @type {string}
1022
- * @memberof ApiRegisterPassportUserRequest
1023
- */
1024
- 'eth_signature': string;
1025
- /**
1026
- * The ether key of the user
1027
- * @type {string}
1028
- * @memberof ApiRegisterPassportUserRequest
1029
- */
1030
- 'ether_key': string;
1031
- /**
1032
- * Public stark key of the user
1033
- * @type {string}
1034
- * @memberof ApiRegisterPassportUserRequest
1035
- */
1036
- 'stark_key': string;
1037
- /**
1038
- * Payload signature
1039
- * @type {string}
1040
- * @memberof ApiRegisterPassportUserRequest
1041
- */
1042
- 'stark_signature': string;
1043
- }
1044
-
1045
1040
  /**
1046
1041
  * Immutable X API
1047
1042
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -1084,30 +1079,31 @@ interface CollectionDetails {
1084
1079
  * https://openapi-generator.tech
1085
1080
  * Do not edit the class manually.
1086
1081
  */
1082
+
1087
1083
  /**
1088
1084
  *
1089
1085
  * @export
1090
- * @interface Fee
1086
+ * @interface AssetProperties
1091
1087
  */
1092
- interface Fee {
1088
+ interface AssetProperties {
1093
1089
  /**
1094
- * Wallet address
1095
- * @type {string}
1096
- * @memberof Fee
1090
+ *
1091
+ * @type {CollectionDetails}
1092
+ * @memberof AssetProperties
1097
1093
  */
1098
- 'address': string;
1094
+ 'collection'?: CollectionDetails;
1099
1095
  /**
1100
- * The percentage of fee
1101
- * @type {number}
1102
- * @memberof Fee
1096
+ * Image URL of this asset
1097
+ * @type {string}
1098
+ * @memberof AssetProperties
1103
1099
  */
1104
- 'percentage': number;
1100
+ 'image_url'?: string;
1105
1101
  /**
1106
- * Type of fee. Examples: `royalty`, `maker`, `taker` or `protocol`
1102
+ * Name of this asset
1107
1103
  * @type {string}
1108
- * @memberof Fee
1104
+ * @memberof AssetProperties
1109
1105
  */
1110
- 'type': string;
1106
+ 'name'?: string;
1111
1107
  }
1112
1108
 
1113
1109
  /**
@@ -1121,25 +1117,13 @@ interface Fee {
1121
1117
  * https://openapi-generator.tech
1122
1118
  * Do not edit the class manually.
1123
1119
  */
1120
+
1124
1121
  /**
1125
- *
1122
+ * @type TokenDataProperties
1123
+ * Properties of this asset
1126
1124
  * @export
1127
- * @interface OrderDetails
1128
1125
  */
1129
- interface OrderDetails {
1130
- /**
1131
- * Buy orders for this asset
1132
- * @type {Array<object>}
1133
- * @memberof OrderDetails
1134
- */
1135
- 'buy_orders'?: Array<object>;
1136
- /**
1137
- * Sell orders for this asset
1138
- * @type {Array<object>}
1139
- * @memberof OrderDetails
1140
- */
1141
- 'sell_orders'?: Array<object>;
1142
- }
1126
+ declare type TokenDataProperties = AssetProperties;
1143
1127
 
1144
1128
  /**
1145
1129
  * Immutable X API
@@ -1156,101 +1140,78 @@ interface OrderDetails {
1156
1140
  /**
1157
1141
  *
1158
1142
  * @export
1159
- * @interface Asset
1143
+ * @interface TokenData
1160
1144
  */
1161
- interface Asset {
1162
- /**
1163
- *
1164
- * @type {CollectionDetails}
1165
- * @memberof Asset
1166
- */
1167
- 'collection': CollectionDetails;
1168
- /**
1169
- * Timestamp of when the asset was created
1170
- * @type {string}
1171
- * @memberof Asset
1172
- */
1173
- 'created_at': string | null;
1174
- /**
1175
- * Description of this asset
1176
- * @type {string}
1177
- * @memberof Asset
1178
- */
1179
- 'description': string | null;
1145
+ interface TokenData {
1180
1146
  /**
1181
- * Royalties to pay on this asset operations
1182
- * @type {Array<Fee>}
1183
- * @memberof Asset
1147
+ * Number of decimals supported by this asset
1148
+ * @type {number}
1149
+ * @memberof TokenData
1184
1150
  */
1185
- 'fees'?: Array<Fee>;
1151
+ 'decimals'?: number;
1186
1152
  /**
1187
1153
  * [DEPRECATED] Internal Immutable X Token ID
1188
1154
  * @type {string}
1189
- * @memberof Asset
1155
+ * @memberof TokenData
1190
1156
  */
1191
1157
  'id'?: string;
1192
- /**
1193
- * URL of the image which should be used for this asset
1194
- * @type {string}
1195
- * @memberof Asset
1196
- */
1197
- 'image_url': string | null;
1198
- /**
1199
- * Metadata of this asset
1200
- * @type {object}
1201
- * @memberof Asset
1202
- */
1203
- 'metadata': object | null;
1204
- /**
1205
- * Name of this asset
1206
- * @type {string}
1207
- * @memberof Asset
1208
- */
1209
- 'name': string | null;
1210
1158
  /**
1211
1159
  *
1212
- * @type {OrderDetails}
1213
- * @memberof Asset
1214
- */
1215
- 'orders'?: OrderDetails;
1216
- /**
1217
- * Status of this asset (where it is in the system)
1218
- * @type {string}
1219
- * @memberof Asset
1160
+ * @type {TokenDataProperties}
1161
+ * @memberof TokenData
1220
1162
  */
1221
- 'status': string;
1163
+ 'properties'?: TokenDataProperties;
1222
1164
  /**
1223
- * Address of the ERC721 contract
1165
+ * Quantity of this asset - inclusive of fees for buy order in v1 API and exclusive of fees in v3 API
1224
1166
  * @type {string}
1225
- * @memberof Asset
1167
+ * @memberof TokenData
1226
1168
  */
1227
- 'token_address': string;
1169
+ 'quantity': string;
1228
1170
  /**
1229
- * ERC721 Token ID of this asset
1171
+ * Quantity of this asset with the sum of all fees applied to the asset
1230
1172
  * @type {string}
1231
- * @memberof Asset
1173
+ * @memberof TokenData
1232
1174
  */
1233
- 'token_id': string;
1175
+ 'quantity_with_fees': string;
1234
1176
  /**
1235
- * Timestamp of when the asset was updated
1177
+ * Symbol of a token
1236
1178
  * @type {string}
1237
- * @memberof Asset
1179
+ * @memberof TokenData
1238
1180
  */
1239
- 'updated_at': string | null;
1181
+ 'symbol'?: string;
1240
1182
  /**
1241
- * URI to access this asset externally to Immutable X
1183
+ * Address of ERC721/ERC20 contract
1242
1184
  * @type {string}
1243
- * @memberof Asset
1185
+ * @memberof TokenData
1244
1186
  */
1245
- 'uri': string | null;
1187
+ 'token_address'?: string;
1246
1188
  /**
1247
- * Ethereum address of the user who owns this asset
1189
+ * ERC721 Token ID
1248
1190
  * @type {string}
1249
- * @memberof Asset
1191
+ * @memberof TokenData
1250
1192
  */
1251
- 'user': string;
1193
+ 'token_id'?: string;
1252
1194
  }
1253
1195
 
1196
+ /**
1197
+ * Immutable X API
1198
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1199
+ *
1200
+ * The version of the OpenAPI document: 3.0
1201
+ * Contact: support@immutable.com
1202
+ *
1203
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1204
+ * https://openapi-generator.tech
1205
+ * Do not edit the class manually.
1206
+ */
1207
+
1208
+ /**
1209
+ * @type TokenDataOAIGen
1210
+ * Token details of this asset
1211
+ * @export
1212
+ */
1213
+ declare type TokenDataOAIGen = TokenData;
1214
+
1254
1215
  /**
1255
1216
  * Immutable X API
1256
1217
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -1266,27 +1227,21 @@ interface Asset {
1266
1227
  /**
1267
1228
  *
1268
1229
  * @export
1269
- * @interface AssetProperties
1230
+ * @interface Token
1270
1231
  */
1271
- interface AssetProperties {
1232
+ interface Token {
1272
1233
  /**
1273
1234
  *
1274
- * @type {CollectionDetails}
1275
- * @memberof AssetProperties
1276
- */
1277
- 'collection'?: CollectionDetails;
1278
- /**
1279
- * Image URL of this asset
1280
- * @type {string}
1281
- * @memberof AssetProperties
1235
+ * @type {TokenDataOAIGen}
1236
+ * @memberof Token
1282
1237
  */
1283
- 'image_url'?: string;
1238
+ 'data': TokenDataOAIGen;
1284
1239
  /**
1285
- * Name of this asset
1240
+ * Type of this asset (ETH/ERC20/ERC721)
1286
1241
  * @type {string}
1287
- * @memberof AssetProperties
1242
+ * @memberof Token
1288
1243
  */
1289
- 'name'?: string;
1244
+ 'type': string;
1290
1245
  }
1291
1246
 
1292
1247
  /**
@@ -1300,33 +1255,385 @@ interface AssetProperties {
1300
1255
  * https://openapi-generator.tech
1301
1256
  * Do not edit the class manually.
1302
1257
  */
1303
-
1304
1258
  /**
1305
1259
  *
1306
1260
  * @export
1307
- * @interface AssetWithOrders
1261
+ * @interface FeeData
1308
1262
  */
1309
- interface AssetWithOrders {
1310
- /**
1311
- *
1312
- * @type {CollectionDetails}
1313
- * @memberof AssetWithOrders
1314
- */
1315
- 'collection': CollectionDetails;
1263
+ interface FeeData {
1316
1264
  /**
1317
- * Timestamp of when the asset was created
1265
+ * Address of ERC721/ERC20 contract
1318
1266
  * @type {string}
1319
- * @memberof AssetWithOrders
1267
+ * @memberof FeeData
1320
1268
  */
1321
- 'created_at': string | null;
1269
+ 'contract_address'?: string;
1322
1270
  /**
1323
- * Description of this asset
1324
- * @type {string}
1325
- * @memberof AssetWithOrders
1271
+ * Number of decimals supported by this asset
1272
+ * @type {number}
1273
+ * @memberof FeeData
1326
1274
  */
1327
- 'description': string | null;
1328
- /**
1329
- * Royalties to pay on this asset operations
1275
+ 'decimals'?: number;
1276
+ }
1277
+
1278
+ /**
1279
+ * Immutable X API
1280
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1281
+ *
1282
+ * The version of the OpenAPI document: 3.0
1283
+ * Contact: support@immutable.com
1284
+ *
1285
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1286
+ * https://openapi-generator.tech
1287
+ * Do not edit the class manually.
1288
+ */
1289
+
1290
+ /**
1291
+ *
1292
+ * @export
1293
+ * @interface FeeToken
1294
+ */
1295
+ interface FeeToken {
1296
+ /**
1297
+ *
1298
+ * @type {FeeData}
1299
+ * @memberof FeeToken
1300
+ */
1301
+ 'data'?: FeeData;
1302
+ /**
1303
+ * Fee token type. One of ETH/ERC20
1304
+ * @type {string}
1305
+ * @memberof FeeToken
1306
+ */
1307
+ 'type'?: FeeTokenTypeEnum;
1308
+ }
1309
+ declare const FeeTokenTypeEnum: {
1310
+ readonly Eth: "ETH";
1311
+ readonly Erc20: "ERC20";
1312
+ };
1313
+ declare type FeeTokenTypeEnum = typeof FeeTokenTypeEnum[keyof typeof FeeTokenTypeEnum];
1314
+
1315
+ /**
1316
+ * Immutable X API
1317
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1318
+ *
1319
+ * The version of the OpenAPI document: 3.0
1320
+ * Contact: support@immutable.com
1321
+ *
1322
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1323
+ * https://openapi-generator.tech
1324
+ * Do not edit the class manually.
1325
+ */
1326
+
1327
+ /**
1328
+ * @type OrderFeeInfoToken
1329
+ * Details of the fee currency
1330
+ * @export
1331
+ */
1332
+ declare type OrderFeeInfoToken = FeeToken;
1333
+
1334
+ /**
1335
+ * Immutable X API
1336
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1337
+ *
1338
+ * The version of the OpenAPI document: 3.0
1339
+ * Contact: support@immutable.com
1340
+ *
1341
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1342
+ * https://openapi-generator.tech
1343
+ * Do not edit the class manually.
1344
+ */
1345
+
1346
+ /**
1347
+ *
1348
+ * @export
1349
+ * @interface OrderFeeInfo
1350
+ */
1351
+ interface OrderFeeInfo {
1352
+ /**
1353
+ * Address of the fee recipient
1354
+ * @type {string}
1355
+ * @memberof OrderFeeInfo
1356
+ */
1357
+ 'address'?: string;
1358
+ /**
1359
+ * Fee amount
1360
+ * @type {string}
1361
+ * @memberof OrderFeeInfo
1362
+ */
1363
+ 'amount'?: string;
1364
+ /**
1365
+ *
1366
+ * @type {OrderFeeInfoToken}
1367
+ * @memberof OrderFeeInfo
1368
+ */
1369
+ 'token'?: OrderFeeInfoToken;
1370
+ /**
1371
+ * Fee type
1372
+ * @type {string}
1373
+ * @memberof OrderFeeInfo
1374
+ */
1375
+ 'type'?: string;
1376
+ }
1377
+
1378
+ /**
1379
+ * Immutable X API
1380
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1381
+ *
1382
+ * The version of the OpenAPI document: 3.0
1383
+ * Contact: support@immutable.com
1384
+ *
1385
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1386
+ * https://openapi-generator.tech
1387
+ * Do not edit the class manually.
1388
+ */
1389
+ /**
1390
+ *
1391
+ * @export
1392
+ * @interface ApiRegisterPassportUserRequest
1393
+ */
1394
+ interface ApiRegisterPassportUserRequest {
1395
+ /**
1396
+ * Eth signature
1397
+ * @type {string}
1398
+ * @memberof ApiRegisterPassportUserRequest
1399
+ */
1400
+ 'eth_signature': string;
1401
+ /**
1402
+ * The ether key of the user
1403
+ * @type {string}
1404
+ * @memberof ApiRegisterPassportUserRequest
1405
+ */
1406
+ 'ether_key': string;
1407
+ /**
1408
+ * Public stark key of the user
1409
+ * @type {string}
1410
+ * @memberof ApiRegisterPassportUserRequest
1411
+ */
1412
+ 'stark_key': string;
1413
+ /**
1414
+ * Payload signature
1415
+ * @type {string}
1416
+ * @memberof ApiRegisterPassportUserRequest
1417
+ */
1418
+ 'stark_signature': string;
1419
+ }
1420
+
1421
+ /**
1422
+ * Immutable X API
1423
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1424
+ *
1425
+ * The version of the OpenAPI document: 3.0
1426
+ * Contact: support@immutable.com
1427
+ *
1428
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1429
+ * https://openapi-generator.tech
1430
+ * Do not edit the class manually.
1431
+ */
1432
+ /**
1433
+ *
1434
+ * @export
1435
+ * @interface Fee
1436
+ */
1437
+ interface Fee {
1438
+ /**
1439
+ * Wallet address
1440
+ * @type {string}
1441
+ * @memberof Fee
1442
+ */
1443
+ 'address': string;
1444
+ /**
1445
+ * The percentage of fee
1446
+ * @type {number}
1447
+ * @memberof Fee
1448
+ */
1449
+ 'percentage': number;
1450
+ /**
1451
+ * Type of fee. Examples: `royalty`, `maker`, `taker` or `protocol`
1452
+ * @type {string}
1453
+ * @memberof Fee
1454
+ */
1455
+ 'type': string;
1456
+ }
1457
+
1458
+ /**
1459
+ * Immutable X API
1460
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1461
+ *
1462
+ * The version of the OpenAPI document: 3.0
1463
+ * Contact: support@immutable.com
1464
+ *
1465
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1466
+ * https://openapi-generator.tech
1467
+ * Do not edit the class manually.
1468
+ */
1469
+ /**
1470
+ *
1471
+ * @export
1472
+ * @interface OrderDetails
1473
+ */
1474
+ interface OrderDetails {
1475
+ /**
1476
+ * Buy orders for this asset
1477
+ * @type {Array<object>}
1478
+ * @memberof OrderDetails
1479
+ */
1480
+ 'buy_orders'?: Array<object>;
1481
+ /**
1482
+ * Sell orders for this asset
1483
+ * @type {Array<object>}
1484
+ * @memberof OrderDetails
1485
+ */
1486
+ 'sell_orders'?: Array<object>;
1487
+ }
1488
+
1489
+ /**
1490
+ * Immutable X API
1491
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1492
+ *
1493
+ * The version of the OpenAPI document: 3.0
1494
+ * Contact: support@immutable.com
1495
+ *
1496
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1497
+ * https://openapi-generator.tech
1498
+ * Do not edit the class manually.
1499
+ */
1500
+
1501
+ /**
1502
+ *
1503
+ * @export
1504
+ * @interface Asset
1505
+ */
1506
+ interface Asset {
1507
+ /**
1508
+ *
1509
+ * @type {CollectionDetails}
1510
+ * @memberof Asset
1511
+ */
1512
+ 'collection': CollectionDetails;
1513
+ /**
1514
+ * Timestamp of when the asset was created
1515
+ * @type {string}
1516
+ * @memberof Asset
1517
+ */
1518
+ 'created_at': string | null;
1519
+ /**
1520
+ * Description of this asset
1521
+ * @type {string}
1522
+ * @memberof Asset
1523
+ */
1524
+ 'description': string | null;
1525
+ /**
1526
+ * Royalties to pay on this asset operations
1527
+ * @type {Array<Fee>}
1528
+ * @memberof Asset
1529
+ */
1530
+ 'fees'?: Array<Fee>;
1531
+ /**
1532
+ * [DEPRECATED] Internal Immutable X Token ID
1533
+ * @type {string}
1534
+ * @memberof Asset
1535
+ */
1536
+ 'id'?: string;
1537
+ /**
1538
+ * URL of the image which should be used for this asset
1539
+ * @type {string}
1540
+ * @memberof Asset
1541
+ */
1542
+ 'image_url': string | null;
1543
+ /**
1544
+ * Metadata of this asset
1545
+ * @type {object}
1546
+ * @memberof Asset
1547
+ */
1548
+ 'metadata': object | null;
1549
+ /**
1550
+ * Name of this asset
1551
+ * @type {string}
1552
+ * @memberof Asset
1553
+ */
1554
+ 'name': string | null;
1555
+ /**
1556
+ *
1557
+ * @type {OrderDetails}
1558
+ * @memberof Asset
1559
+ */
1560
+ 'orders'?: OrderDetails;
1561
+ /**
1562
+ * Status of this asset (where it is in the system)
1563
+ * @type {string}
1564
+ * @memberof Asset
1565
+ */
1566
+ 'status': string;
1567
+ /**
1568
+ * Address of the ERC721 contract
1569
+ * @type {string}
1570
+ * @memberof Asset
1571
+ */
1572
+ 'token_address': string;
1573
+ /**
1574
+ * ERC721 Token ID of this asset
1575
+ * @type {string}
1576
+ * @memberof Asset
1577
+ */
1578
+ 'token_id': string;
1579
+ /**
1580
+ * Timestamp of when the asset was updated
1581
+ * @type {string}
1582
+ * @memberof Asset
1583
+ */
1584
+ 'updated_at': string | null;
1585
+ /**
1586
+ * URI to access this asset externally to Immutable X
1587
+ * @type {string}
1588
+ * @memberof Asset
1589
+ */
1590
+ 'uri': string | null;
1591
+ /**
1592
+ * Ethereum address of the user who owns this asset
1593
+ * @type {string}
1594
+ * @memberof Asset
1595
+ */
1596
+ 'user': string;
1597
+ }
1598
+
1599
+ /**
1600
+ * Immutable X API
1601
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
1602
+ *
1603
+ * The version of the OpenAPI document: 3.0
1604
+ * Contact: support@immutable.com
1605
+ *
1606
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
1607
+ * https://openapi-generator.tech
1608
+ * Do not edit the class manually.
1609
+ */
1610
+
1611
+ /**
1612
+ *
1613
+ * @export
1614
+ * @interface AssetWithOrders
1615
+ */
1616
+ interface AssetWithOrders {
1617
+ /**
1618
+ *
1619
+ * @type {CollectionDetails}
1620
+ * @memberof AssetWithOrders
1621
+ */
1622
+ 'collection': CollectionDetails;
1623
+ /**
1624
+ * Timestamp of when the asset was created
1625
+ * @type {string}
1626
+ * @memberof AssetWithOrders
1627
+ */
1628
+ 'created_at': string | null;
1629
+ /**
1630
+ * Description of this asset
1631
+ * @type {string}
1632
+ * @memberof AssetWithOrders
1633
+ */
1634
+ 'description': string | null;
1635
+ /**
1636
+ * Royalties to pay on this asset operations
1330
1637
  * @type {Array<Fee>}
1331
1638
  * @memberof AssetWithOrders
1332
1639
  */
@@ -1986,79 +2293,171 @@ interface FeeEntry {
1986
2293
  /**
1987
2294
  *
1988
2295
  * @export
1989
- * @interface CreateOrderRequest
2296
+ * @interface CreateOrderRequest
2297
+ */
2298
+ interface CreateOrderRequest {
2299
+ /**
2300
+ * Amount to buy
2301
+ * @type {string}
2302
+ * @memberof CreateOrderRequest
2303
+ */
2304
+ 'amount_buy': string;
2305
+ /**
2306
+ * Amount to sell
2307
+ * @type {string}
2308
+ * @memberof CreateOrderRequest
2309
+ */
2310
+ 'amount_sell': string;
2311
+ /**
2312
+ * ID of the asset to buy
2313
+ * @type {string}
2314
+ * @memberof CreateOrderRequest
2315
+ */
2316
+ 'asset_id_buy': string;
2317
+ /**
2318
+ * ID of the asset to sell
2319
+ * @type {string}
2320
+ * @memberof CreateOrderRequest
2321
+ */
2322
+ 'asset_id_sell': string;
2323
+ /**
2324
+ * Expiration timestamp for this order
2325
+ * @type {number}
2326
+ * @memberof CreateOrderRequest
2327
+ */
2328
+ 'expiration_timestamp': number;
2329
+ /**
2330
+ * Fee information
2331
+ * @type {Array<FeeEntry>}
2332
+ * @memberof CreateOrderRequest
2333
+ */
2334
+ 'fees'?: Array<FeeEntry>;
2335
+ /**
2336
+ * Whether to include fees in order
2337
+ * @type {boolean}
2338
+ * @memberof CreateOrderRequest
2339
+ */
2340
+ 'include_fees'?: boolean;
2341
+ /**
2342
+ * Nonce of the order
2343
+ * @type {number}
2344
+ * @memberof CreateOrderRequest
2345
+ */
2346
+ 'nonce': number;
2347
+ /**
2348
+ * Public stark key of the user creating order
2349
+ * @type {string}
2350
+ * @memberof CreateOrderRequest
2351
+ */
2352
+ 'stark_key': string;
2353
+ /**
2354
+ * Payload signature
2355
+ * @type {string}
2356
+ * @memberof CreateOrderRequest
2357
+ */
2358
+ 'stark_signature': string;
2359
+ /**
2360
+ * ID of the vault into which the bought asset will be placed
2361
+ * @type {number}
2362
+ * @memberof CreateOrderRequest
2363
+ */
2364
+ 'vault_id_buy': number;
2365
+ /**
2366
+ * ID of the vault to sell from
2367
+ * @type {number}
2368
+ * @memberof CreateOrderRequest
2369
+ */
2370
+ 'vault_id_sell': number;
2371
+ }
2372
+
2373
+ /**
2374
+ * Immutable X API
2375
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2376
+ *
2377
+ * The version of the OpenAPI document: 3.0
2378
+ * Contact: support@immutable.com
2379
+ *
2380
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2381
+ * https://openapi-generator.tech
2382
+ * Do not edit the class manually.
2383
+ */
2384
+
2385
+ /**
2386
+ *
2387
+ * @export
2388
+ * @interface CreateOrderRequestV3
1990
2389
  */
1991
- interface CreateOrderRequest {
2390
+ interface CreateOrderRequestV3 {
1992
2391
  /**
1993
2392
  * Amount to buy
1994
2393
  * @type {string}
1995
- * @memberof CreateOrderRequest
2394
+ * @memberof CreateOrderRequestV3
1996
2395
  */
1997
2396
  'amount_buy': string;
1998
2397
  /**
1999
2398
  * Amount to sell
2000
2399
  * @type {string}
2001
- * @memberof CreateOrderRequest
2400
+ * @memberof CreateOrderRequestV3
2002
2401
  */
2003
2402
  'amount_sell': string;
2004
2403
  /**
2005
2404
  * ID of the asset to buy
2006
2405
  * @type {string}
2007
- * @memberof CreateOrderRequest
2406
+ * @memberof CreateOrderRequestV3
2008
2407
  */
2009
2408
  'asset_id_buy': string;
2010
2409
  /**
2011
2410
  * ID of the asset to sell
2012
2411
  * @type {string}
2013
- * @memberof CreateOrderRequest
2412
+ * @memberof CreateOrderRequestV3
2014
2413
  */
2015
2414
  'asset_id_sell': string;
2016
2415
  /**
2017
2416
  * Expiration timestamp for this order
2018
2417
  * @type {number}
2019
- * @memberof CreateOrderRequest
2418
+ * @memberof CreateOrderRequestV3
2020
2419
  */
2021
2420
  'expiration_timestamp': number;
2022
2421
  /**
2023
2422
  * Fee information
2024
2423
  * @type {Array<FeeEntry>}
2025
- * @memberof CreateOrderRequest
2424
+ * @memberof CreateOrderRequestV3
2026
2425
  */
2027
2426
  'fees'?: Array<FeeEntry>;
2028
2427
  /**
2029
- * Whether to include fees in order
2428
+ * [DEPRECATED] Whether to include fees in order
2030
2429
  * @type {boolean}
2031
- * @memberof CreateOrderRequest
2430
+ * @memberof CreateOrderRequestV3
2032
2431
  */
2033
2432
  'include_fees'?: boolean;
2034
2433
  /**
2035
2434
  * Nonce of the order
2036
2435
  * @type {number}
2037
- * @memberof CreateOrderRequest
2436
+ * @memberof CreateOrderRequestV3
2038
2437
  */
2039
2438
  'nonce': number;
2040
2439
  /**
2041
2440
  * Public stark key of the user creating order
2042
2441
  * @type {string}
2043
- * @memberof CreateOrderRequest
2442
+ * @memberof CreateOrderRequestV3
2044
2443
  */
2045
2444
  'stark_key': string;
2046
2445
  /**
2047
2446
  * Payload signature
2048
2447
  * @type {string}
2049
- * @memberof CreateOrderRequest
2448
+ * @memberof CreateOrderRequestV3
2050
2449
  */
2051
2450
  'stark_signature': string;
2052
2451
  /**
2053
2452
  * ID of the vault into which the bought asset will be placed
2054
2453
  * @type {number}
2055
- * @memberof CreateOrderRequest
2454
+ * @memberof CreateOrderRequestV3
2056
2455
  */
2057
2456
  'vault_id_buy': number;
2058
2457
  /**
2059
2458
  * ID of the vault to sell from
2060
2459
  * @type {number}
2061
- * @memberof CreateOrderRequest
2460
+ * @memberof CreateOrderRequestV3
2062
2461
  */
2063
2462
  'vault_id_sell': number;
2064
2463
  }
@@ -2205,6 +2604,25 @@ interface FeeInfo {
2205
2604
  'source_vault_id': number;
2206
2605
  }
2207
2606
 
2607
+ /**
2608
+ * Immutable X API
2609
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2610
+ *
2611
+ * The version of the OpenAPI document: 3.0
2612
+ * Contact: support@immutable.com
2613
+ *
2614
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2615
+ * https://openapi-generator.tech
2616
+ * Do not edit the class manually.
2617
+ */
2618
+
2619
+ /**
2620
+ * @type CreateTradeRequestV1FeeInfo
2621
+ * Fee details
2622
+ * @export
2623
+ */
2624
+ declare type CreateTradeRequestV1FeeInfo = FeeInfo;
2625
+
2208
2626
  /**
2209
2627
  * Immutable X API
2210
2628
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -2255,10 +2673,10 @@ interface CreateTradeRequestV1 {
2255
2673
  'expiration_timestamp': number;
2256
2674
  /**
2257
2675
  *
2258
- * @type {FeeInfo}
2676
+ * @type {CreateTradeRequestV1FeeInfo}
2259
2677
  * @memberof CreateTradeRequestV1
2260
2678
  */
2261
- 'fee_info'?: FeeInfo;
2679
+ 'fee_info'?: CreateTradeRequestV1FeeInfo;
2262
2680
  /**
2263
2681
  * Fee information
2264
2682
  * @type {Array<FeeEntry>}
@@ -2722,106 +3140,6 @@ interface CurrencyWithLimits {
2722
3140
  'symbol'?: string;
2723
3141
  }
2724
3142
 
2725
- /**
2726
- * Immutable X API
2727
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2728
- *
2729
- * The version of the OpenAPI document: 3.0
2730
- * Contact: support@immutable.com
2731
- *
2732
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2733
- * https://openapi-generator.tech
2734
- * Do not edit the class manually.
2735
- */
2736
-
2737
- /**
2738
- *
2739
- * @export
2740
- * @interface TokenData
2741
- */
2742
- interface TokenData {
2743
- /**
2744
- * Number of decimals supported by this asset
2745
- * @type {number}
2746
- * @memberof TokenData
2747
- */
2748
- 'decimals'?: number;
2749
- /**
2750
- * [DEPRECATED] Internal Immutable X Token ID
2751
- * @type {string}
2752
- * @memberof TokenData
2753
- */
2754
- 'id'?: string;
2755
- /**
2756
- *
2757
- * @type {AssetProperties}
2758
- * @memberof TokenData
2759
- */
2760
- 'properties'?: AssetProperties;
2761
- /**
2762
- * Quantity of this asset - inclusive of fees for buy order in v1 API and exclusive of fees in v3 API
2763
- * @type {string}
2764
- * @memberof TokenData
2765
- */
2766
- 'quantity': string;
2767
- /**
2768
- * Quantity of this asset with the sum of all fees applied to the asset
2769
- * @type {string}
2770
- * @memberof TokenData
2771
- */
2772
- 'quantity_with_fees': string;
2773
- /**
2774
- * Symbol of a token
2775
- * @type {string}
2776
- * @memberof TokenData
2777
- */
2778
- 'symbol'?: string;
2779
- /**
2780
- * Address of ERC721/ERC20 contract
2781
- * @type {string}
2782
- * @memberof TokenData
2783
- */
2784
- 'token_address'?: string;
2785
- /**
2786
- * ERC721 Token ID
2787
- * @type {string}
2788
- * @memberof TokenData
2789
- */
2790
- 'token_id'?: string;
2791
- }
2792
-
2793
- /**
2794
- * Immutable X API
2795
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
2796
- *
2797
- * The version of the OpenAPI document: 3.0
2798
- * Contact: support@immutable.com
2799
- *
2800
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
2801
- * https://openapi-generator.tech
2802
- * Do not edit the class manually.
2803
- */
2804
-
2805
- /**
2806
- *
2807
- * @export
2808
- * @interface Token
2809
- */
2810
- interface Token {
2811
- /**
2812
- *
2813
- * @type {TokenData}
2814
- * @memberof Token
2815
- */
2816
- 'data': TokenData;
2817
- /**
2818
- * Type of this asset (ETH/ERC20/ERC721)
2819
- * @type {string}
2820
- * @memberof Token
2821
- */
2822
- 'type': string;
2823
- }
2824
-
2825
3143
  /**
2826
3144
  * Immutable X API
2827
3145
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3056,74 +3374,6 @@ interface ExchangeCreateExchangeAndURLResponse {
3056
3374
  'wallet_address'?: string;
3057
3375
  }
3058
3376
 
3059
- /**
3060
- * Immutable X API
3061
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3062
- *
3063
- * The version of the OpenAPI document: 3.0
3064
- * Contact: support@immutable.com
3065
- *
3066
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3067
- * https://openapi-generator.tech
3068
- * Do not edit the class manually.
3069
- */
3070
- /**
3071
- *
3072
- * @export
3073
- * @interface FeeData
3074
- */
3075
- interface FeeData {
3076
- /**
3077
- * Address of ERC721/ERC20 contract
3078
- * @type {string}
3079
- * @memberof FeeData
3080
- */
3081
- 'contract_address'?: string;
3082
- /**
3083
- * Number of decimals supported by this asset
3084
- * @type {number}
3085
- * @memberof FeeData
3086
- */
3087
- 'decimals'?: number;
3088
- }
3089
-
3090
- /**
3091
- * Immutable X API
3092
- * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3093
- *
3094
- * The version of the OpenAPI document: 3.0
3095
- * Contact: support@immutable.com
3096
- *
3097
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3098
- * https://openapi-generator.tech
3099
- * Do not edit the class manually.
3100
- */
3101
-
3102
- /**
3103
- *
3104
- * @export
3105
- * @interface FeeToken
3106
- */
3107
- interface FeeToken {
3108
- /**
3109
- *
3110
- * @type {FeeData}
3111
- * @memberof FeeToken
3112
- */
3113
- 'data'?: FeeData;
3114
- /**
3115
- * Fee token type. One of ETH/ERC20
3116
- * @type {string}
3117
- * @memberof FeeToken
3118
- */
3119
- 'type'?: FeeTokenTypeEnum;
3120
- }
3121
- declare const FeeTokenTypeEnum: {
3122
- readonly Eth: "ETH";
3123
- readonly Erc20: "ERC20";
3124
- };
3125
- declare type FeeTokenTypeEnum = typeof FeeTokenTypeEnum[keyof typeof FeeTokenTypeEnum];
3126
-
3127
3377
  /**
3128
3378
  * Immutable X API
3129
3379
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3712,6 +3962,44 @@ interface GetSignableDepositResponse {
3712
3962
  'vault_id': number;
3713
3963
  }
3714
3964
 
3965
+ /**
3966
+ * Immutable X API
3967
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3968
+ *
3969
+ * The version of the OpenAPI document: 3.0
3970
+ * Contact: support@immutable.com
3971
+ *
3972
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3973
+ * https://openapi-generator.tech
3974
+ * Do not edit the class manually.
3975
+ */
3976
+
3977
+ /**
3978
+ * @type GetSignableOrderRequestV3TokenBuy
3979
+ * Token to buy
3980
+ * @export
3981
+ */
3982
+ declare type GetSignableOrderRequestV3TokenBuy = SignableToken;
3983
+
3984
+ /**
3985
+ * Immutable X API
3986
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
3987
+ *
3988
+ * The version of the OpenAPI document: 3.0
3989
+ * Contact: support@immutable.com
3990
+ *
3991
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
3992
+ * https://openapi-generator.tech
3993
+ * Do not edit the class manually.
3994
+ */
3995
+
3996
+ /**
3997
+ * @type GetSignableOrderRequestV3TokenSell
3998
+ * Token to sell
3999
+ * @export
4000
+ */
4001
+ declare type GetSignableOrderRequestV3TokenSell = SignableToken;
4002
+
3715
4003
  /**
3716
4004
  * Immutable X API
3717
4005
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3727,53 +4015,78 @@ interface GetSignableDepositResponse {
3727
4015
  /**
3728
4016
  *
3729
4017
  * @export
3730
- * @interface GetSignableOrderRequest
4018
+ * @interface GetSignableOrderRequestV3
3731
4019
  */
3732
- interface GetSignableOrderRequest {
4020
+ interface GetSignableOrderRequestV3 {
3733
4021
  /**
3734
4022
  * Fee-exclusive amount to buy the asset
3735
4023
  * @type {string}
3736
- * @memberof GetSignableOrderRequest
4024
+ * @memberof GetSignableOrderRequestV3
3737
4025
  */
3738
4026
  'amount_buy': string;
3739
4027
  /**
3740
4028
  * Amount to sell (quantity)
3741
4029
  * @type {string}
3742
- * @memberof GetSignableOrderRequest
4030
+ * @memberof GetSignableOrderRequestV3
3743
4031
  */
3744
4032
  'amount_sell': string;
3745
4033
  /**
3746
4034
  * ExpirationTimestamp in Unix time. Note: will be rounded down to the nearest hour
3747
4035
  * @type {number}
3748
- * @memberof GetSignableOrderRequest
4036
+ * @memberof GetSignableOrderRequestV3
3749
4037
  */
3750
4038
  'expiration_timestamp'?: number;
3751
4039
  /**
3752
4040
  * Inclusion of either maker or taker fees
3753
4041
  * @type {Array<FeeEntry>}
3754
- * @memberof GetSignableOrderRequest
4042
+ * @memberof GetSignableOrderRequestV3
3755
4043
  */
3756
4044
  'fees'?: Array<FeeEntry>;
4045
+ /**
4046
+ * SplitFees dictates whether fees will be split between maker & taker, set split_fees to true when submitting signing to v3 endpoints and vice versa for v1
4047
+ * @type {boolean}
4048
+ * @memberof GetSignableOrderRequestV3
4049
+ */
4050
+ 'split_fees'?: boolean;
3757
4051
  /**
3758
4052
  *
3759
- * @type {SignableToken}
3760
- * @memberof GetSignableOrderRequest
4053
+ * @type {GetSignableOrderRequestV3TokenBuy}
4054
+ * @memberof GetSignableOrderRequestV3
3761
4055
  */
3762
- 'token_buy': SignableToken;
4056
+ 'token_buy': GetSignableOrderRequestV3TokenBuy;
3763
4057
  /**
3764
4058
  *
3765
- * @type {SignableToken}
3766
- * @memberof GetSignableOrderRequest
4059
+ * @type {GetSignableOrderRequestV3TokenSell}
4060
+ * @memberof GetSignableOrderRequestV3
3767
4061
  */
3768
- 'token_sell': SignableToken;
4062
+ 'token_sell': GetSignableOrderRequestV3TokenSell;
3769
4063
  /**
3770
4064
  * Ethereum address of the submitting user
3771
4065
  * @type {string}
3772
- * @memberof GetSignableOrderRequest
4066
+ * @memberof GetSignableOrderRequestV3
3773
4067
  */
3774
4068
  'user': string;
3775
4069
  }
3776
4070
 
4071
+ /**
4072
+ * Immutable X API
4073
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4074
+ *
4075
+ * The version of the OpenAPI document: 3.0
4076
+ * Contact: support@immutable.com
4077
+ *
4078
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
4079
+ * https://openapi-generator.tech
4080
+ * Do not edit the class manually.
4081
+ */
4082
+
4083
+ /**
4084
+ * @type GetSignableOrderResponseFeeInfo
4085
+ * Fee information
4086
+ * @export
4087
+ */
4088
+ declare type GetSignableOrderResponseFeeInfo = FeeInfo;
4089
+
3777
4090
  /**
3778
4091
  * Immutable X API
3779
4092
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -3824,10 +4137,10 @@ interface GetSignableOrderResponse {
3824
4137
  'expiration_timestamp': number;
3825
4138
  /**
3826
4139
  *
3827
- * @type {FeeInfo}
4140
+ * @type {GetSignableOrderResponseFeeInfo}
3828
4141
  * @memberof GetSignableOrderResponse
3829
4142
  */
3830
- 'fee_info'?: FeeInfo;
4143
+ 'fee_info'?: GetSignableOrderResponseFeeInfo;
3831
4144
  /**
3832
4145
  * Nonce of the order
3833
4146
  * @type {number}
@@ -4003,6 +4316,25 @@ interface GetSignableTradeRequest {
4003
4316
  'user': string;
4004
4317
  }
4005
4318
 
4319
+ /**
4320
+ * Immutable X API
4321
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4322
+ *
4323
+ * The version of the OpenAPI document: 3.0
4324
+ * Contact: support@immutable.com
4325
+ *
4326
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
4327
+ * https://openapi-generator.tech
4328
+ * Do not edit the class manually.
4329
+ */
4330
+
4331
+ /**
4332
+ * @type GetSignableTradeResponseFeeInfo
4333
+ * Fee information
4334
+ * @export
4335
+ */
4336
+ declare type GetSignableTradeResponseFeeInfo = FeeInfo;
4337
+
4006
4338
  /**
4007
4339
  * Immutable X API
4008
4340
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -4053,10 +4385,10 @@ interface GetSignableTradeResponse {
4053
4385
  'expiration_timestamp': number;
4054
4386
  /**
4055
4387
  *
4056
- * @type {FeeInfo}
4388
+ * @type {GetSignableTradeResponseFeeInfo}
4057
4389
  * @memberof GetSignableTradeResponse
4058
4390
  */
4059
- 'fee_info'?: FeeInfo;
4391
+ 'fee_info'?: GetSignableTradeResponseFeeInfo;
4060
4392
  /**
4061
4393
  * Nonce of the order
4062
4394
  * @type {number}
@@ -4783,30 +5115,299 @@ interface Mint {
4783
5115
  */
4784
5116
 
4785
5117
  /**
4786
- *
5118
+ *
5119
+ * @export
5120
+ * @interface ListMintsResponse
5121
+ */
5122
+ interface ListMintsResponse {
5123
+ /**
5124
+ * Generated cursor returned by previous query
5125
+ * @type {string}
5126
+ * @memberof ListMintsResponse
5127
+ */
5128
+ 'cursor': string;
5129
+ /**
5130
+ * Remaining results flag. 1: there are remaining results matching this query, 0: no remaining results
5131
+ * @type {number}
5132
+ * @memberof ListMintsResponse
5133
+ */
5134
+ 'remaining': number;
5135
+ /**
5136
+ * Mints matching query parameters
5137
+ * @type {Array<Mint>}
5138
+ * @memberof ListMintsResponse
5139
+ */
5140
+ 'result': Array<Mint>;
5141
+ }
5142
+
5143
+ /**
5144
+ * Immutable X API
5145
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5146
+ *
5147
+ * The version of the OpenAPI document: 3.0
5148
+ * Contact: support@immutable.com
5149
+ *
5150
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5151
+ * https://openapi-generator.tech
5152
+ * Do not edit the class manually.
5153
+ */
5154
+
5155
+ /**
5156
+ * @type OrderBuy
5157
+ * Details of the asset being bought
5158
+ * @export
5159
+ */
5160
+ declare type OrderBuy = Token;
5161
+
5162
+ /**
5163
+ * Immutable X API
5164
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5165
+ *
5166
+ * The version of the OpenAPI document: 3.0
5167
+ * Contact: support@immutable.com
5168
+ *
5169
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5170
+ * https://openapi-generator.tech
5171
+ * Do not edit the class manually.
5172
+ */
5173
+
5174
+ /**
5175
+ * @type OrderSell
5176
+ * Details of the asset being sold
5177
+ * @export
5178
+ */
5179
+ declare type OrderSell = Token;
5180
+
5181
+ /**
5182
+ * Immutable X API
5183
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5184
+ *
5185
+ * The version of the OpenAPI document: 3.0
5186
+ * Contact: support@immutable.com
5187
+ *
5188
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5189
+ * https://openapi-generator.tech
5190
+ * Do not edit the class manually.
5191
+ */
5192
+
5193
+ /**
5194
+ *
5195
+ * @export
5196
+ * @interface Order
5197
+ */
5198
+ interface Order {
5199
+ /**
5200
+ * Amount of the asset already sold by this order
5201
+ * @type {string}
5202
+ * @memberof Order
5203
+ */
5204
+ 'amount_sold': string | null;
5205
+ /**
5206
+ *
5207
+ * @type {OrderBuy}
5208
+ * @memberof Order
5209
+ */
5210
+ 'buy': OrderBuy;
5211
+ /**
5212
+ * Expiration timestamp of this order
5213
+ * @type {string}
5214
+ * @memberof Order
5215
+ */
5216
+ 'expiration_timestamp': string | null;
5217
+ /**
5218
+ * Fee information for the order
5219
+ * @type {Array<OrderFeeInfo>}
5220
+ * @memberof Order
5221
+ */
5222
+ 'fees'?: Array<OrderFeeInfo>;
5223
+ /**
5224
+ * ID of the order
5225
+ * @type {number}
5226
+ * @memberof Order
5227
+ */
5228
+ 'order_id': number;
5229
+ /**
5230
+ *
5231
+ * @type {OrderSell}
5232
+ * @memberof Order
5233
+ */
5234
+ 'sell': OrderSell;
5235
+ /**
5236
+ * Status of the order
5237
+ * @type {string}
5238
+ * @memberof Order
5239
+ */
5240
+ 'status': string;
5241
+ /**
5242
+ * Timestamp this order was created
5243
+ * @type {string}
5244
+ * @memberof Order
5245
+ */
5246
+ 'timestamp': string | null;
5247
+ /**
5248
+ * Updated timestamp of this order
5249
+ * @type {string}
5250
+ * @memberof Order
5251
+ */
5252
+ 'updated_timestamp': string | null;
5253
+ /**
5254
+ * Ethereum address of the user who submitted the order
5255
+ * @type {string}
5256
+ * @memberof Order
5257
+ */
5258
+ 'user': string;
5259
+ }
5260
+
5261
+ /**
5262
+ * Immutable X API
5263
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5264
+ *
5265
+ * The version of the OpenAPI document: 3.0
5266
+ * Contact: support@immutable.com
5267
+ *
5268
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5269
+ * https://openapi-generator.tech
5270
+ * Do not edit the class manually.
5271
+ */
5272
+
5273
+ /**
5274
+ *
5275
+ * @export
5276
+ * @interface ListOrdersResponse
5277
+ */
5278
+ interface ListOrdersResponse {
5279
+ /**
5280
+ * Generated cursor returned by previous query
5281
+ * @type {string}
5282
+ * @memberof ListOrdersResponse
5283
+ */
5284
+ 'cursor': string;
5285
+ /**
5286
+ * Remaining results flag. 1: there are remaining results matching this query, 0: no remaining results
5287
+ * @type {number}
5288
+ * @memberof ListOrdersResponse
5289
+ */
5290
+ 'remaining': number;
5291
+ /**
5292
+ * Orders matching query parameters
5293
+ * @type {Array<Order>}
5294
+ * @memberof ListOrdersResponse
5295
+ */
5296
+ 'result': Array<Order>;
5297
+ }
5298
+
5299
+ /**
5300
+ * Immutable X API
5301
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5302
+ *
5303
+ * The version of the OpenAPI document: 3.0
5304
+ * Contact: support@immutable.com
5305
+ *
5306
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5307
+ * https://openapi-generator.tech
5308
+ * Do not edit the class manually.
5309
+ */
5310
+
5311
+ /**
5312
+ * @type OrderV3Buy
5313
+ * Details of the asset being bought
5314
+ * @export
5315
+ */
5316
+ declare type OrderV3Buy = Token;
5317
+
5318
+ /**
5319
+ * Immutable X API
5320
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5321
+ *
5322
+ * The version of the OpenAPI document: 3.0
5323
+ * Contact: support@immutable.com
5324
+ *
5325
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5326
+ * https://openapi-generator.tech
5327
+ * Do not edit the class manually.
5328
+ */
5329
+
5330
+ /**
5331
+ *
5332
+ * @export
5333
+ * @interface OrdersMakerTakerFee
5334
+ */
5335
+ interface OrdersMakerTakerFee {
5336
+ /**
5337
+ * Number of Decimals supported the fee token
5338
+ * @type {number}
5339
+ * @memberof OrdersMakerTakerFee
5340
+ */
5341
+ 'decimals'?: number;
5342
+ /**
5343
+ * Fees
5344
+ * @type {Array<OrderFeeInfo>}
5345
+ * @memberof OrdersMakerTakerFee
5346
+ */
5347
+ 'fees'?: Array<OrderFeeInfo>;
5348
+ /**
5349
+ * Quantity of this asset with the sum of all fees applied to the asset
5350
+ * @type {string}
5351
+ * @memberof OrdersMakerTakerFee
5352
+ */
5353
+ 'quantity_with_fees': string;
5354
+ /**
5355
+ * Symbol of the fee token
5356
+ * @type {string}
5357
+ * @memberof OrdersMakerTakerFee
5358
+ */
5359
+ 'symbol'?: string;
5360
+ /**
5361
+ * Address of the ERC20 contract for the fee token
5362
+ * @type {string}
5363
+ * @memberof OrdersMakerTakerFee
5364
+ */
5365
+ 'token_address'?: string;
5366
+ /**
5367
+ * Type of the fee token (ETH/ERC20)
5368
+ * @type {string}
5369
+ * @memberof OrdersMakerTakerFee
5370
+ */
5371
+ 'token_type'?: string;
5372
+ }
5373
+
5374
+ /**
5375
+ * Immutable X API
5376
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5377
+ *
5378
+ * The version of the OpenAPI document: 3.0
5379
+ * Contact: support@immutable.com
5380
+ *
5381
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5382
+ * https://openapi-generator.tech
5383
+ * Do not edit the class manually.
5384
+ */
5385
+
5386
+ /**
5387
+ * @type OrderV3MakerFees
5388
+ * MakerFees is the information about the fees that needs to be paid by the maker (liquidity)
5389
+ * @export
5390
+ */
5391
+ declare type OrderV3MakerFees = OrdersMakerTakerFee;
5392
+
5393
+ /**
5394
+ * Immutable X API
5395
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5396
+ *
5397
+ * The version of the OpenAPI document: 3.0
5398
+ * Contact: support@immutable.com
5399
+ *
5400
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5401
+ * https://openapi-generator.tech
5402
+ * Do not edit the class manually.
5403
+ */
5404
+
5405
+ /**
5406
+ * @type OrderV3Sell
5407
+ * Details of the asset being sold
4787
5408
  * @export
4788
- * @interface ListMintsResponse
4789
5409
  */
4790
- interface ListMintsResponse {
4791
- /**
4792
- * Generated cursor returned by previous query
4793
- * @type {string}
4794
- * @memberof ListMintsResponse
4795
- */
4796
- 'cursor': string;
4797
- /**
4798
- * Remaining results flag. 1: there are remaining results matching this query, 0: no remaining results
4799
- * @type {number}
4800
- * @memberof ListMintsResponse
4801
- */
4802
- 'remaining': number;
4803
- /**
4804
- * Mints matching query parameters
4805
- * @type {Array<Mint>}
4806
- * @memberof ListMintsResponse
4807
- */
4808
- 'result': Array<Mint>;
4809
- }
5410
+ declare type OrderV3Sell = Token;
4810
5411
 
4811
5412
  /**
4812
5413
  * Immutable X API
@@ -4821,36 +5422,11 @@ interface ListMintsResponse {
4821
5422
  */
4822
5423
 
4823
5424
  /**
4824
- *
5425
+ * @type OrderV3TakerFees
5426
+ * TakerFees is the information about the fees that needs to be paid by the taker (liquidity)
4825
5427
  * @export
4826
- * @interface OrderFeeInfo
4827
5428
  */
4828
- interface OrderFeeInfo {
4829
- /**
4830
- * Address of the fee recipient
4831
- * @type {string}
4832
- * @memberof OrderFeeInfo
4833
- */
4834
- 'address'?: string;
4835
- /**
4836
- * Fee amount
4837
- * @type {string}
4838
- * @memberof OrderFeeInfo
4839
- */
4840
- 'amount'?: string;
4841
- /**
4842
- *
4843
- * @type {FeeToken}
4844
- * @memberof OrderFeeInfo
4845
- */
4846
- 'token'?: FeeToken;
4847
- /**
4848
- * Fee type
4849
- * @type {string}
4850
- * @memberof OrderFeeInfo
4851
- */
4852
- 'type'?: string;
4853
- }
5429
+ declare type OrderV3TakerFees = OrdersMakerTakerFee;
4854
5430
 
4855
5431
  /**
4856
5432
  * Immutable X API
@@ -4867,67 +5443,85 @@ interface OrderFeeInfo {
4867
5443
  /**
4868
5444
  *
4869
5445
  * @export
4870
- * @interface Order
5446
+ * @interface OrderV3
4871
5447
  */
4872
- interface Order {
5448
+ interface OrderV3 {
4873
5449
  /**
4874
5450
  * Amount of the asset already sold by this order
4875
5451
  * @type {string}
4876
- * @memberof Order
5452
+ * @memberof OrderV3
4877
5453
  */
4878
5454
  'amount_sold': string | null;
4879
5455
  /**
4880
5456
  *
4881
- * @type {Token}
4882
- * @memberof Order
5457
+ * @type {OrderV3Buy}
5458
+ * @memberof OrderV3
4883
5459
  */
4884
- 'buy': Token;
5460
+ 'buy': OrderV3Buy;
4885
5461
  /**
4886
5462
  * Expiration timestamp of this order
4887
5463
  * @type {string}
4888
- * @memberof Order
5464
+ * @memberof OrderV3
4889
5465
  */
4890
5466
  'expiration_timestamp': string | null;
4891
5467
  /**
4892
5468
  * Fee information for the order
4893
5469
  * @type {Array<OrderFeeInfo>}
4894
- * @memberof Order
5470
+ * @memberof OrderV3
4895
5471
  */
4896
5472
  'fees'?: Array<OrderFeeInfo>;
5473
+ /**
5474
+ *
5475
+ * @type {OrderV3MakerFees}
5476
+ * @memberof OrderV3
5477
+ */
5478
+ 'maker_fees'?: OrderV3MakerFees;
5479
+ /**
5480
+ * MakerTakerType
5481
+ * @type {string}
5482
+ * @memberof OrderV3
5483
+ */
5484
+ 'maker_taker_type'?: string;
4897
5485
  /**
4898
5486
  * ID of the order
4899
5487
  * @type {number}
4900
- * @memberof Order
5488
+ * @memberof OrderV3
4901
5489
  */
4902
5490
  'order_id': number;
4903
5491
  /**
4904
5492
  *
4905
- * @type {Token}
4906
- * @memberof Order
5493
+ * @type {OrderV3Sell}
5494
+ * @memberof OrderV3
4907
5495
  */
4908
- 'sell': Token;
5496
+ 'sell': OrderV3Sell;
4909
5497
  /**
4910
5498
  * Status of the order
4911
5499
  * @type {string}
4912
- * @memberof Order
5500
+ * @memberof OrderV3
4913
5501
  */
4914
5502
  'status': string;
5503
+ /**
5504
+ *
5505
+ * @type {OrderV3TakerFees}
5506
+ * @memberof OrderV3
5507
+ */
5508
+ 'taker_fees'?: OrderV3TakerFees;
4915
5509
  /**
4916
5510
  * Timestamp this order was created
4917
5511
  * @type {string}
4918
- * @memberof Order
5512
+ * @memberof OrderV3
4919
5513
  */
4920
5514
  'timestamp': string | null;
4921
5515
  /**
4922
5516
  * Updated timestamp of this order
4923
5517
  * @type {string}
4924
- * @memberof Order
5518
+ * @memberof OrderV3
4925
5519
  */
4926
5520
  'updated_timestamp': string | null;
4927
5521
  /**
4928
5522
  * Ethereum address of the user who submitted the order
4929
5523
  * @type {string}
4930
- * @memberof Order
5524
+ * @memberof OrderV3
4931
5525
  */
4932
5526
  'user': string;
4933
5527
  }
@@ -4947,27 +5541,27 @@ interface Order {
4947
5541
  /**
4948
5542
  *
4949
5543
  * @export
4950
- * @interface ListOrdersResponse
5544
+ * @interface ListOrdersResponseV3
4951
5545
  */
4952
- interface ListOrdersResponse {
5546
+ interface ListOrdersResponseV3 {
4953
5547
  /**
4954
5548
  * Generated cursor returned by previous query
4955
5549
  * @type {string}
4956
- * @memberof ListOrdersResponse
5550
+ * @memberof ListOrdersResponseV3
4957
5551
  */
4958
5552
  'cursor': string;
4959
5553
  /**
4960
5554
  * Remaining results flag. 1: there are remaining results matching this query, 0: no remaining results
4961
5555
  * @type {number}
4962
- * @memberof ListOrdersResponse
5556
+ * @memberof ListOrdersResponseV3
4963
5557
  */
4964
5558
  'remaining': number;
4965
5559
  /**
4966
5560
  * Orders matching query parameters
4967
- * @type {Array<Order>}
4968
- * @memberof ListOrdersResponse
5561
+ * @type {Array<OrderV3>}
5562
+ * @memberof ListOrdersResponseV3
4969
5563
  */
4970
- 'result': Array<Order>;
5564
+ 'result': Array<OrderV3>;
4971
5565
  }
4972
5566
 
4973
5567
  /**
@@ -5106,6 +5700,44 @@ interface TradeSide {
5106
5700
  'token_type': string;
5107
5701
  }
5108
5702
 
5703
+ /**
5704
+ * Immutable X API
5705
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5706
+ *
5707
+ * The version of the OpenAPI document: 3.0
5708
+ * Contact: support@immutable.com
5709
+ *
5710
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5711
+ * https://openapi-generator.tech
5712
+ * Do not edit the class manually.
5713
+ */
5714
+
5715
+ /**
5716
+ * @type TradeA
5717
+ * Side A of this trade (the buy order)
5718
+ * @export
5719
+ */
5720
+ declare type TradeA = TradeSide;
5721
+
5722
+ /**
5723
+ * Immutable X API
5724
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5725
+ *
5726
+ * The version of the OpenAPI document: 3.0
5727
+ * Contact: support@immutable.com
5728
+ *
5729
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
5730
+ * https://openapi-generator.tech
5731
+ * Do not edit the class manually.
5732
+ */
5733
+
5734
+ /**
5735
+ * @type TradeB
5736
+ * Side B of this trade (the sell order)
5737
+ * @export
5738
+ */
5739
+ declare type TradeB = TradeSide;
5740
+
5109
5741
  /**
5110
5742
  * Immutable X API
5111
5743
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -5126,16 +5758,16 @@ interface TradeSide {
5126
5758
  interface Trade {
5127
5759
  /**
5128
5760
  *
5129
- * @type {TradeSide}
5761
+ * @type {TradeA}
5130
5762
  * @memberof Trade
5131
5763
  */
5132
- 'a': TradeSide;
5764
+ 'a': TradeA;
5133
5765
  /**
5134
5766
  *
5135
- * @type {TradeSide}
5767
+ * @type {TradeB}
5136
5768
  * @memberof Trade
5137
5769
  */
5138
- 'b': TradeSide;
5770
+ 'b': TradeB;
5139
5771
  /**
5140
5772
  * Status of this trade
5141
5773
  * @type {string}
@@ -6143,6 +6775,129 @@ interface SuccessResponse {
6143
6775
  'result': string;
6144
6776
  }
6145
6777
 
6778
+ /**
6779
+ * Immutable X API
6780
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6781
+ *
6782
+ * The version of the OpenAPI document: 3.0
6783
+ * Contact: support@immutable.com
6784
+ *
6785
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
6786
+ * https://openapi-generator.tech
6787
+ * Do not edit the class manually.
6788
+ */
6789
+
6790
+ /**
6791
+ * @type TradesCreateTradeRequestFeeInfo
6792
+ * Fee details
6793
+ * @export
6794
+ */
6795
+ declare type TradesCreateTradeRequestFeeInfo = FeeInfo;
6796
+
6797
+ /**
6798
+ * Immutable X API
6799
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6800
+ *
6801
+ * The version of the OpenAPI document: 3.0
6802
+ * Contact: support@immutable.com
6803
+ *
6804
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
6805
+ * https://openapi-generator.tech
6806
+ * Do not edit the class manually.
6807
+ */
6808
+
6809
+ /**
6810
+ *
6811
+ * @export
6812
+ * @interface TradesCreateTradeRequest
6813
+ */
6814
+ interface TradesCreateTradeRequest {
6815
+ /**
6816
+ * Amount to buy
6817
+ * @type {string}
6818
+ * @memberof TradesCreateTradeRequest
6819
+ */
6820
+ 'amount_buy': string;
6821
+ /**
6822
+ * Amount to sell
6823
+ * @type {string}
6824
+ * @memberof TradesCreateTradeRequest
6825
+ */
6826
+ 'amount_sell': string;
6827
+ /**
6828
+ * ID of the asset to buy
6829
+ * @type {string}
6830
+ * @memberof TradesCreateTradeRequest
6831
+ */
6832
+ 'asset_id_buy': string;
6833
+ /**
6834
+ * ID of the asset to sell
6835
+ * @type {string}
6836
+ * @memberof TradesCreateTradeRequest
6837
+ */
6838
+ 'asset_id_sell': string;
6839
+ /**
6840
+ * Expiration timestamp for this trade
6841
+ * @type {number}
6842
+ * @memberof TradesCreateTradeRequest
6843
+ */
6844
+ 'expiration_timestamp': number;
6845
+ /**
6846
+ *
6847
+ * @type {TradesCreateTradeRequestFeeInfo}
6848
+ * @memberof TradesCreateTradeRequest
6849
+ */
6850
+ 'fee_info'?: TradesCreateTradeRequestFeeInfo;
6851
+ /**
6852
+ * Fee information
6853
+ * @type {Array<FeeEntry>}
6854
+ * @memberof TradesCreateTradeRequest
6855
+ */
6856
+ 'fees'?: Array<FeeEntry>;
6857
+ /**
6858
+ * [deprecated] All orders include fees since the introduction of protocol fees
6859
+ * @type {boolean}
6860
+ * @memberof TradesCreateTradeRequest
6861
+ */
6862
+ 'include_fees'?: boolean;
6863
+ /**
6864
+ * Nonce of the trade
6865
+ * @type {number}
6866
+ * @memberof TradesCreateTradeRequest
6867
+ */
6868
+ 'nonce': number;
6869
+ /**
6870
+ * ID of the order
6871
+ * @type {number}
6872
+ * @memberof TradesCreateTradeRequest
6873
+ */
6874
+ 'order_id': number;
6875
+ /**
6876
+ * Public stark key of the user creating trade
6877
+ * @type {string}
6878
+ * @memberof TradesCreateTradeRequest
6879
+ */
6880
+ 'stark_key': string;
6881
+ /**
6882
+ * Payload signature
6883
+ * @type {string}
6884
+ * @memberof TradesCreateTradeRequest
6885
+ */
6886
+ 'stark_signature': string;
6887
+ /**
6888
+ * ID of the vault into which the traded asset will be placed
6889
+ * @type {number}
6890
+ * @memberof TradesCreateTradeRequest
6891
+ */
6892
+ 'vault_id_buy': number;
6893
+ /**
6894
+ * ID of the vault to sell from
6895
+ * @type {number}
6896
+ * @memberof TradesCreateTradeRequest
6897
+ */
6898
+ 'vault_id_sell': number;
6899
+ }
6900
+
6146
6901
  /**
6147
6902
  * Immutable X API
6148
6903
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
@@ -6358,7 +7113,7 @@ interface BalancesApiGetBalanceRequest {
6358
7113
  */
6359
7114
  readonly owner: string;
6360
7115
  /**
6361
- * Token address
7116
+ * Token address or \&#39;eth\&#39;
6362
7117
  * @type {string}
6363
7118
  * @memberof BalancesApiGetBalance
6364
7119
  */
@@ -7672,25 +8427,62 @@ interface OrdersApiCancelOrderRequest {
7672
8427
  /**
7673
8428
  * cancel an order
7674
8429
  * @type {CancelOrderRequest}
7675
- * @memberof OrdersApiCancelOrder
8430
+ * @memberof OrdersApiCancelOrder
8431
+ */
8432
+ readonly cancelOrderRequest: CancelOrderRequest;
8433
+ /**
8434
+ * eth address
8435
+ * @type {string}
8436
+ * @memberof OrdersApiCancelOrder
8437
+ */
8438
+ readonly xImxEthAddress?: string;
8439
+ /**
8440
+ * eth signature
8441
+ * @type {string}
8442
+ * @memberof OrdersApiCancelOrder
8443
+ */
8444
+ readonly xImxEthSignature?: string;
8445
+ /**
8446
+ * Authorization header
8447
+ * @type {string}
8448
+ * @memberof OrdersApiCancelOrder
8449
+ */
8450
+ readonly authorization?: string;
8451
+ }
8452
+ /**
8453
+ * Request parameters for cancelOrderV3 operation in OrdersApi.
8454
+ * @export
8455
+ * @interface OrdersApiCancelOrderV3Request
8456
+ */
8457
+ interface OrdersApiCancelOrderV3Request {
8458
+ /**
8459
+ * Order ID to cancel
8460
+ * @type {string}
8461
+ * @memberof OrdersApiCancelOrderV3
8462
+ */
8463
+ readonly id: string;
8464
+ /**
8465
+ * cancel an order
8466
+ * @type {CancelOrderRequest}
8467
+ * @memberof OrdersApiCancelOrderV3
7676
8468
  */
7677
8469
  readonly cancelOrderRequest: CancelOrderRequest;
7678
8470
  /**
7679
8471
  * eth address
7680
8472
  * @type {string}
7681
- * @memberof OrdersApiCancelOrder
8473
+ * @memberof OrdersApiCancelOrderV3
7682
8474
  */
7683
8475
  readonly xImxEthAddress?: string;
7684
8476
  /**
7685
8477
  * eth signature
7686
8478
  * @type {string}
7687
- * @memberof OrdersApiCancelOrder
8479
+ * @memberof OrdersApiCancelOrderV3
7688
8480
  */
7689
8481
  readonly xImxEthSignature?: string;
7690
8482
  /**
7691
8483
  * Authorization header
7692
8484
  * @type {string}
7693
- * @memberof OrdersApiCancelOrder
8485
+ * @memberof OrdersApiCancelOrderV3
7694
8486
  */
7695
8487
  readonly authorization?: string;
7696
8488
  }
@@ -7725,6 +8517,37 @@ interface OrdersApiCreateOrderRequest {
7725
8517
  */
7726
8518
  readonly authorization?: string;
7727
8519
  }
8520
+ /**
8521
+ * Request parameters for createOrderV3 operation in OrdersApi.
8522
+ * @export
8523
+ * @interface OrdersApiCreateOrderV3Request
8524
+ */
8525
+ interface OrdersApiCreateOrderV3Request {
8526
+ /**
8527
+ * create an order
8528
+ * @type {CreateOrderRequestV3}
8529
+ * @memberof OrdersApiCreateOrderV3
8530
+ */
8531
+ readonly createOrderRequest: CreateOrderRequestV3;
8532
+ /**
8533
+ * eth address
8534
+ * @type {string}
8535
+ * @memberof OrdersApiCreateOrderV3
8536
+ */
8537
+ readonly xImxEthAddress?: string;
8538
+ /**
8539
+ * eth signature
8540
+ * @type {string}
8541
+ * @memberof OrdersApiCreateOrderV3
8542
+ */
8543
+ readonly xImxEthSignature?: string;
8544
+ /**
8545
+ * Authorization header
8546
+ * @type {string}
8547
+ * @memberof OrdersApiCreateOrderV3
8548
+ */
8549
+ readonly authorization?: string;
8550
+ }
7728
8551
  /**
7729
8552
  * Request parameters for getOrder operation in OrdersApi.
7730
8553
  * @export
@@ -7756,6 +8579,37 @@ interface OrdersApiGetOrderRequest {
7756
8579
  */
7757
8580
  readonly auxiliaryFeeRecipients?: string;
7758
8581
  }
8582
+ /**
8583
+ * Request parameters for getOrderV3 operation in OrdersApi.
8584
+ * @export
8585
+ * @interface OrdersApiGetOrderV3Request
8586
+ */
8587
+ interface OrdersApiGetOrderV3Request {
8588
+ /**
8589
+ * Order ID
8590
+ * @type {string}
8591
+ * @memberof OrdersApiGetOrderV3
8592
+ */
8593
+ readonly id: string;
8594
+ /**
8595
+ * Set flag to true to include fee body for the order
8596
+ * @type {boolean}
8597
+ * @memberof OrdersApiGetOrderV3
8598
+ */
8599
+ readonly includeFees?: boolean;
8600
+ /**
8601
+ * Comma separated string of fee percentages that are to be paired with auxiliary_fee_recipients
8602
+ * @type {string}
8603
+ * @memberof OrdersApiGetOrderV3
8604
+ */
8605
+ readonly auxiliaryFeePercentages?: string;
8606
+ /**
8607
+ * Comma separated string of fee recipients that are to be paired with auxiliary_fee_percentages
8608
+ * @type {string}
8609
+ * @memberof OrdersApiGetOrderV3
8610
+ */
8611
+ readonly auxiliaryFeeRecipients?: string;
8612
+ }
7759
8613
  /**
7760
8614
  * Request parameters for getSignableCancelOrder operation in OrdersApi.
7761
8615
  * @export
@@ -7769,6 +8623,19 @@ interface OrdersApiGetSignableCancelOrderRequest {
7769
8623
  */
7770
8624
  readonly getSignableCancelOrderRequest: GetSignableCancelOrderRequest;
7771
8625
  }
8626
+ /**
8627
+ * Request parameters for getSignableCancelOrderV3 operation in OrdersApi.
8628
+ * @export
8629
+ * @interface OrdersApiGetSignableCancelOrderV3Request
8630
+ */
8631
+ interface OrdersApiGetSignableCancelOrderV3Request {
8632
+ /**
8633
+ * get a signable cancel order
8634
+ * @type {GetSignableCancelOrderRequest}
8635
+ * @memberof OrdersApiGetSignableCancelOrderV3
8636
+ */
8637
+ readonly getSignableCancelOrderRequest: GetSignableCancelOrderRequest;
8638
+ }
7772
8639
  /**
7773
8640
  * Request parameters for getSignableOrder operation in OrdersApi.
7774
8641
  * @export
@@ -7776,11 +8643,11 @@ interface OrdersApiGetSignableCancelOrderRequest {
7776
8643
  */
7777
8644
  interface OrdersApiGetSignableOrderRequest {
7778
8645
  /**
7779
- * get a signable order
7780
- * @type {GetSignableOrderRequest}
8646
+ * get a signable order v3
8647
+ * @type {GetSignableOrderRequestV3}
7781
8648
  * @memberof OrdersApiGetSignableOrder
7782
8649
  */
7783
- readonly getSignableOrderRequestV3: GetSignableOrderRequest;
8650
+ readonly getSignableOrderRequestV3: GetSignableOrderRequestV3;
7784
8651
  }
7785
8652
  /**
7786
8653
  * Request parameters for listOrders operation in OrdersApi.
@@ -7825,25 +8692,25 @@ interface OrdersApiListOrdersRequest {
7825
8692
  */
7826
8693
  readonly status?: 'active' | 'filled' | 'cancelled' | 'expired' | 'inactive';
7827
8694
  /**
7828
- * Minimum created at timestamp for this order, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8695
+ * Filter orders to include those with created_at timestamps after this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
7829
8696
  * @type {string}
7830
8697
  * @memberof OrdersApiListOrders
7831
8698
  */
7832
8699
  readonly minTimestamp?: string;
7833
8700
  /**
7834
- * Maximum created at timestamp for this order, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8701
+ * Filter orders to include those with created_at timestamps before this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
7835
8702
  * @type {string}
7836
8703
  * @memberof OrdersApiListOrders
7837
8704
  */
7838
8705
  readonly maxTimestamp?: string;
7839
8706
  /**
7840
- * Minimum updated at timestamp for this order, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8707
+ * Filter orders to include those with updated_at timestamps after this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
7841
8708
  * @type {string}
7842
8709
  * @memberof OrdersApiListOrders
7843
8710
  */
7844
8711
  readonly updatedMinTimestamp?: string;
7845
8712
  /**
7846
- * Maximum updated at timestamp for this order, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8713
+ * Filter orders to include those with updated_at timestamps before this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
7847
8714
  * @type {string}
7848
8715
  * @memberof OrdersApiListOrders
7849
8716
  */
@@ -7963,6 +8830,187 @@ interface OrdersApiListOrdersRequest {
7963
8830
  */
7964
8831
  readonly includeFees?: boolean;
7965
8832
  }
8833
+ /**
8834
+ * Request parameters for listOrdersV3 operation in OrdersApi.
8835
+ * @export
8836
+ * @interface OrdersApiListOrdersV3Request
8837
+ */
8838
+ interface OrdersApiListOrdersV3Request {
8839
+ /**
8840
+ * Page size of the result
8841
+ * @type {number}
8842
+ * @memberof OrdersApiListOrdersV3
8843
+ */
8844
+ readonly pageSize?: number;
8845
+ /**
8846
+ * Cursor
8847
+ * @type {string}
8848
+ * @memberof OrdersApiListOrdersV3
8849
+ */
8850
+ readonly cursor?: string;
8851
+ /**
8852
+ * Property to sort by
8853
+ * @type {'created_at' | 'expired_at' | 'sell_quantity' | 'buy_quantity' | 'buy_quantity_with_fees' | 'updated_at'}
8854
+ * @memberof OrdersApiListOrdersV3
8855
+ */
8856
+ readonly orderBy?: 'created_at' | 'expired_at' | 'sell_quantity' | 'buy_quantity' | 'buy_quantity_with_fees' | 'updated_at';
8857
+ /**
8858
+ * Direction to sort (asc/desc)
8859
+ * @type {string}
8860
+ * @memberof OrdersApiListOrdersV3
8861
+ */
8862
+ readonly direction?: string;
8863
+ /**
8864
+ * Ethereum address of the user who submitted this order
8865
+ * @type {string}
8866
+ * @memberof OrdersApiListOrdersV3
8867
+ */
8868
+ readonly user?: string;
8869
+ /**
8870
+ * Status of this order
8871
+ * @type {'active' | 'filled' | 'cancelled' | 'expired' | 'inactive'}
8872
+ * @memberof OrdersApiListOrdersV3
8873
+ */
8874
+ readonly status?: 'active' | 'filled' | 'cancelled' | 'expired' | 'inactive';
8875
+ /**
8876
+ * Filter orders to include those with created_at timestamps after this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8877
+ * @type {string}
8878
+ * @memberof OrdersApiListOrdersV3
8879
+ */
8880
+ readonly minTimestamp?: string;
8881
+ /**
8882
+ * Filter orders to include those with created_at timestamps before this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8883
+ * @type {string}
8884
+ * @memberof OrdersApiListOrdersV3
8885
+ */
8886
+ readonly maxTimestamp?: string;
8887
+ /**
8888
+ * Filter orders to include those with updated_at timestamps after this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8889
+ * @type {string}
8890
+ * @memberof OrdersApiListOrdersV3
8891
+ */
8892
+ readonly updatedMinTimestamp?: string;
8893
+ /**
8894
+ * Filter orders to include those with updated_at timestamps before this time, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
8895
+ * @type {string}
8896
+ * @memberof OrdersApiListOrdersV3
8897
+ */
8898
+ readonly updatedMaxTimestamp?: string;
8899
+ /**
8900
+ * Token type of the asset this order buys
8901
+ * @type {string}
8902
+ * @memberof OrdersApiListOrdersV3
8903
+ */
8904
+ readonly buyTokenType?: string;
8905
+ /**
8906
+ * ERC721 Token ID of the asset this order buys
8907
+ * @type {string}
8908
+ * @memberof OrdersApiListOrdersV3
8909
+ */
8910
+ readonly buyTokenId?: string;
8911
+ /**
8912
+ * Internal IMX ID of the asset this order buys
8913
+ * @type {string}
8914
+ * @memberof OrdersApiListOrdersV3
8915
+ */
8916
+ readonly buyAssetId?: string;
8917
+ /**
8918
+ * Token address of the asset this order buys
8919
+ * @type {string}
8920
+ * @memberof OrdersApiListOrdersV3
8921
+ */
8922
+ readonly buyTokenAddress?: string;
8923
+ /**
8924
+ * Token name of the asset this order buys
8925
+ * @type {string}
8926
+ * @memberof OrdersApiListOrdersV3
8927
+ */
8928
+ readonly buyTokenName?: string;
8929
+ /**
8930
+ * Min quantity for the asset this order buys
8931
+ * @type {string}
8932
+ * @memberof OrdersApiListOrdersV3
8933
+ */
8934
+ readonly buyMinQuantity?: string;
8935
+ /**
8936
+ * Max quantity for the asset this order buys
8937
+ * @type {string}
8938
+ * @memberof OrdersApiListOrdersV3
8939
+ */
8940
+ readonly buyMaxQuantity?: string;
8941
+ /**
8942
+ * JSON-encoded metadata filters for the asset this order buys
8943
+ * @type {string}
8944
+ * @memberof OrdersApiListOrdersV3
8945
+ */
8946
+ readonly buyMetadata?: string;
8947
+ /**
8948
+ * Token type of the asset this order sells
8949
+ * @type {string}
8950
+ * @memberof OrdersApiListOrdersV3
8951
+ */
8952
+ readonly sellTokenType?: string;
8953
+ /**
8954
+ * ERC721 Token ID of the asset this order sells
8955
+ * @type {string}
8956
+ * @memberof OrdersApiListOrdersV3
8957
+ */
8958
+ readonly sellTokenId?: string;
8959
+ /**
8960
+ * Internal IMX ID of the asset this order sells
8961
+ * @type {string}
8962
+ * @memberof OrdersApiListOrdersV3
8963
+ */
8964
+ readonly sellAssetId?: string;
8965
+ /**
8966
+ * Token address of the asset this order sells
8967
+ * @type {string}
8968
+ * @memberof OrdersApiListOrdersV3
8969
+ */
8970
+ readonly sellTokenAddress?: string;
8971
+ /**
8972
+ * Token name of the asset this order sells
8973
+ * @type {string}
8974
+ * @memberof OrdersApiListOrdersV3
8975
+ */
8976
+ readonly sellTokenName?: string;
8977
+ /**
8978
+ * Min quantity for the asset this order sells
8979
+ * @type {string}
8980
+ * @memberof OrdersApiListOrdersV3
8981
+ */
8982
+ readonly sellMinQuantity?: string;
8983
+ /**
8984
+ * Max quantity for the asset this order sells
8985
+ * @type {string}
8986
+ * @memberof OrdersApiListOrdersV3
8987
+ */
8988
+ readonly sellMaxQuantity?: string;
8989
+ /**
8990
+ * JSON-encoded metadata filters for the asset this order sells
8991
+ * @type {string}
8992
+ * @memberof OrdersApiListOrdersV3
8993
+ */
8994
+ readonly sellMetadata?: string;
8995
+ /**
8996
+ * Comma separated string of fee percentages that are to be paired with auxiliary_fee_recipients
8997
+ * @type {string}
8998
+ * @memberof OrdersApiListOrdersV3
8999
+ */
9000
+ readonly auxiliaryFeePercentages?: string;
9001
+ /**
9002
+ * Comma separated string of fee recipients that are to be paired with auxiliary_fee_percentages
9003
+ * @type {string}
9004
+ * @memberof OrdersApiListOrdersV3
9005
+ */
9006
+ readonly auxiliaryFeeRecipients?: string;
9007
+ /**
9008
+ * Set flag to true to include fee object for orders
9009
+ * @type {boolean}
9010
+ * @memberof OrdersApiListOrdersV3
9011
+ */
9012
+ readonly includeFees?: boolean;
9013
+ }
7966
9014
  /**
7967
9015
  * OrdersApi - object-oriented interface
7968
9016
  * @export
@@ -7971,7 +9019,7 @@ interface OrdersApiListOrdersRequest {
7971
9019
  */
7972
9020
  declare class OrdersApi extends BaseAPI {
7973
9021
  /**
7974
- * Cancel an order
9022
+ * Cancel an order. Use https://docs.x.immutable.com/reference#/operations/getSignableCancelOrder to get request body params.
7975
9023
  * @summary Cancel an order
7976
9024
  * @param {OrdersApiCancelOrderRequest} requestParameters Request parameters.
7977
9025
  * @param {*} [options] Override http request option.
@@ -7980,7 +9028,16 @@ declare class OrdersApi extends BaseAPI {
7980
9028
  */
7981
9029
  cancelOrder(requestParameters: OrdersApiCancelOrderRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<CancelOrderResponse, any>>;
7982
9030
  /**
7983
- * Create an order
9031
+ * Cancel an order (V3)
9032
+ * @summary Cancel an order (V3)
9033
+ * @param {OrdersApiCancelOrderV3Request} requestParameters Request parameters.
9034
+ * @param {*} [options] Override http request option.
9035
+ * @throws {RequiredError}
9036
+ * @memberof OrdersApi
9037
+ */
9038
+ cancelOrderV3(requestParameters: OrdersApiCancelOrderV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<CancelOrderResponse, any>>;
9039
+ /**
9040
+ * Create an order. Use https://docs.x.immutable.com/reference#/operations/getSignableOrder to get request body params.
7984
9041
  * @summary Create an order
7985
9042
  * @param {OrdersApiCreateOrderRequest} requestParameters Request parameters.
7986
9043
  * @param {*} [options] Override http request option.
@@ -7989,14 +9046,32 @@ declare class OrdersApi extends BaseAPI {
7989
9046
  */
7990
9047
  createOrder(requestParameters: OrdersApiCreateOrderRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<CreateOrderResponse, any>>;
7991
9048
  /**
7992
- * Get details of an order with the given ID
7993
- * @summary Get details of an order with the given ID
9049
+ * Create an order using the v3 orderbook. Currently only buy NFT orders are supported.
9050
+ * @summary Create an order (V3)
9051
+ * @param {OrdersApiCreateOrderV3Request} requestParameters Request parameters.
9052
+ * @param {*} [options] Override http request option.
9053
+ * @throws {RequiredError}
9054
+ * @memberof OrdersApi
9055
+ */
9056
+ createOrderV3(requestParameters: OrdersApiCreateOrderV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<CreateOrderResponse, any>>;
9057
+ /**
9058
+ * Get an order
9059
+ * @summary Get an order
7994
9060
  * @param {OrdersApiGetOrderRequest} requestParameters Request parameters.
7995
9061
  * @param {*} [options] Override http request option.
7996
9062
  * @throws {RequiredError}
7997
9063
  * @memberof OrdersApi
7998
9064
  */
7999
9065
  getOrder(requestParameters: OrdersApiGetOrderRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<Order, any>>;
9066
+ /**
9067
+ * Get an order (V3)
9068
+ * @summary Get an order (V3)
9069
+ * @param {OrdersApiGetOrderV3Request} requestParameters Request parameters.
9070
+ * @param {*} [options] Override http request option.
9071
+ * @throws {RequiredError}
9072
+ * @memberof OrdersApi
9073
+ */
9074
+ getOrderV3(requestParameters: OrdersApiGetOrderV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<OrderV3, any>>;
8000
9075
  /**
8001
9076
  * Get a signable cancel order message
8002
9077
  * @summary Get a signable cancel order message
@@ -8006,6 +9081,15 @@ declare class OrdersApi extends BaseAPI {
8006
9081
  * @memberof OrdersApi
8007
9082
  */
8008
9083
  getSignableCancelOrder(requestParameters: OrdersApiGetSignableCancelOrderRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<GetSignableCancelOrderResponse, any>>;
9084
+ /**
9085
+ * Get a signable cancel order message (V3)
9086
+ * @summary Get a signable cancel order message (V3)
9087
+ * @param {OrdersApiGetSignableCancelOrderV3Request} requestParameters Request parameters.
9088
+ * @param {*} [options] Override http request option.
9089
+ * @throws {RequiredError}
9090
+ * @memberof OrdersApi
9091
+ */
9092
+ getSignableCancelOrderV3(requestParameters: OrdersApiGetSignableCancelOrderV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<GetSignableCancelOrderResponse, any>>;
8009
9093
  /**
8010
9094
  * Get a signable order request (V3)
8011
9095
  * @summary Get a signable order request (V3)
@@ -8024,6 +9108,15 @@ declare class OrdersApi extends BaseAPI {
8024
9108
  * @memberof OrdersApi
8025
9109
  */
8026
9110
  listOrders(requestParameters?: OrdersApiListOrdersRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<ListOrdersResponse, any>>;
9111
+ /**
9112
+ * Get a list of orders (V3)
9113
+ * @summary Get a list of orders (V3)
9114
+ * @param {OrdersApiListOrdersV3Request} requestParameters Request parameters.
9115
+ * @param {*} [options] Override http request option.
9116
+ * @throws {RequiredError}
9117
+ * @memberof OrdersApi
9118
+ */
9119
+ listOrdersV3(requestParameters?: OrdersApiListOrdersV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<ListOrdersResponseV3, any>>;
8027
9120
  }
8028
9121
  /**
8029
9122
  * Request parameters for createProject operation in ProjectsApi.
@@ -8233,36 +9326,67 @@ declare class TokensApi extends BaseAPI {
8233
9326
  * @throws {RequiredError}
8234
9327
  * @memberof TokensApi
8235
9328
  */
8236
- listTokens(requestParameters?: TokensApiListTokensRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<ListTokensResponse, any>>;
9329
+ listTokens(requestParameters?: TokensApiListTokensRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<ListTokensResponse, any>>;
9330
+ }
9331
+ /**
9332
+ * Request parameters for createTrade operation in TradesApi.
9333
+ * @export
9334
+ * @interface TradesApiCreateTradeRequest
9335
+ */
9336
+ interface TradesApiCreateTradeRequest {
9337
+ /**
9338
+ * create a trade
9339
+ * @type {CreateTradeRequestV1}
9340
+ * @memberof TradesApiCreateTrade
9341
+ */
9342
+ readonly createTradeRequest: CreateTradeRequestV1;
9343
+ /**
9344
+ * eth address
9345
+ * @type {string}
9346
+ * @memberof TradesApiCreateTrade
9347
+ */
9348
+ readonly xImxEthAddress?: string;
9349
+ /**
9350
+ * eth signature
9351
+ * @type {string}
9352
+ * @memberof TradesApiCreateTrade
9353
+ */
9354
+ readonly xImxEthSignature?: string;
9355
+ /**
9356
+ * Authorization header
9357
+ * @type {string}
9358
+ * @memberof TradesApiCreateTrade
9359
+ */
9360
+ readonly authorization?: string;
8237
9361
  }
8238
9362
  /**
8239
- * Request parameters for createTrade operation in TradesApi.
9363
+ * Request parameters for createTradeV3 operation in TradesApi.
8240
9364
  * @export
8241
- * @interface TradesApiCreateTradeRequest
9365
+ * @interface TradesApiCreateTradeV3Request
8242
9366
  */
8243
- interface TradesApiCreateTradeRequest {
9367
+ interface TradesApiCreateTradeV3Request {
8244
9368
  /**
8245
9369
  * create a trade
8246
- * @type {CreateTradeRequestV1}
8247
- * @memberof TradesApiCreateTrade
9370
+ * @type {TradesCreateTradeRequest}
9371
+ * @memberof TradesApiCreateTradeV3
8248
9372
  */
8249
- readonly createTradeRequest: CreateTradeRequestV1;
9373
+ readonly createTradeRequest: TradesCreateTradeRequest;
8250
9374
  /**
8251
9375
  * eth address
8252
9376
  * @type {string}
8253
- * @memberof TradesApiCreateTrade
9377
+ * @memberof TradesApiCreateTradeV3
8254
9378
  */
8255
9379
  readonly xImxEthAddress?: string;
8256
9380
  /**
8257
9381
  * eth signature
8258
9382
  * @type {string}
8259
- * @memberof TradesApiCreateTrade
9383
+ * @memberof TradesApiCreateTradeV3
8260
9384
  */
8261
9385
  readonly xImxEthSignature?: string;
8262
9386
  /**
8263
9387
  * Authorization header
8264
9388
  * @type {string}
8265
- * @memberof TradesApiCreateTrade
9389
+ * @memberof TradesApiCreateTradeV3
8266
9390
  */
8267
9391
  readonly authorization?: string;
8268
9392
  }
@@ -8342,10 +9466,10 @@ interface TradesApiListTradesRequest {
8342
9466
  readonly cursor?: string;
8343
9467
  /**
8344
9468
  * Property to sort by
8345
- * @type {string}
9469
+ * @type {'created_at' | 'updated_at' | 'transaction_id' | 'party_a_sold_quantity' | 'party_b_sold_quantity'}
8346
9470
  * @memberof TradesApiListTrades
8347
9471
  */
8348
- readonly orderBy?: string;
9472
+ readonly orderBy?: 'created_at' | 'updated_at' | 'transaction_id' | 'party_a_sold_quantity' | 'party_b_sold_quantity';
8349
9473
  /**
8350
9474
  * Direction to sort (asc/desc)
8351
9475
  * @type {string}
@@ -8365,6 +9489,79 @@ interface TradesApiListTradesRequest {
8365
9489
  */
8366
9490
  readonly maxTimestamp?: string;
8367
9491
  }
9492
+ /**
9493
+ * Request parameters for listTradesV3 operation in TradesApi.
9494
+ * @export
9495
+ * @interface TradesApiListTradesV3Request
9496
+ */
9497
+ interface TradesApiListTradesV3Request {
9498
+ /**
9499
+ * Party A\&#39;s (buy order) token type of currency used to buy
9500
+ * @type {string}
9501
+ * @memberof TradesApiListTradesV3
9502
+ */
9503
+ readonly partyATokenType?: string;
9504
+ /**
9505
+ * Party A\&#39;s (buy order) token address of currency used to buy
9506
+ * @type {string}
9507
+ * @memberof TradesApiListTradesV3
9508
+ */
9509
+ readonly partyATokenAddress?: string;
9510
+ /**
9511
+ * Party B\&#39;s (sell order) token type of NFT sold - always ERC721
9512
+ * @type {string}
9513
+ * @memberof TradesApiListTradesV3
9514
+ */
9515
+ readonly partyBTokenType?: string;
9516
+ /**
9517
+ * Party B\&#39;s (sell order) collection address of NFT sold
9518
+ * @type {string}
9519
+ * @memberof TradesApiListTradesV3
9520
+ */
9521
+ readonly partyBTokenAddress?: string;
9522
+ /**
9523
+ * Party B\&#39;s (sell order) token id of NFT sold
9524
+ * @type {string}
9525
+ * @memberof TradesApiListTradesV3
9526
+ */
9527
+ readonly partyBTokenId?: string;
9528
+ /**
9529
+ * Page size of the result
9530
+ * @type {number}
9531
+ * @memberof TradesApiListTradesV3
9532
+ */
9533
+ readonly pageSize?: number;
9534
+ /**
9535
+ * Cursor
9536
+ * @type {string}
9537
+ * @memberof TradesApiListTradesV3
9538
+ */
9539
+ readonly cursor?: string;
9540
+ /**
9541
+ * Property to sort by
9542
+ * @type {'created_at' | 'updated_at' | 'transaction_id' | 'party_a_sold_quantity' | 'party_b_sold_quantity' | 'timestamp' | 'updated_timestamp'}
9543
+ * @memberof TradesApiListTradesV3
9544
+ */
9545
+ readonly orderBy?: 'created_at' | 'updated_at' | 'transaction_id' | 'party_a_sold_quantity' | 'party_b_sold_quantity' | 'timestamp' | 'updated_timestamp';
9546
+ /**
9547
+ * Direction to sort (asc/desc)
9548
+ * @type {string}
9549
+ * @memberof TradesApiListTradesV3
9550
+ */
9551
+ readonly direction?: string;
9552
+ /**
9553
+ * Minimum timestamp for this trade, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
9554
+ * @type {string}
9555
+ * @memberof TradesApiListTradesV3
9556
+ */
9557
+ readonly minTimestamp?: string;
9558
+ /**
9559
+ * Maximum timestamp for this trade, in ISO 8601 UTC format. Example: \&#39;2022-05-27T00:10:22Z\&#39;
9560
+ * @type {string}
9561
+ * @memberof TradesApiListTradesV3
9562
+ */
9563
+ readonly maxTimestamp?: string;
9564
+ }
8368
9565
  /**
8369
9566
  * TradesApi - object-oriented interface
8370
9567
  * @export
@@ -8373,7 +9570,7 @@ interface TradesApiListTradesRequest {
8373
9570
  */
8374
9571
  declare class TradesApi extends BaseAPI {
8375
9572
  /**
8376
- * Create a Trade
9573
+ * Create a trade. Use https://docs.x.immutable.com/reference#/operations/getSignableTrade to get request body params.
8377
9574
  * @summary Create a Trade between two parties
8378
9575
  * @param {TradesApiCreateTradeRequest} requestParameters Request parameters.
8379
9576
  * @param {*} [options] Override http request option.
@@ -8381,6 +9578,15 @@ declare class TradesApi extends BaseAPI {
8381
9578
  * @memberof TradesApi
8382
9579
  */
8383
9580
  createTrade(requestParameters: TradesApiCreateTradeRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<CreateTradeResponse, any>>;
9581
+ /**
9582
+ * Create a Trade. Currently only buy order is supported.
9583
+ * @summary Create a Trade (V3)
9584
+ * @param {TradesApiCreateTradeV3Request} requestParameters Request parameters.
9585
+ * @param {*} [options] Override http request option.
9586
+ * @throws {RequiredError}
9587
+ * @memberof TradesApi
9588
+ */
9589
+ createTradeV3(requestParameters: TradesApiCreateTradeV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<CreateTradeResponse, any>>;
8384
9590
  /**
8385
9591
  * Get a signable trade V3 message
8386
9592
  * @summary Get a signable trade V3 message
@@ -8408,6 +9614,15 @@ declare class TradesApi extends BaseAPI {
8408
9614
  * @memberof TradesApi
8409
9615
  */
8410
9616
  listTrades(requestParameters?: TradesApiListTradesRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<ListTradesResponse, any>>;
9617
+ /**
9618
+ * Get a list of trades (V3)
9619
+ * @summary Get a list of trades (V3)
9620
+ * @param {TradesApiListTradesV3Request} requestParameters Request parameters.
9621
+ * @param {*} [options] Override http request option.
9622
+ * @throws {RequiredError}
9623
+ * @memberof TradesApi
9624
+ */
9625
+ listTradesV3(requestParameters?: TradesApiListTradesV3Request, options?: AxiosRequestConfig): Promise<AxiosResponse<ListTradesResponse, any>>;
8411
9626
  }
8412
9627
  /**
8413
9628
  * Request parameters for createTransfer operation in TransfersApi.
@@ -8627,7 +9842,7 @@ interface TransfersApiListTransfersRequest {
8627
9842
  */
8628
9843
  declare class TransfersApi extends BaseAPI {
8629
9844
  /**
8630
- * Create a new transfer request
9845
+ * Create a new transfer request.
8631
9846
  * @summary Creates a transfer of multiple tokens between two parties
8632
9847
  * @param {TransfersApiCreateTransferRequest} requestParameters Request parameters.
8633
9848
  * @param {*} [options] Override http request option.
@@ -8636,7 +9851,7 @@ declare class TransfersApi extends BaseAPI {
8636
9851
  */
8637
9852
  createTransfer(requestParameters: TransfersApiCreateTransferRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<CreateTransferResponse, any>>;
8638
9853
  /**
8639
- * Create a new transfer request
9854
+ * Create a new transfer request.
8640
9855
  * @summary Creates a transfer of tokens between two parties
8641
9856
  * @param {TransfersApiCreateTransferV1Request} requestParameters Request parameters.
8642
9857
  * @param {*} [options] Override http request option.
@@ -8979,7 +10194,7 @@ interface WithdrawalsApiListWithdrawalsRequest {
8979
10194
  */
8980
10195
  declare class WithdrawalsApi extends BaseAPI {
8981
10196
  /**
8982
- * Creates a withdrawal
10197
+ * Creates a withdrawal.
8983
10198
  * @summary Creates a withdrawal of a token
8984
10199
  * @param {WithdrawalsApiCreateWithdrawalRequest} requestParameters Request parameters.
8985
10200
  * @param {*} [options] Override http request option.
@@ -9013,127 +10228,476 @@ declare class WithdrawalsApi extends BaseAPI {
9013
10228
  * @throws {RequiredError}
9014
10229
  * @memberof WithdrawalsApi
9015
10230
  */
9016
- listWithdrawals(requestParameters?: WithdrawalsApiListWithdrawalsRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<ListWithdrawalsResponse, any>>;
9017
- }
9018
-
9019
- /**
9020
- * Parameter required to create an Order
9021
- */
9022
- interface UnsignedOrderRequest {
10231
+ listWithdrawals(requestParameters?: WithdrawalsApiListWithdrawalsRequest, options?: AxiosRequestConfig): Promise<AxiosResponse<ListWithdrawalsResponse, any>>;
10232
+ }
10233
+
10234
+ /**
10235
+ * Parameter required to create an Order
10236
+ */
10237
+ interface UnsignedOrderRequest {
10238
+ /**
10239
+ * The amount of tokens that will be bought for this order
10240
+ */
10241
+ buy: TokenAmount;
10242
+ /**
10243
+ * The amount of tokens that will be sold for this order
10244
+ */
10245
+ sell: TokenAmount;
10246
+ /**
10247
+ * ExpirationTimestamp in Unix time. Note: will be rounded down to the nearest hour
10248
+ */
10249
+ expiration_timestamp?: number;
10250
+ /**
10251
+ * Inclusion of either maker or taker fees
10252
+ */
10253
+ fees?: Array<FeeEntry>;
10254
+ }
10255
+ /**
10256
+ * Parameter required to create a Transfer
10257
+ */
10258
+ declare type UnsignedTransferRequest = TokenAmount & {
10259
+ /**
10260
+ * Ethereum address of the receiving user
10261
+ */
10262
+ receiver: string;
10263
+ };
10264
+ /**
10265
+ * Parameter required to Mint tokens
10266
+ */
10267
+ declare type UnsignedMintRequest = Omit<MintRequest, 'auth_signature'>;
10268
+ /**
10269
+ * Parameter required to create a Transfer
10270
+ */
10271
+ declare type UnsignedExchangeTransferRequest = ExchangeTokenAmount & {
10272
+ /**
10273
+ * Ethereum address of the receiving user
10274
+ */
10275
+ receiver: string;
10276
+ /**
10277
+ * Exchange transaction ID
10278
+ */
10279
+ transactionID: string;
10280
+ };
10281
+
10282
+ /**
10283
+ * Parameter required to create a batchNftTransfer
10284
+ */
10285
+ interface NftTransferDetails {
10286
+ /**
10287
+ * Ethereum address of the receiving user
10288
+ */
10289
+ receiver: string;
10290
+ /**
10291
+ * The token ID
10292
+ */
10293
+ tokenId: string;
10294
+ /**
10295
+ * The token contract address
10296
+ */
10297
+ tokenAddress: string;
10298
+ }
10299
+
10300
+ /**
10301
+ * Creates a new Stark Signer
10302
+ * @params starkPrivateKey - the private key as a hex string
10303
+ * @returns a StarkSigner
10304
+ */
10305
+ declare function createStarkSigner(starkPrivateKey: string): StarkSigner;
10306
+
10307
+ /**
10308
+ * The configuration for the Ethereum network
10309
+ */
10310
+ interface EthConfiguration {
10311
+ coreContractAddress: string;
10312
+ registrationContractAddress: string;
10313
+ chainID: number;
10314
+ }
10315
+ /**
10316
+ * The configuration for the ImmutableX client
10317
+ */
10318
+ interface ImmutableXConfiguration {
10319
+ /**
10320
+ * The configuration for the API client
10321
+ */
10322
+ apiConfiguration: Configuration;
10323
+ /**
10324
+ * The configuration for the Ethereum network
10325
+ */
10326
+ ethConfiguration: EthConfiguration;
10327
+ }
10328
+
10329
+ interface ImxOverrides {
10330
+ immutableXConfig: ImmutableXConfiguration;
10331
+ }
10332
+ interface ImxModuleConfiguration extends ModuleConfiguration<ImxOverrides> {
10333
+ }
10334
+
10335
+ declare class ImmutableXClient {
10336
+ private immutableX;
10337
+ depositsApi: DepositsApi;
10338
+ mintsApi: MintsApi;
10339
+ ordersApi: OrdersApi;
10340
+ tokensApi: TokensApi;
10341
+ tradesApi: TradesApi;
10342
+ transfersApi: TransfersApi;
10343
+ exchangeApi: ExchangesApi;
10344
+ nftCheckoutPrimaryApi: NftCheckoutPrimaryApi;
10345
+ usersApi: UsersApi;
10346
+ withdrawalsApi: WithdrawalsApi;
10347
+ balanceApi: BalancesApi;
10348
+ assetApi: AssetsApi;
10349
+ collectionApi: CollectionsApi;
10350
+ metadataApi: MetadataApi;
10351
+ metadataRefreshesApi: MetadataRefreshesApi;
10352
+ projectsApi: ProjectsApi;
10353
+ constructor(config: ImxModuleConfiguration);
10354
+ /**
10355
+ * Get details of a Deposit with the given ID
10356
+ * @param request - the request object containing the parameters to be provided in the API request
10357
+ * @returns a promise that resolves with the requested Deposit
10358
+ * @throws {@link index.IMXError}
10359
+ */
10360
+ getDeposit(request: DepositsApiGetDepositRequest): Promise<Deposit>;
10361
+ /**
10362
+ * Get a list of Deposits
10363
+ * @param request - optional request object containing the parameters to be provided in the API request
10364
+ * @returns a promise that resolves with the requested list of Deposits
10365
+ * @throws {@link index.IMXError}
10366
+ */
10367
+ listDeposits(request?: DepositsApiListDepositsRequest): Promise<ListDepositsResponse>;
10368
+ /**
10369
+ * Get Stark keys for a registered User
10370
+ * @param ethAddress - the eth address of the User
10371
+ * @returns a promise that resolves with the requested User
10372
+ * @throws {@link index.IMXError}
10373
+ */
10374
+ getUser(ethAddress: string): Promise<GetUsersApiResponse>;
10375
+ /**
10376
+ * Get details of an Asset
10377
+ * @param request - the request object containing the parameters to be provided in the API request
10378
+ * @returns a promise that resolves with the requested Asset
10379
+ * @throws {@link index.IMXError}
10380
+ */
10381
+ getAsset(request: AssetsApiGetAssetRequest): Promise<Asset>;
10382
+ /**
10383
+ * Get a list of Assets
10384
+ * @param request - optional request object containing the parameters to be provided in the API request
10385
+ * @returns a promise that resolves with the requested list of Assets
10386
+ * @throws {@link index.IMXError}
10387
+ */
10388
+ listAssets(request?: AssetsApiListAssetsRequest): Promise<ListAssetsResponse>;
10389
+ /**
10390
+ * Create a Collection
10391
+ * @param ethSigner - the L1 signer
10392
+ * @param request - the request object to be provided in the API request
10393
+ * @returns a promise that resolves with the created Collection
10394
+ * @throws {@link index.IMXError}
10395
+ */
10396
+ createCollection(ethSigner: Signer, request: CreateCollectionRequest): Promise<Collection>;
10397
+ /**
10398
+ * Get details of a Collection at the given address
10399
+ * @param request - the request object containing the parameters to be provided in the API request
10400
+ * @returns a promise that resolves with the requested Collection
10401
+ * @throws {@link index.IMXError}
10402
+ */
10403
+ getCollection(request: CollectionsApiGetCollectionRequest): Promise<Collection>;
10404
+ /**
10405
+ * Get a list of Collection filters
10406
+ * @param request - the request object containing the parameters to be provided in the API request
10407
+ * @returns a promise that resolves with the requested list of Collection Filters
10408
+ * @throws {@link index.IMXError}
10409
+ */
10410
+ listCollectionFilters(request: CollectionsApiListCollectionFiltersRequest): Promise<CollectionFilter>;
10411
+ /**
10412
+ * Get a list of Collections
10413
+ * @param request - optional request object containing the parameters to be provided in the API request
10414
+ * @returns a promise that resolves with the requested list of Collections
10415
+ * @throws {@link index.IMXError}
10416
+ */
10417
+ listCollections(request?: CollectionsApiListCollectionsRequest): Promise<ListCollectionsResponse>;
10418
+ /**
10419
+ * Update a Collection
10420
+ * @param ethSigner - the L1 signer
10421
+ * @param collectionAddress - the Collection contract address
10422
+ * @param request - the request object containing the parameters to be provided in the API request
10423
+ * @returns a promise that resolves with the updated Collection
10424
+ * @throws {@link index.IMXError}
10425
+ */
10426
+ updateCollection(ethSigner: Signer, collectionAddress: string, request: UpdateCollectionRequest): Promise<Collection>;
10427
+ /**
10428
+ * Add metadata schema to Collection
10429
+ * @param ethSigner - the L1 signer
10430
+ * @param collectionAddress - the Collection contract address
10431
+ * @param request - the request object containing the parameters to be provided in the API request
10432
+ * @returns a promise that resolves with the SuccessResponse if successful
10433
+ * @throws {@link index.IMXError}
10434
+ */
10435
+ addMetadataSchemaToCollection(ethSigner: Signer, collectionAddress: string, request: AddMetadataSchemaToCollectionRequest): Promise<SuccessResponse>;
10436
+ /**
10437
+ * Get Metadata schema
10438
+ * @param request - the request object containing the parameters to be provided in the API request
10439
+ * @returns a promise that resolves with the requested Metadata schema
10440
+ * @throws {@link index.IMXError}
10441
+ */
10442
+ getMetadataSchema(request: MetadataApiGetMetadataSchemaRequest): Promise<MetadataSchemaProperty[]>;
10443
+ /**
10444
+ * Update metadata schema by name
10445
+ * @param ethSigner - the L1 signer
10446
+ * @param collectionAddress - the Collection contract address
10447
+ * @param name - the Metadata schema name
10448
+ * @param request - the request object containing the parameters to be provided in the API request
10449
+ * @returns a promise that resolves with the SuccessResponse if successful
10450
+ * @throws {@link index.IMXError}
10451
+ */
10452
+ updateMetadataSchemaByName(ethSigner: Signer, collectionAddress: string, name: string, request: MetadataSchemaRequest): Promise<SuccessResponse>;
10453
+ /**
10454
+ * Get a list of metadata refreshes
10455
+ * @param ethSigner - the L1 signer
10456
+ * @param collectionAddress - the Collection contract address
10457
+ * @param pageSize - the page size of the result
10458
+ * @param cursor - the cursor
10459
+ * @returns a promise that resolves with the requested metadata refreshes
10460
+ * @throws {@link index.IMXError}
10461
+ */
10462
+ listMetadataRefreshes(ethSigner: Signer, collectionAddress?: string, pageSize?: number, cursor?: string): Promise<GetMetadataRefreshes>;
10463
+ /**
10464
+ * Get a list of metadata refresh errors
10465
+ * @param ethSigner - the L1 signer
10466
+ * @param refreshId - the metadata refresh ID
10467
+ * @param pageSize - the page size of the result
10468
+ * @param cursor - the cursor
10469
+ * @returns a promise that resolves with the requested metadata refresh errors
10470
+ * @throws {@link index.IMXError}
10471
+ */
10472
+ getMetadataRefreshErrors(ethSigner: Signer, refreshId: string, pageSize?: number, cursor?: string): Promise<GetMetadataRefreshErrorsResponse>;
10473
+ /**
10474
+ * Get a list of metadata refresh results
10475
+ * @param ethSigner - the L1 signer
10476
+ * @param refreshId - the metadata refresh ID
10477
+ * @returns a promise that resolves with the requested metadata refresh results
10478
+ * @throws {@link index.IMXError}
10479
+ */
10480
+ getMetadataRefreshResults(ethSigner: Signer, refreshId: string): Promise<GetMetadataRefreshResponse>;
10481
+ /**
10482
+ * Request a metadata refresh
10483
+ * @param ethSigner - the L1 signer
10484
+ * @param request the request object containing the parameters to be provided in the API request
10485
+ * @returns a promise that resolves with the requested metadata refresh
10486
+ * @throws {@link index.IMXError}
10487
+ */
10488
+ createMetadataRefresh(ethSigner: Signer, request: CreateMetadataRefreshRequest): Promise<CreateMetadataRefreshResponse>;
10489
+ /**
10490
+ * Create a Project
10491
+ * @param ethSigner - the L1 signer
10492
+ * @param request - the request object containing the parameters to be provided in the API request
10493
+ * @returns a promise that resolves with the created Project
10494
+ * @throws {@link index.IMXError}
10495
+ */
10496
+ createProject(ethSigner: Signer, request: CreateProjectRequest): Promise<CreateProjectResponse>;
10497
+ /**
10498
+ * Get a Project
10499
+ * @param ethSigner - the L1 signer
10500
+ * @param id - the Project ID
10501
+ * @returns a promise that resolves with the requested Project
10502
+ * @throws {@link index.IMXError}
10503
+ */
10504
+ getProject(ethSigner: Signer, id: string): Promise<Project>;
10505
+ /**
10506
+ * Get Projects owned by the given User
10507
+ * @param ethSigner - the L1 signer
10508
+ * @param pageSize - the page size of the result
10509
+ * @param cursor - the cursor
10510
+ * @param orderBy - the property to sort by
10511
+ * @param direction - direction to sort (asc/desc)
10512
+ * @returns a promise that resolves with the requested Projects
10513
+ * @throws {@link index.IMXError}
10514
+ */
10515
+ getProjects(ethSigner: Signer, pageSize?: number, cursor?: string, orderBy?: string, direction?: string): Promise<GetProjectsResponse>;
10516
+ /**
10517
+ * Get the token Balances of the User
10518
+ * @param request - the request object containing the parameters to be provided in the API request
10519
+ * @returns a promise that resolves with the requested Balance
10520
+ * @throws {@link index.IMXError}
10521
+ */
10522
+ getBalance(request: BalancesApiGetBalanceRequest): Promise<Balance>;
10523
+ /**
10524
+ * Get a list of Balances for given User
10525
+ * @param request the request object containing the parameters to be provided in the API request
10526
+ * @returns a promise that resolves with the requested list of Balances
10527
+ * @throws {@link index.IMXError}
10528
+ */
10529
+ listBalances(request: BalancesApiListBalancesRequest): Promise<ListBalancesResponse>;
10530
+ /**
10531
+ * Get details of a Mint with the given ID
10532
+ * @param request the request object containing the parameters to be provided in the API request
10533
+ * @returns a promise that resolves with the requested Mint
10534
+ * @throws {@link index.IMXError}
10535
+ */
10536
+ getMint(request: MintsApiGetMintRequest): Promise<Mint[]>;
10537
+ /**
10538
+ * Get a list of Mints
10539
+ * @param request optional request object containing the parameters to be provided in the API request
10540
+ * @returns a promise that resolves with the requested list of Mints
10541
+ * @throws {@link index.IMXError}
10542
+ */
10543
+ listMints(request?: MintsApiListMintsRequest): Promise<ListMintsResponse>;
10544
+ /**
10545
+ * Mint tokens in a batch with fees
10546
+ * @param ethSigner - the L1 signer
10547
+ * @param request - the request object to be provided in the API request
10548
+ * @returns a promise that resolves with the minted tokens
10549
+ * @throws {@link index.IMXError}
10550
+ */
10551
+ mint(ethSigner: Signer, request: UnsignedMintRequest): Promise<MintTokensResponse>;
10552
+ /**
10553
+ * Get a list of Withdrawals
10554
+ * @param request - optional request object containing the parameters to be provided in the API request
10555
+ * @returns a promise that resolves with the requested list of Withdrawals
10556
+ * @throws {@link index.IMXError}
10557
+ */
10558
+ listWithdrawals(request?: WithdrawalsApiListWithdrawalsRequest): Promise<ListWithdrawalsResponse>;
10559
+ /**
10560
+ * Get details of Withdrawal with the given ID
10561
+ * @param request - the request object containing the parameters to be provided in the API request
10562
+ * @returns a promise that resolves with the requested Withdrawal
10563
+ * @throws {@link index.IMXError}
10564
+ */
10565
+ getWithdrawal(request: WithdrawalsApiGetWithdrawalRequest): Promise<Withdrawal>;
10566
+ /**
10567
+ * Get details of an Order with the given ID
10568
+ * @param request - the request object containing the parameters to be provided in the API request
10569
+ * @returns a promise that resolves with the requested Order
10570
+ * @throws {@link index.IMXError}
10571
+ */
10572
+ getOrder(request: OrdersApiGetOrderRequest): Promise<Order>;
10573
+ /**
10574
+ * Get a list of Orders
10575
+ * @param request - optional request object containing the parameters to be provided in the API request
10576
+ * @returns a promise that resolves with the requested list of Orders
10577
+ * @throws {@link index.IMXError}
10578
+ */
10579
+ listOrders(request?: OrdersApiListOrdersRequest): Promise<ListOrdersResponse>;
9023
10580
  /**
9024
- * The amount of tokens that will be bought for this order
10581
+ * Get details of a Trade with the given ID
10582
+ * @param request - the request object containing the parameters to be provided in the API request
10583
+ * @returns a promise that resolves with the requested Trade
10584
+ * @throws {@link index.IMXError}
9025
10585
  */
9026
- buy: TokenAmount;
10586
+ getTrade(request: TradesApiGetTradeRequest): Promise<Trade>;
9027
10587
  /**
9028
- * The amount of tokens that will be sold for this order
10588
+ * Get a list of Trades
10589
+ * @param request - optional request object containing the parameters to be provided in the API request
10590
+ * @returns a promise that resolves with the requested list of Trades
10591
+ * @throws {@link index.IMXError}
9029
10592
  */
9030
- sell: TokenAmount;
10593
+ listTrades(request?: TradesApiListTradesRequest): Promise<ListTradesResponse>;
9031
10594
  /**
9032
- * ExpirationTimestamp in Unix time. Note: will be rounded down to the nearest hour
10595
+ * Get details of a Token
10596
+ * @param request - the request object containing the parameters to be provided in the API request
10597
+ * @returns a promise that resolves with the requested Token
10598
+ * @throws {@link index.IMXError}
9033
10599
  */
9034
- expiration_timestamp?: number;
10600
+ getToken(request: TokensApiGetTokenRequest): Promise<TokenDetails>;
9035
10601
  /**
9036
- * Inclusion of either maker or taker fees
10602
+ * Get a list of Tokens
10603
+ * @param request - optional request object containing the parameters to be provided in the API request
10604
+ * @returns a promise that resolves with the requested list of Tokens
10605
+ * @throws {@link index.IMXError}
9037
10606
  */
9038
- fees?: Array<FeeEntry>;
9039
- }
9040
- /**
9041
- * Parameter required to create a Transfer
9042
- */
9043
- declare type UnsignedTransferRequest = TokenAmount & {
10607
+ listTokens(request?: TokensApiListTokensRequest): Promise<ListTokensResponse>;
9044
10608
  /**
9045
- * Ethereum address of the receiving user
10609
+ * Get details of a Transfer with the given ID
10610
+ * @param request - the request object containing the parameters to be provided in the API request
10611
+ * @returns a promise that resolves with the requested Transfer
10612
+ * @throws {@link index.IMXError}
9046
10613
  */
9047
- receiver: string;
9048
- };
9049
- /**
9050
- * Parameter required to create a Transfer
9051
- */
9052
- declare type UnsignedExchangeTransferRequest = ExchangeTokenAmount & {
10614
+ getTransfer(request: TransfersApiGetTransferRequest): Promise<Transfer>;
9053
10615
  /**
9054
- * Ethereum address of the receiving user
10616
+ * Get a list of Transfers
10617
+ * @param request - optional request object containing the parameters to be provided in the API request
10618
+ * @returns a promise that resolves with the requested list of Transfers
10619
+ * @throws {@link index.IMXError}
9055
10620
  */
9056
- receiver: string;
10621
+ listTransfers(request?: TransfersApiListTransfersRequest): Promise<ListTransfersResponse>;
9057
10622
  /**
9058
- * Exchange transaction ID
10623
+ * Create a new Exchange transaction
10624
+ * @param request - the request object to be provided in the API request
10625
+ * @returns a promise that resolves with the created Exchange Transaction
10626
+ * @throws {@link index.IMXError}
9059
10627
  */
9060
- transactionID: string;
9061
- };
9062
-
9063
- /**
9064
- * Parameter required to create a batchNftTransfer
9065
- */
9066
- interface NftTransferDetails {
10628
+ createExchange(request: ExchangesApiCreateExchangeRequest): Promise<ExchangeCreateExchangeAndURLResponse>;
9067
10629
  /**
9068
- * Ethereum address of the receiving user
10630
+ * Get an Exchange transaction
10631
+ * @param request - the request object to be provided in the API request
10632
+ * @returns a promise that resolves with the Exchange Transaction
10633
+ * @throws {@link index.IMXError}
9069
10634
  */
9070
- receiver: string;
10635
+ getExchange(request: ExchangesApiGetExchangeRequest): Promise<Exchange>;
9071
10636
  /**
9072
- * The token ID
10637
+ * Get Exchange transactions
10638
+ * @param request - the request object to be provided in the API request
10639
+ * @returns a promise that resolves with Exchange Transactions
10640
+ * @throws {@link index.IMXError}
9073
10641
  */
9074
- tokenId: string;
10642
+ getExchanges(request: ExchangesApiGetExchangesRequest): Promise<GetTransactionsResponse>;
9075
10643
  /**
9076
- * The token contract address
10644
+ * Create a new Transfer request
10645
+ * @param walletConnection - the pair of Eth/Stark signers
10646
+ * @param request - the request object to be provided in the API request
10647
+ * @returns a promise that resolves with the created Exchange Transfer
10648
+ * @throws {@link index.IMXError}
9077
10649
  */
9078
- tokenAddress: string;
9079
- }
9080
-
9081
- /**
9082
- * The configuration for the Ethereum network
9083
- */
9084
- interface EthConfiguration {
9085
- coreContractAddress: string;
9086
- registrationContractAddress: string;
9087
- chainID: number;
9088
- }
9089
- /**
9090
- * The configuration for the ImmutableX client
9091
- */
9092
- interface ImmutableXConfiguration {
10650
+ exchangeTransfer(walletConnection: WalletConnection, request: UnsignedExchangeTransferRequest): Promise<CreateTransferResponseV1>;
9093
10651
  /**
9094
- * The configuration for the API client
10652
+ * Create a new nft primary transaction
10653
+ * @param request - the request object to be provided in the API request
10654
+ * @returns a promise that resolves with the created nft primary Transaction
10655
+ * @throws {@link index.IMXError}
9095
10656
  */
9096
- apiConfiguration: Configuration$1;
10657
+ createNftPrimary(request: NftCheckoutPrimaryApiCreateNftPrimaryRequest): Promise<NftprimarytransactionCreateResponse>;
9097
10658
  /**
9098
- * The configuration for the Ethereum network
10659
+ * Get nft primary supported currencies and their limits
10660
+ * @param request - the request object to be provided in the API request
10661
+ * @returns a promise that resolves with nft primary Currencies
10662
+ * @throws {@link index.IMXError}
9099
10663
  */
9100
- ethConfiguration: EthConfiguration;
10664
+ getCurrenciesNFTCheckoutPrimary(request: NftCheckoutPrimaryApiGetCurrenciesNFTCheckoutPrimaryRequest): Promise<CurrencyWithLimits>;
10665
+ /**
10666
+ * Get nft primary transaction by transaction id
10667
+ * @param request - the request object to be provided in the API request
10668
+ * @returns a promise that resolves with nft primary transaction
10669
+ * @throws {@link index.IMXError}
10670
+ */
10671
+ getNftPrimaryTransaction(request: NftCheckoutPrimaryApiGetNftPrimaryTransactionRequest): Promise<NftprimarytransactionGetResponse>;
10672
+ /**
10673
+ * Get list of nft primary transactions
10674
+ * @param request - the request object to be provided in the API request
10675
+ * @returns a promise that resolves with nft primary transaction
10676
+ * @throws {@link index.IMXError}
10677
+ */
10678
+ getNftPrimaryTransactions(request: NftCheckoutPrimaryApiGetNftPrimaryTransactionsRequest): Promise<NftprimarytransactionListTransactionsResponse>;
9101
10679
  }
9102
10680
 
9103
- declare enum Environment {
9104
- DEVELOPMENT = "development",
9105
- SANDBOX = "sandbox",
9106
- PRODUCTION = "production"
10681
+ declare enum PassportErrorType {
10682
+ AUTHENTICATION_ERROR = "AUTHENTICATION_ERROR",
10683
+ INVALID_CONFIGURATION = "INVALID_CONFIGURATION",
10684
+ WALLET_CONNECTION_ERROR = "WALLET_CONNECTION_ERROR",
10685
+ NOT_LOGGED_IN_ERROR = "NOT_LOGGED_IN_ERROR",
10686
+ SILENT_LOGIN_ERROR = "SILENT_LOGIN_ERROR",
10687
+ REFRESH_TOKEN_ERROR = "REFRESH_TOKEN_ERROR",
10688
+ USER_REGISTRATION_ERROR = "USER_REGISTRATION_ERROR",
10689
+ LOGOUT_ERROR = "LOGOUT_ERROR",
10690
+ TRANSFER_ERROR = "TRANSFER_ERROR",
10691
+ CREATE_ORDER_ERROR = "CREATE_ORDER_ERROR",
10692
+ CANCEL_ORDER_ERROR = "CANCEL_ORDER_ERROR",
10693
+ EXCHANGE_TRANSFER_ERROR = "EXCHANGE_TRANSFER_ERROR",
10694
+ CREATE_TRADE_ERROR = "CREATE_TRADE_ERROR",
10695
+ OPERATION_NOT_SUPPORTED_ERROR = "OPERATION_NOT_SUPPORTED_ERROR"
9107
10696
  }
9108
- type StarkExConfig = ImmutableXConfiguration & {
9109
- env: Environment;
9110
- };
9111
- declare class Configuration {
9112
- private readonly starkExConfig;
9113
- constructor(config: StarkExConfig);
9114
- getStarkExConfig(): StarkExConfig;
10697
+ declare class PassportError extends Error {
10698
+ type: PassportErrorType;
10699
+ constructor(message: string, type: PassportErrorType);
9115
10700
  }
9116
- declare const PRODUCTION: StarkExConfig;
9117
- declare const SANDBOX: StarkExConfig;
9118
-
9119
- declare const StarkExAPIFactory: (config: Configuration) => {
9120
- depositsApi: DepositsApi;
9121
- mintsApi: MintsApi;
9122
- ordersApi: OrdersApi;
9123
- tokensApi: TokensApi;
9124
- tradesApi: TradesApi;
9125
- transfersApi: TransfersApi;
9126
- exchangeApi: ExchangesApi;
9127
- nftCheckoutPrimaryApi: NftCheckoutPrimaryApi;
9128
- usersApi: UsersApi;
9129
- withdrawalsApi: WithdrawalsApi;
9130
- balanceApi: BalancesApi;
9131
- assetApi: AssetsApi;
9132
- collectionApi: CollectionsApi;
9133
- metadataApi: MetadataApi;
9134
- metadataRefreshesApi: MetadataRefreshesApi;
9135
- projectsApi: ProjectsApi;
9136
- };
9137
10701
 
9138
10702
  interface IMXProvider {
9139
10703
  /**
@@ -9223,7 +10787,7 @@ interface IMXProvider {
9223
10787
  declare class GenericIMXProvider implements IMXProvider {
9224
10788
  private readonly config;
9225
10789
  private readonly signers;
9226
- constructor(config: Configuration, ethSigner: Signer, starkExSigner: StarkSigner);
10790
+ constructor(config: ProviderConfiguration$1, ethSigner: Signer, starkSigner: StarkSigner);
9227
10791
  getAddress(): Promise<string>;
9228
10792
  registerOffchain(): Promise<RegisterUserResponse>;
9229
10793
  batchNftTransfer(request: Array<NftTransferDetails>): Promise<CreateTransferResponse>;
@@ -9240,30 +10804,21 @@ declare class GenericIMXProvider implements IMXProvider {
9240
10804
 
9241
10805
  declare class MetaMaskIMXProvider extends GenericIMXProvider {
9242
10806
  private static imxSigner;
9243
- constructor(config: Configuration, ethSigner: Signer, starkExSigner: StarkSigner);
9244
- static connect(config: Configuration): Promise<MetaMaskIMXProvider>;
10807
+ constructor(config: ProviderConfiguration$1, ethSigner: Signer, starkSigner: StarkSigner);
10808
+ static connect(config: ProviderConfiguration$1): Promise<MetaMaskIMXProvider>;
9245
10809
  static disconnect(): Promise<void>;
9246
10810
  static signMessage(message: string): Promise<string>;
9247
10811
  }
9248
10812
 
9249
- declare enum PassportErrorType {
9250
- AUTHENTICATION_ERROR = "AUTHENTICATION_ERROR",
9251
- INVALID_CONFIGURATION = "INVALID_CONFIGURATION",
9252
- WALLET_CONNECTION_ERROR = "WALLET_CONNECTION_ERROR",
9253
- NOT_LOGGED_IN_ERROR = "NOT_LOGGED_IN_ERROR",
9254
- REFRESH_TOKEN_ERROR = "REFRESH_TOKEN_ERROR",
9255
- USER_REGISTRATION_ERROR = "USER_REGISTRATION_ERROR",
9256
- LOGOUT_ERROR = "LOGOUT_ERROR",
9257
- TRANSFER_ERROR = "TRANSFER_ERROR",
9258
- CREATE_ORDER_ERROR = "CREATE_ORDER_ERROR",
9259
- CANCEL_ORDER_ERROR = "CANCEL_ORDER_ERROR",
9260
- EXCHANGE_TRANSFER_ERROR = "EXCHANGE_TRANSFER_ERROR",
9261
- CREATE_TRADE_ERROR = "CREATE_TRADE_ERROR",
9262
- OPERATION_NOT_SUPPORTED_ERROR = "OPERATION_NOT_SUPPORTED_ERROR"
10813
+ interface ProviderOverrides {
10814
+ immutableXConfig: ImmutableXConfiguration;
9263
10815
  }
9264
- declare class PassportError extends Error {
9265
- type: PassportErrorType;
9266
- constructor(message: string, type: PassportErrorType);
10816
+ interface ProviderModuleConfiguration extends ModuleConfiguration<ProviderOverrides> {
10817
+ }
10818
+ declare class ProviderConfiguration {
10819
+ readonly immutableXConfig: ImmutableXConfiguration;
10820
+ readonly baseConfig: ImmutableConfiguration;
10821
+ constructor({ baseConfig, overrides }: ProviderModuleConfiguration);
9267
10822
  }
9268
10823
 
9269
10824
  type UserProfile = {
@@ -9275,14 +10830,6 @@ declare enum Networks {
9275
10830
  PRODUCTION = "mainnet",
9276
10831
  SANDBOX = "goerli"
9277
10832
  }
9278
- interface EnvironmentConfiguration {
9279
- network: Networks;
9280
- authenticationDomain: string;
9281
- magicPublishableApiKey: string;
9282
- magicProviderId: string;
9283
- baseIMXApiPath: string;
9284
- passportDomain: string;
9285
- }
9286
10833
  interface OidcConfiguration {
9287
10834
  clientId: string;
9288
10835
  logoutRedirectUri: string;
@@ -9290,26 +10837,53 @@ interface OidcConfiguration {
9290
10837
  scope?: string;
9291
10838
  audience?: string;
9292
10839
  }
10840
+ interface PassportOverrides {
10841
+ network: Networks;
10842
+ authenticationDomain: string;
10843
+ magicPublishableApiKey: string;
10844
+ magicProviderId: string;
10845
+ passportDomain: string;
10846
+ imxApiBasePath: string;
10847
+ }
10848
+ interface PassportModuleConfiguration extends ModuleConfiguration<PassportOverrides>, OidcConfiguration {
10849
+ }
9293
10850
 
9294
10851
  declare class Passport {
9295
10852
  private authManager;
9296
10853
  private magicAdapter;
9297
10854
  private readonly config;
9298
- constructor(environmentConfiguration: EnvironmentConfiguration, oidcConfiguration: OidcConfiguration);
10855
+ constructor(passportModuleConfiguration: PassportModuleConfiguration);
10856
+ private getImxProvider;
10857
+ connectImxSilent(): Promise<IMXProvider | null>;
9299
10858
  connectImx(): Promise<IMXProvider>;
9300
10859
  loginCallback(): Promise<void>;
9301
10860
  logout(): Promise<void>;
9302
- getUserInfo(): Promise<UserProfile>;
10861
+ getUserInfo(): Promise<UserProfile | undefined>;
9303
10862
  getIdToken(): Promise<string | undefined>;
9304
- getAccessToken(): Promise<string>;
10863
+ getAccessToken(): Promise<string | undefined>;
9305
10864
  private registerUser;
9306
10865
  }
9307
10866
 
9308
- declare const Config: {
9309
- PRODUCTION: EnvironmentConfiguration;
9310
- SANDBOX: EnvironmentConfiguration;
9311
- };
10867
+ declare class PassportConfiguration {
10868
+ readonly network: Networks;
10869
+ readonly authenticationDomain: string;
10870
+ readonly passportDomain: string;
10871
+ readonly magicPublishableApiKey: string;
10872
+ readonly magicProviderId: string;
10873
+ readonly imxApiBasePath: string;
10874
+ readonly oidcConfiguration: OidcConfiguration;
10875
+ readonly baseConfig: ImmutableConfiguration;
10876
+ constructor({ baseConfig, overrides, ...oidcConfiguration }: PassportModuleConfiguration);
10877
+ }
9312
10878
 
10879
+ /**
10880
+ * Interface representing token information.
10881
+ * @property {string} name - The token name.
10882
+ * @property {string} symbol - The token symbol.
10883
+ * @property {number} decimals - The token decimals.
10884
+ * @property {string} [address] - The token contract address.
10885
+ * @property {string} [icon] - The token icon URL/data:image.
10886
+ */
9313
10887
  interface TokenInfo {
9314
10888
  name: string;
9315
10889
  symbol: string;
@@ -9317,71 +10891,218 @@ interface TokenInfo {
9317
10891
  address?: string;
9318
10892
  icon?: string;
9319
10893
  }
10894
+ /**
10895
+ * Interface representing the parameters for {@link Checkout.getTokenAllowList}.
10896
+ * @property {TokenFilterTypes} type - The type of token to retrieve.
10897
+ * @property {ChainId} chainId - The ID of the blockchain network.
10898
+ * @property {TokenFilter[]} [exclude] - The tokens to exclude from the list.
10899
+ */
9320
10900
  interface GetTokenAllowListParams {
10901
+ type: TokenFilterTypes;
9321
10902
  chainId: ChainId;
10903
+ exclude?: TokenFilter[];
9322
10904
  }
10905
+ /**
10906
+ * Interface representing the result of {@link Checkout.getTokenAllowList}.
10907
+ * @property {TokenInfo[]} tokens - The list of tokens allowed for the specified params.
10908
+ */
9323
10909
  interface GetTokenAllowListResult {
9324
10910
  tokens: TokenInfo[];
9325
10911
  }
10912
+ /**
10913
+ * Enum representing the types of token filters available.
10914
+ */
10915
+ declare enum TokenFilterTypes {
10916
+ SWAP = "swap",
10917
+ BRIDGE = "bridge",
10918
+ ALL = "all"
10919
+ }
10920
+ /**
10921
+ * Interface representing a token filter that can be used to exclude certain tokens.
10922
+ * @property {string} address - The token contract address.
10923
+ */
10924
+ interface TokenFilter {
10925
+ address: string;
10926
+ }
10927
+ /**
10928
+ * Enum representing the supported chains with their corresponding IDs.
10929
+ */
9326
10930
  declare enum ChainId {
9327
10931
  ETHEREUM = 1,
9328
10932
  GOERLI = 5,
9329
10933
  POLYGON = 137
9330
10934
  }
10935
+ /**
10936
+ * Interface representing the information of a network.
10937
+ * @property {string} name - The name of the network.
10938
+ * @property {number} chainId - The ID of the network.
10939
+ * @property {TokenInfo} nativeCurrency - The info of the network's native currency.
10940
+ * @property {boolean} isSupported - Flag indicating if the network is supported by the application.
10941
+ */
9331
10942
  interface NetworkInfo {
9332
10943
  name: string;
9333
10944
  chainId: number;
9334
10945
  nativeCurrency: TokenInfo;
10946
+ isSupported: boolean;
9335
10947
  }
10948
+ /**
10949
+ * Interface representing the parameters for {@link Checkout.switchNetwork}.
10950
+ * @property {Web3Provider} provider - The provider to connect to the network.
10951
+ * @property {ChainId} chainId - The ID of the network to switch to.
10952
+ */
9336
10953
  interface SwitchNetworkParams {
9337
10954
  provider: Web3Provider;
9338
10955
  chainId: ChainId;
9339
10956
  }
10957
+ /**
10958
+ * Interface representing the result of {@link Checkout.switchNetwork}.
10959
+ * @property {NetworkInfo} network - The information of the network that was switched to.
10960
+ */
9340
10961
  interface SwitchNetworkResult {
9341
10962
  network: NetworkInfo;
10963
+ provider: Web3Provider;
10964
+ }
10965
+ /**
10966
+ * * Interface representing the parameters for {@link Checkout.getNetworkInfo}.
10967
+ * @property {Web3Provider} provider - The provider to connect to the network.
10968
+ */
10969
+ interface GetNetworkParams {
10970
+ provider: Web3Provider;
10971
+ }
10972
+ /**
10973
+ * Enum representing the types of filters that can be applied to get the allow list of networks.
10974
+ */
10975
+ declare enum NetworkFilterTypes {
10976
+ ALL = "all"
10977
+ }
10978
+ /**
10979
+ * Interface representing a filter for filtering a specific network.
10980
+ * @property {ChainId} chainId - The ID of the network to allow or disallow.
10981
+ */
10982
+ interface NetworkFilter {
10983
+ chainId: ChainId;
10984
+ }
10985
+ /**
10986
+ * * Interface representing the parameters for {@link Checkout.getNetworkAllowList}.
10987
+ * @property {NetworkFilterTypes} type - The type of allow list filter to apply.
10988
+ * @property {NetworkFilter[]} [exclude] - The list of networks to exclude from the allow list.
10989
+ */
10990
+ interface GetNetworkAllowListParams {
10991
+ type: NetworkFilterTypes;
10992
+ exclude?: NetworkFilter[];
10993
+ }
10994
+ /**
10995
+ * Interface representing the result of {@link Checkout.getNetworkAllowList}.
10996
+ * @property {NetworkInfo[]} networks - The list of allowed networks.
10997
+ */
10998
+ interface GetNetworkAllowListResult {
10999
+ networks: NetworkInfo[];
9342
11000
  }
11001
+ /**
11002
+ * Interface representing the parameters for {@link Checkout.getBalance}.
11003
+ * @property {@link Web3Provider} provider - The provider to connect to the network.
11004
+ * @property {string} walletAddress - The wallet address.
11005
+ * @property {string | undefined} contractAddress - The contract address of the token.
11006
+ */
9343
11007
  interface GetBalanceParams {
9344
11008
  provider: Web3Provider;
9345
11009
  walletAddress: string;
9346
11010
  contractAddress?: string;
9347
11011
  }
11012
+ /**
11013
+ * Interface representing the result of {@link Checkout.getBalance}.
11014
+ * @property {BigNumber} balance - The balance of the wallet for the token.
11015
+ * @property {string} formattedBalance - The formatted balance of the wallet for the token.
11016
+ * @property {TokenInfo} token - The token information.
11017
+ */
9348
11018
  interface GetBalanceResult {
9349
11019
  balance: BigNumber;
9350
11020
  formattedBalance: string;
9351
11021
  token: TokenInfo;
9352
11022
  }
11023
+ /**
11024
+ * Interface representing the parameters for {@link Checkout.getAllBalances}.
11025
+ * @property {Web3Provider} provider - The provider to connect to the network.
11026
+ * @property {string} walletAddress - The wallet address.
11027
+ * @property {ChainId} chainId - The ID of the network.
11028
+ */
9353
11029
  interface GetAllBalancesParams {
9354
11030
  provider: Web3Provider;
9355
11031
  walletAddress: string;
9356
11032
  chainId: ChainId;
9357
11033
  }
11034
+ /**
11035
+ * Interface representing the result of {@link Checkout.getAllBalances}.
11036
+ * @property {GetBalanceResult[]} balances - The array of balances of the wallet for every token.
11037
+ */
9358
11038
  interface GetAllBalancesResult {
9359
11039
  balances: GetBalanceResult[];
9360
11040
  }
11041
+ /**
11042
+ * Enum representing the list of default supported providers.
11043
+ */
9361
11044
  declare enum ConnectionProviders {
9362
11045
  METAMASK = "metamask"
9363
11046
  }
11047
+ /**
11048
+ * Interface representing the parameters for {@link Checkout.connect}.
11049
+ * @property {ConnectionProviders} providerPreference - The preferred provider to connect to the network.
11050
+ */
9364
11051
  type ConnectParams = {
9365
11052
  providerPreference: ConnectionProviders;
9366
11053
  };
11054
+ /**
11055
+ * Interface representing the result of {@link Checkout.connect}.
11056
+ * @property {Web3Provider} provider - The provider used to connect to the network.
11057
+ * @property {NetworkInfo} network - Information about the connected network.
11058
+ */
9367
11059
  interface ConnectResult {
9368
11060
  provider: Web3Provider;
9369
11061
  network: NetworkInfo;
9370
11062
  }
11063
+ /**
11064
+ * Interface representing the parameters for {@link Checkout.checkIsWalletConnected}.
11065
+ * @property {ConnectionProviders} providerPreference - The preferred provider to use to check the connection status to th Web3 network.
11066
+ */
9371
11067
  interface CheckConnectionParams {
9372
11068
  providerPreference: ConnectionProviders;
9373
11069
  }
11070
+ /**
11071
+ * Interface representing the result of {@link Checkout.checkIsWalletConnected}.
11072
+ * @property {boolean} isConnected - A boolean indicating the connection status of th Web3 provider.
11073
+ * @property {string} walletAddress - The wallet address used to check the connection.
11074
+ */
9374
11075
  interface CheckConnectionResult {
9375
11076
  isConnected: boolean;
9376
11077
  walletAddress: string;
9377
11078
  }
11079
+ /**
11080
+ * Interface representing the parameters for {@link Checkout.sendTransaction}.
11081
+ * @property {Web3Provider} provider - The provider to connect to the network.
11082
+ * @property {Transaction} transaction - The transaction to send.
11083
+ */
9378
11084
  interface SendTransactionParams {
9379
11085
  provider: Web3Provider;
9380
11086
  transaction: Transaction;
9381
11087
  }
11088
+ /**
11089
+ * Interface representing the result of {@link Checkout.sendTransaction}.
11090
+ * @property {TransactionResponse} transactionResponse - The response of the transaction.
11091
+ */
9382
11092
  interface SendTransactionResult {
9383
11093
  transactionResponse: TransactionResponse;
9384
11094
  }
11095
+ /**
11096
+ * Interface representing a blockchain transaction.
11097
+ * @property {string} nonce - The transaction nonce.
11098
+ * @property {string} gasPrice - The gas price of the transaction.
11099
+ * @property {string} gas - The gas limit for the transaction.
11100
+ * @property {string} to - The address of the recipient.
11101
+ * @property {string} from - The address of the sender.
11102
+ * @property {string} value - The value to transfer in wei.
11103
+ * @property {string} data - The data to include in the transaction.
11104
+ * @property {number} chainId - The ID of the chain the transaction is for.
11105
+ */
9385
11106
  interface Transaction {
9386
11107
  nonce: string;
9387
11108
  gasPrice: string;
@@ -9392,14 +11113,150 @@ interface Transaction {
9392
11113
  data: string;
9393
11114
  chainId: number;
9394
11115
  }
11116
+ /**
11117
+ * Interface representing a wallet filter to be used in {@link GetWalletAllowListParams}.
11118
+ * @property {ConnectionProviders} connectionProvider - The connection provider to filter wallets by.
11119
+ */
11120
+ interface WalletFilter {
11121
+ connectionProvider: ConnectionProviders;
11122
+ }
11123
+ /**
11124
+ * Interface representing the parameters for {@link Checkout.getWalletAllowList}.
11125
+ * @property {WalletFilterTypes} type - The type of wallets to filter by.
11126
+ * @property {WalletFilter[]} [exclude] - An optional list of wallet filters to exclude from the allowed wallets list.
11127
+ */
11128
+ interface GetWalletAllowListParams {
11129
+ type: WalletFilterTypes;
11130
+ exclude?: WalletFilter[];
11131
+ }
11132
+ /**
11133
+ * Interface representing information about a wallet used in {@link GetWalletAllowListResult}.
11134
+ * @property {ConnectionProviders} connectionProvider - The connection provider for the wallet.
11135
+ * @property {string} name - The name of the wallet.
11136
+ * @property {string} description - A description of the wallet.
11137
+ * @property {string} icon - The URL/data:image of an icon for the wallet.
11138
+ */
11139
+ interface WalletInfo {
11140
+ connectionProvider: ConnectionProviders;
11141
+ name: string;
11142
+ description: string;
11143
+ icon: string;
11144
+ }
11145
+ /**
11146
+ * Interface representing the result of {@link Checkout.getWalletAllowList}.
11147
+ * @property {WalletInfo[]} wallets - A list of {@link WalletInfo} objects representing the allowed wallets.
11148
+ */
11149
+ interface GetWalletAllowListResult {
11150
+ wallets: WalletInfo[];
11151
+ }
11152
+ /**
11153
+ * Enum representing the platform filters used in {@link GetWalletAllowListParams}.
11154
+ */
11155
+ declare enum WalletFilterTypes {
11156
+ ALL = "all",
11157
+ DESKTOP = "desktop",
11158
+ MOBILE = "mobile"
11159
+ }
11160
+ /**
11161
+ * The different types of errors that can be returned by the checkout process.
11162
+ */
11163
+ declare enum CheckoutErrorType {
11164
+ PROVIDER_PREFERENCE_ERROR = "PROVIDER_PREFERENCE_ERROR",
11165
+ CONNECT_PROVIDER_ERROR = "CONNECT_PROVIDER_ERROR",
11166
+ GET_BALANCE_ERROR = "GET_BALANCE_ERROR",
11167
+ GET_ERC20_BALANCE_ERROR = "GET_ERC20_BALANCE_ERROR",
11168
+ GET_NETWORK_INFO_ERROR = "GET_NETWORK_INFO_ERROR",
11169
+ METAMASK_PROVIDER_ERROR = "METAMASK_PROVIDER_ERROR",
11170
+ CHAIN_NOT_SUPPORTED_ERROR = "CHAIN_NOT_SUPPORTED_ERROR",
11171
+ PROVIDER_REQUEST_MISSING_ERROR = "PROVIDER_REQUEST_MISSING_ERROR",
11172
+ PROVIDER_REQUEST_FAILED_ERROR = "PROVIDER_REQUEST_FAILED_ERROR",
11173
+ USER_REJECTED_REQUEST_ERROR = "USER_REJECTED_REQUEST_ERROR",
11174
+ TRANSACTION_ERROR = "TRANSACTION_ERROR"
11175
+ }
11176
+ /**
11177
+ * The type signature for an error.
11178
+ * Contains a type that corresponds to a {@link CheckoutErrorType}, an optional message string and optional data object.
11179
+ */
11180
+ type ErrorType = {
11181
+ type: CheckoutErrorType;
11182
+ message?: string;
11183
+ data?: {
11184
+ [key: string]: string;
11185
+ };
11186
+ };
9395
11187
  declare class Checkout {
11188
+ /**
11189
+ * Check if a wallet is connected to the current application without requesting permission from the wallet and hence triggering a connect popup.
11190
+ * @param {CheckConnectionParams} params - The necessary data required to verify a wallet connection status.
11191
+ * @returns Wallet connection status details.
11192
+ * @throws {@link ErrorType}
11193
+ */
9396
11194
  checkIsWalletConnected(params: CheckConnectionParams): Promise<CheckConnectionResult>;
11195
+ /**
11196
+ * Establish a connection with a wallet provider such as MetaMask and returns the provider object and the current network details.
11197
+ * @param {ConnectParams} params - The necessary data required to establish a connection with a wallet provider.
11198
+ * @returns Wallet provider and current network information.
11199
+ * @throws {@link ErrorType}
11200
+ */
9397
11201
  connect(params: ConnectParams): Promise<ConnectResult>;
11202
+ /**
11203
+ * Switch the currently connected wallet to a new network.
11204
+ * @param {SwitchNetworkParams} params - The necessary data required to switch network.
11205
+ * @returns The new network information.
11206
+ * @throws {@link ErrorType}
11207
+ */
9398
11208
  switchNetwork(params: SwitchNetworkParams): Promise<SwitchNetworkResult>;
11209
+ /**
11210
+ * Fetch the balance of the native token of the current connected network or, if a contract address is provided, it will return the balance of that ERC20 token. For example, if the wallet is connected to the Ethereum Mainnet then the function gets the wallet ETH L1 balance.
11211
+ * @param {GetBalanceParams} params - The necessary data required to fetch the wallet balance.
11212
+ * @returns Native token balance for the given wallet.
11213
+ * @throws {@link ErrorType}
11214
+ */
9399
11215
  getBalance(params: GetBalanceParams): Promise<GetBalanceResult>;
11216
+ /**
11217
+ * Fetch all available balances (ERC20 & Native) of the current connected network of the given wallet. It will loop through the list of allowed tokens and check for balance on each one.
11218
+ * @param {GetAllBalancesParams} params - The necessary data required to fetch all the wallet balances.
11219
+ * @returns List of tokens balance for the given wallet.
11220
+ * @throws {@link ErrorType}
11221
+ */
9400
11222
  getAllBalances(params: GetAllBalancesParams): Promise<GetAllBalancesResult>;
9401
- getTokenAllowList(params: GetTokenAllowListParams): GetTokenAllowListResult;
11223
+ /**
11224
+ * Fetch the list of available networks that a wallet can add or/and switch to.
11225
+ * @param {GetNetworkAllowListParams} params - The necessary data required to fetch the list of available networks.
11226
+ * @returns List of networks.
11227
+ * @throws {@link ErrorType}
11228
+ */
11229
+ getNetworkAllowList(params: GetNetworkAllowListParams): Promise<GetNetworkAllowListResult>;
11230
+ /**
11231
+ * Get the list of tokens which are allowed to be used with the product.
11232
+ * @param {GetTokenAllowListParams} params - The necessary data required to fetch the list of allowed tokens.
11233
+ * @returns List of allowed tokens.
11234
+ * @throws {@link ErrorType}
11235
+ */
11236
+ getTokenAllowList(params: GetTokenAllowListParams): Promise<GetTokenAllowListResult>;
11237
+ /**
11238
+ * Fetch the list of wallets which are available to connect with.
11239
+ * @param {GetWalletAllowListParams} params - The necessary data required to fetch the list of allowed wallets.
11240
+ * @returns List of allowed wallets.
11241
+ * @throws {@link ErrorType}
11242
+ */
11243
+ getWalletAllowList(params: GetWalletAllowListParams): Promise<GetWalletAllowListResult>;
11244
+ /**
11245
+ * Send a generic transaction to the provider.
11246
+ * @param {SendTransactionParams} params - The necessary data required to send a transaction.
11247
+ * @returns Transaction response.
11248
+ * @throws {@link ErrorType}
11249
+ * @remarks
11250
+ * Further documenation can be found at [MetaMask | Sending Transactions](https://docs.metamask.io/guide/sending-transactions.html).
11251
+ */
9402
11252
  sendTransaction(params: SendTransactionParams): Promise<SendTransactionResult>;
11253
+ /**
11254
+ * Get network information about the currently selected network.
11255
+ * @param {GetNetworkParams} params - The necessary data required to get the current network information.
11256
+ * @returns Network details.
11257
+ * @throws {@link ErrorType}
11258
+ */
11259
+ getNetworkInfo(params: GetNetworkParams): Promise<NetworkInfo>;
9403
11260
  }
9404
11261
 
9405
11262
  interface StandardLonghandProperties<TLength = (string & {}) | 0, TTime = string & {}> {
@@ -20423,7 +22280,7 @@ interface Interaction {
20423
22280
  timestamp: number;
20424
22281
  }
20425
22282
 
20426
- // Type definitions for React 18.0
22283
+ // NOTE: Users of the `experimental` builds of React should add a reference
20427
22284
 
20428
22285
 
20429
22286
  type NativeAnimationEvent = AnimationEvent;
@@ -21768,7 +23625,9 @@ declare namespace React {
21768
23625
  interface DOMAttributes<T> {
21769
23626
  children?: ReactNode | undefined;
21770
23627
  dangerouslySetInnerHTML?: {
21771
- __html: string;
23628
+ // Should be InnerHTML['innerHTML'].
23629
+ // But unfortunately we're mixing renderer-specific type declarations.
23630
+ __html: string | TrustedHTML;
21772
23631
  } | undefined;
21773
23632
 
21774
23633
  // Clipboard Events
@@ -23718,7 +25577,8 @@ declare enum IMTBLWidgetEvents {
23718
25577
  }
23719
25578
  declare enum ConnectEventType {
23720
25579
  SUCCESS = "success",
23721
- FAILURE = "failure"
25580
+ FAILURE = "failure",
25581
+ CLOSE_WIDGET = "close-widget"
23722
25582
  }
23723
25583
  type ConnectEvent<T> = {
23724
25584
  type: ConnectEventType;
@@ -23726,11 +25586,9 @@ type ConnectEvent<T> = {
23726
25586
  };
23727
25587
  type ConnectionSuccess = {
23728
25588
  providerPreference: ConnectionProviders;
23729
- timestamp: number;
23730
25589
  };
23731
25590
  type ConnectionFailed = {
23732
25591
  reason: string;
23733
- timestamp: number;
23734
25592
  };
23735
25593
  declare enum WalletEventType {
23736
25594
  CLOSE_WIDGET = "close-widget",
@@ -23827,6 +25685,18 @@ interface ImtblBuyProps extends undefined<undefined<HTMLElement>, HTMLElement> {
23827
25685
  theme: string;
23828
25686
  orderId: string;
23829
25687
  }
25688
+ interface ImtblTransitionExampleProps extends undefined<undefined<HTMLElement>, HTMLElement> {
25689
+ providerPreference: string;
25690
+ theme: string;
25691
+ }
25692
+ interface ImtblInnerWidgetExampleProps extends undefined<undefined<HTMLElement>, HTMLElement> {
25693
+ providerPreference: string;
25694
+ theme: string;
25695
+ }
25696
+ interface ImtblOuterWidgetExampleProps extends undefined<undefined<HTMLElement>, HTMLElement> {
25697
+ providerPreference: string;
25698
+ theme: string;
25699
+ }
23830
25700
  declare enum Network {
23831
25701
  ETHEREUM = "Ethereum",
23832
25702
  GOERLI = "Goerli",
@@ -23838,4 +25708,4 @@ declare enum WidgetTheme {
23838
25708
  CUSTOM = "custom"
23839
25709
  }
23840
25710
 
23841
- export { BridgeEvent, BridgeEventType, BridgeFailed, BridgeSuccess, BuyClose, BuyEvent, BuyEventType, BuyFailed, BuyNotConnected, BuySuccess, ChainId, CheckConnectionParams, CheckConnectionResult, Checkout, Config, Configuration, ConnectEvent, ConnectEventType, ConnectParams, ConnectResult, ConnectionFailed, ConnectionProviders, ConnectionSuccess, Environment, GenericIMXProvider, GetAllBalancesParams, GetAllBalancesResult, GetBalanceParams, GetBalanceResult, GetTokenAllowListParams, GetTokenAllowListResult, IMTBLWidgetEvents, IMXProvider, ImtblBridgeProps, ImtblBuyProps, ImtblConnectProps, ImtblExampleProps, ImtblSwapProps, ImtblWalletProps, MetaMaskIMXProvider, Network, NetworkInfo, PRODUCTION, Passport, PassportError, SANDBOX, SendTransactionParams, SendTransactionResult, StarkExAPIFactory, SwapEvent, SwapEventType, SwapFailed, SwapSuccess, SwitchNetworkParams, SwitchNetworkResult, TokenInfo, WalletEvent, WalletEventType, WalletNetworkSwitchEvent, WidgetTheme };
25711
+ export { BridgeEvent, BridgeEventType, BridgeFailed, BridgeSuccess, BuyClose, BuyEvent, BuyEventType, BuyFailed, BuyNotConnected, BuySuccess, ChainId, CheckConnectionParams, CheckConnectionResult, Checkout, CheckoutErrorType, ConnectEvent, ConnectEventType, ConnectParams, ConnectResult, ConnectionFailed, ConnectionProviders, ConnectionSuccess, Environment, ErrorType, GenericIMXProvider, GetAllBalancesParams, GetAllBalancesResult, GetBalanceParams, GetBalanceResult, GetNetworkAllowListParams, GetNetworkAllowListResult, GetNetworkParams, GetTokenAllowListParams, GetTokenAllowListResult, GetWalletAllowListParams, GetWalletAllowListResult, IMTBLWidgetEvents, IMXProvider, ImmutableConfiguration, ImmutableXClient, ImtblBridgeProps, ImtblBuyProps, ImtblConnectProps, ImtblExampleProps, ImtblInnerWidgetExampleProps, ImtblOuterWidgetExampleProps, ImtblSwapProps, ImtblTransitionExampleProps, ImtblWalletProps, ImxModuleConfiguration as ImxClientModuleConfiguration, WalletConnection as ImxClientWalletConnection, MetaMaskIMXProvider, ModuleConfiguration, Network, NetworkFilter, NetworkFilterTypes, NetworkInfo, Passport, PassportConfiguration, PassportError, ProviderConfiguration, SendTransactionParams, SendTransactionResult, SwapEvent, SwapEventType, SwapFailed, SwapSuccess, SwitchNetworkParams, SwitchNetworkResult, TokenFilter, TokenFilterTypes, TokenInfo, Transaction, WalletEvent, WalletEventType, WalletFilter, WalletFilterTypes, WalletInfo, WalletNetworkSwitchEvent, WidgetTheme, createStarkSigner as imxClientCreateStarkSigner, generateLegacyStarkPrivateKey as imxClientGenerateLegacyStarkPrivateKey };