zklighter-perps 1.0.296 → 1.0.298

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.
@@ -81,6 +81,7 @@ models/GeckoContracts.ts
81
81
  models/GeckoOrderbook.ts
82
82
  models/GeckoTicker.ts
83
83
  models/GeckoTickers.ts
84
+ models/HistoricalTradesExportData.ts
84
85
  models/IsWhitelisted.ts
85
86
  models/L1Metadata.ts
86
87
  models/L1ProviderInfo.ts
@@ -117,6 +118,8 @@ models/PendingUnlock.ts
117
118
  models/PerpsMarketStats.ts
118
119
  models/PerpsOrderBookDetail.ts
119
120
  models/PnLEntry.ts
121
+ models/PnlLeaderboard.ts
122
+ models/PnlLeaderboardEntry.ts
120
123
  models/PositionFunding.ts
121
124
  models/PositionFundings.ts
122
125
  models/PriceAlert.ts
@@ -139,6 +142,7 @@ models/ReferralStats.ts
139
142
  models/ReferralTotals.ts
140
143
  models/ReqDoFaucet.ts
141
144
  models/ReqExportData.ts
145
+ models/ReqExportHistoricalTrades.ts
142
146
  models/ReqGetAccount.ts
143
147
  models/ReqGetAccountActiveOrders.ts
144
148
  models/ReqGetAccountApiKeys.ts
@@ -180,6 +184,7 @@ models/ReqGetOrderBookDetails.ts
180
184
  models/ReqGetOrderBookOrders.ts
181
185
  models/ReqGetOrderBooks.ts
182
186
  models/ReqGetPartnerStats.ts
187
+ models/ReqGetPnlLeaderboard.ts
183
188
  models/ReqGetPositionFunding.ts
184
189
  models/ReqGetPublicPoolsMetadata.ts
185
190
  models/ReqGetPushNotifSettings.ts
@@ -273,6 +278,7 @@ models/Trades.ts
273
278
  models/TransferFeeInfo.ts
274
279
  models/TransferHistory.ts
275
280
  models/TransferHistoryItem.ts
281
+ models/TvBlockchainAddresses.ts
276
282
  models/TvError.ts
277
283
  models/TvGroup.ts
278
284
  models/TvGroups.ts
@@ -26,6 +26,7 @@ import type {
26
26
  Leaderboard,
27
27
  LiquidationInfos,
28
28
  PartnerStats,
29
+ PnlLeaderboard,
29
30
  PositionFundings,
30
31
  RespChangeAccountTier,
31
32
  RespCreateRFQ,
@@ -68,6 +69,8 @@ import {
68
69
  LiquidationInfosToJSON,
69
70
  PartnerStatsFromJSON,
70
71
  PartnerStatsToJSON,
72
+ PnlLeaderboardFromJSON,
73
+ PnlLeaderboardToJSON,
71
74
  PositionFundingsFromJSON,
72
75
  PositionFundingsToJSON,
73
76
  RespChangeAccountTierFromJSON,
@@ -242,6 +245,15 @@ export interface PnlRequest {
242
245
  ignore_transfers?: boolean;
243
246
  }
244
247
 
248
+ export interface PnlLeaderboardRequest {
249
+ time_window: PnlLeaderboardTimeWindowEnum;
250
+ sort_by: PnlLeaderboardSortByEnum;
251
+ sort_dir: PnlLeaderboardSortDirEnum;
252
+ limit: number;
253
+ offset: number;
254
+ search?: string;
255
+ }
256
+
245
257
  export interface PositionFundingRequest {
246
258
  account_index: number;
247
259
  limit: number;
@@ -1522,6 +1534,93 @@ export class AccountApi extends runtime.BaseAPI {
1522
1534
  return await response.value();
1523
1535
  }
1524
1536
 
1537
+ /**
1538
+ * Get pnl leaderboard
1539
+ * pnlLeaderboard
1540
+ */
1541
+ async pnlLeaderboardRaw(requestParameters: PnlLeaderboardRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PnlLeaderboard>> {
1542
+ if (requestParameters['time_window'] == null) {
1543
+ throw new runtime.RequiredError(
1544
+ 'time_window',
1545
+ 'Required parameter "time_window" was null or undefined when calling pnlLeaderboard().'
1546
+ );
1547
+ }
1548
+
1549
+ if (requestParameters['sort_by'] == null) {
1550
+ throw new runtime.RequiredError(
1551
+ 'sort_by',
1552
+ 'Required parameter "sort_by" was null or undefined when calling pnlLeaderboard().'
1553
+ );
1554
+ }
1555
+
1556
+ if (requestParameters['sort_dir'] == null) {
1557
+ throw new runtime.RequiredError(
1558
+ 'sort_dir',
1559
+ 'Required parameter "sort_dir" was null or undefined when calling pnlLeaderboard().'
1560
+ );
1561
+ }
1562
+
1563
+ if (requestParameters['limit'] == null) {
1564
+ throw new runtime.RequiredError(
1565
+ 'limit',
1566
+ 'Required parameter "limit" was null or undefined when calling pnlLeaderboard().'
1567
+ );
1568
+ }
1569
+
1570
+ if (requestParameters['offset'] == null) {
1571
+ throw new runtime.RequiredError(
1572
+ 'offset',
1573
+ 'Required parameter "offset" was null or undefined when calling pnlLeaderboard().'
1574
+ );
1575
+ }
1576
+
1577
+ const queryParameters: any = {};
1578
+
1579
+ if (requestParameters['time_window'] != null) {
1580
+ queryParameters['time_window'] = requestParameters['time_window'];
1581
+ }
1582
+
1583
+ if (requestParameters['sort_by'] != null) {
1584
+ queryParameters['sort_by'] = requestParameters['sort_by'];
1585
+ }
1586
+
1587
+ if (requestParameters['sort_dir'] != null) {
1588
+ queryParameters['sort_dir'] = requestParameters['sort_dir'];
1589
+ }
1590
+
1591
+ if (requestParameters['limit'] != null) {
1592
+ queryParameters['limit'] = requestParameters['limit'];
1593
+ }
1594
+
1595
+ if (requestParameters['offset'] != null) {
1596
+ queryParameters['offset'] = requestParameters['offset'];
1597
+ }
1598
+
1599
+ if (requestParameters['search'] != null) {
1600
+ queryParameters['search'] = requestParameters['search'];
1601
+ }
1602
+
1603
+ const headerParameters: runtime.HTTPHeaders = {};
1604
+
1605
+ const response = await this.request({
1606
+ path: `/api/v1/pnlLeaderboard`,
1607
+ method: 'GET',
1608
+ headers: headerParameters,
1609
+ query: queryParameters,
1610
+ }, initOverrides);
1611
+
1612
+ return new runtime.JSONApiResponse(response, (jsonValue) => PnlLeaderboardFromJSON(jsonValue));
1613
+ }
1614
+
1615
+ /**
1616
+ * Get pnl leaderboard
1617
+ * pnlLeaderboard
1618
+ */
1619
+ async pnlLeaderboard(requestParameters: PnlLeaderboardRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PnlLeaderboard> {
1620
+ const response = await this.pnlLeaderboardRaw(requestParameters, initOverrides);
1621
+ return await response.value();
1622
+ }
1623
+
1525
1624
  /**
1526
1625
  * Get accounts position fundings
1527
1626
  * positionFunding
@@ -2345,6 +2444,34 @@ export const PnlResolutionEnum = {
2345
2444
  _1d: '1d'
2346
2445
  } as const;
2347
2446
  export type PnlResolutionEnum = typeof PnlResolutionEnum[keyof typeof PnlResolutionEnum];
2447
+ /**
2448
+ * @export
2449
+ */
2450
+ export const PnlLeaderboardTimeWindowEnum = {
2451
+ _24h: '24h',
2452
+ _7d: '7d',
2453
+ _30d: '30d',
2454
+ All: 'all'
2455
+ } as const;
2456
+ export type PnlLeaderboardTimeWindowEnum = typeof PnlLeaderboardTimeWindowEnum[keyof typeof PnlLeaderboardTimeWindowEnum];
2457
+ /**
2458
+ * @export
2459
+ */
2460
+ export const PnlLeaderboardSortByEnum = {
2461
+ Pnl: 'pnl',
2462
+ Roi: 'roi',
2463
+ Volume: 'volume',
2464
+ AccountValue: 'account_value'
2465
+ } as const;
2466
+ export type PnlLeaderboardSortByEnum = typeof PnlLeaderboardSortByEnum[keyof typeof PnlLeaderboardSortByEnum];
2467
+ /**
2468
+ * @export
2469
+ */
2470
+ export const PnlLeaderboardSortDirEnum = {
2471
+ Asc: 'asc',
2472
+ Desc: 'desc'
2473
+ } as const;
2474
+ export type PnlLeaderboardSortDirEnum = typeof PnlLeaderboardSortDirEnum[keyof typeof PnlLeaderboardSortDirEnum];
2348
2475
  /**
2349
2476
  * @export
2350
2477
  */
package/apis/OrderApi.ts CHANGED
@@ -18,6 +18,7 @@ import type {
18
18
  AssetDetails,
19
19
  ExchangeStats,
20
20
  ExportData,
21
+ HistoricalTradesExportData,
21
22
  OrderBookDetails,
22
23
  OrderBookOrders,
23
24
  OrderBooks,
@@ -35,6 +36,8 @@ import {
35
36
  ExchangeStatsToJSON,
36
37
  ExportDataFromJSON,
37
38
  ExportDataToJSON,
39
+ HistoricalTradesExportDataFromJSON,
40
+ HistoricalTradesExportDataToJSON,
38
41
  OrderBookDetailsFromJSON,
39
42
  OrderBookDetailsToJSON,
40
43
  OrderBookOrdersFromJSON,
@@ -111,6 +114,13 @@ export interface ExecuteStatsRequest {
111
114
  period: ExecuteStatsPeriodEnum;
112
115
  }
113
116
 
117
+ export interface ExportHistoricalTradesRequest {
118
+ l1_address: string;
119
+ date: string;
120
+ authorization?: string;
121
+ auth?: string;
122
+ }
123
+
114
124
  export interface MarketMetricsRequest {
115
125
  timestamp: number;
116
126
  kind: MarketMetricsKindEnum;
@@ -145,6 +155,7 @@ export interface TradesRequest {
145
155
  market_type?: TradesMarketTypeEnum;
146
156
  account_index?: number;
147
157
  order_index?: number;
158
+ order_index_str?: string;
148
159
  sort_dir?: TradesSortDirEnum;
149
160
  cursor?: string;
150
161
  from?: number;
@@ -581,6 +592,64 @@ export class OrderApi extends runtime.BaseAPI {
581
592
  return await response.value();
582
593
  }
583
594
 
595
+ /**
596
+ * Export historical trades. Requires the l1_address to have enough staked LIT; returns a presigned S3 url valid for 1 hour.
597
+ * export_historicalTrades
598
+ */
599
+ async exportHistoricalTradesRaw(requestParameters: ExportHistoricalTradesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<HistoricalTradesExportData>> {
600
+ if (requestParameters['l1_address'] == null) {
601
+ throw new runtime.RequiredError(
602
+ 'l1_address',
603
+ 'Required parameter "l1_address" was null or undefined when calling exportHistoricalTrades().'
604
+ );
605
+ }
606
+
607
+ if (requestParameters['date'] == null) {
608
+ throw new runtime.RequiredError(
609
+ 'date',
610
+ 'Required parameter "date" was null or undefined when calling exportHistoricalTrades().'
611
+ );
612
+ }
613
+
614
+ const queryParameters: any = {};
615
+
616
+ if (requestParameters['authorization'] != null) {
617
+ queryParameters['authorization'] = requestParameters['authorization'];
618
+ }
619
+
620
+ if (requestParameters['auth'] != null) {
621
+ queryParameters['auth'] = requestParameters['auth'];
622
+ }
623
+
624
+ if (requestParameters['l1_address'] != null) {
625
+ queryParameters['l1_address'] = requestParameters['l1_address'];
626
+ }
627
+
628
+ if (requestParameters['date'] != null) {
629
+ queryParameters['date'] = requestParameters['date'];
630
+ }
631
+
632
+ const headerParameters: runtime.HTTPHeaders = {};
633
+
634
+ const response = await this.request({
635
+ path: `/api/v1/export/historicalTrades`,
636
+ method: 'GET',
637
+ headers: headerParameters,
638
+ query: queryParameters,
639
+ }, initOverrides);
640
+
641
+ return new runtime.JSONApiResponse(response, (jsonValue) => HistoricalTradesExportDataFromJSON(jsonValue));
642
+ }
643
+
644
+ /**
645
+ * Export historical trades. Requires the l1_address to have enough staked LIT; returns a presigned S3 url valid for 1 hour.
646
+ * export_historicalTrades
647
+ */
648
+ async exportHistoricalTrades(requestParameters: ExportHistoricalTradesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<HistoricalTradesExportData> {
649
+ const response = await this.exportHistoricalTradesRaw(requestParameters, initOverrides);
650
+ return await response.value();
651
+ }
652
+
584
653
  /**
585
654
  * Get market metrics for a specific timestamp, returns data for all markets
586
655
  * marketMetrics
@@ -848,6 +917,10 @@ export class OrderApi extends runtime.BaseAPI {
848
917
  queryParameters['order_index'] = requestParameters['order_index'];
849
918
  }
850
919
 
920
+ if (requestParameters['order_index_str'] != null) {
921
+ queryParameters['order_index_str'] = requestParameters['order_index_str'];
922
+ }
923
+
851
924
  if (requestParameters['sort_by'] != null) {
852
925
  queryParameters['sort_by'] = requestParameters['sort_by'];
853
926
  }
@@ -0,0 +1,87 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface HistoricalTradesExportData
20
+ */
21
+ export interface HistoricalTradesExportData {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof HistoricalTradesExportData
26
+ */
27
+ code: number;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof HistoricalTradesExportData
32
+ */
33
+ message?: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof HistoricalTradesExportData
38
+ */
39
+ data_url: string;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof HistoricalTradesExportData
44
+ */
45
+ expires_at: string;
46
+ }
47
+
48
+ /**
49
+ * Check if a given object implements the HistoricalTradesExportData interface.
50
+ */
51
+ export function instanceOfHistoricalTradesExportData(value: object): value is HistoricalTradesExportData {
52
+ if (!('code' in value) || value['code'] === undefined) return false;
53
+ if (!('data_url' in value) || value['data_url'] === undefined) return false;
54
+ if (!('expires_at' in value) || value['expires_at'] === undefined) return false;
55
+ return true;
56
+ }
57
+
58
+ export function HistoricalTradesExportDataFromJSON(json: any): HistoricalTradesExportData {
59
+ return HistoricalTradesExportDataFromJSONTyped(json, false);
60
+ }
61
+
62
+ export function HistoricalTradesExportDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): HistoricalTradesExportData {
63
+ if (json == null) {
64
+ return json;
65
+ }
66
+ return {
67
+
68
+ 'code': json['code'],
69
+ 'message': json['message'] == null ? undefined : json['message'],
70
+ 'data_url': json['data_url'],
71
+ 'expires_at': json['expires_at'],
72
+ };
73
+ }
74
+
75
+ export function HistoricalTradesExportDataToJSON(value?: HistoricalTradesExportData | null): any {
76
+ if (value == null) {
77
+ return value;
78
+ }
79
+ return {
80
+
81
+ 'code': value['code'],
82
+ 'message': value['message'],
83
+ 'data_url': value['data_url'],
84
+ 'expires_at': value['expires_at'],
85
+ };
86
+ }
87
+
@@ -0,0 +1,103 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { PnlLeaderboardEntry } from './PnlLeaderboardEntry';
17
+ import {
18
+ PnlLeaderboardEntryFromJSON,
19
+ PnlLeaderboardEntryFromJSONTyped,
20
+ PnlLeaderboardEntryToJSON,
21
+ } from './PnlLeaderboardEntry';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface PnlLeaderboard
27
+ */
28
+ export interface PnlLeaderboard {
29
+ /**
30
+ *
31
+ * @type {number}
32
+ * @memberof PnlLeaderboard
33
+ */
34
+ code: number;
35
+ /**
36
+ *
37
+ * @type {string}
38
+ * @memberof PnlLeaderboard
39
+ */
40
+ message?: string;
41
+ /**
42
+ *
43
+ * @type {Array<PnlLeaderboardEntry>}
44
+ * @memberof PnlLeaderboard
45
+ */
46
+ entries: Array<PnlLeaderboardEntry>;
47
+ /**
48
+ *
49
+ * @type {number}
50
+ * @memberof PnlLeaderboard
51
+ */
52
+ total: number;
53
+ /**
54
+ *
55
+ * @type {number}
56
+ * @memberof PnlLeaderboard
57
+ */
58
+ updated_at: number;
59
+ }
60
+
61
+ /**
62
+ * Check if a given object implements the PnlLeaderboard interface.
63
+ */
64
+ export function instanceOfPnlLeaderboard(value: object): value is PnlLeaderboard {
65
+ if (!('code' in value) || value['code'] === undefined) return false;
66
+ if (!('entries' in value) || value['entries'] === undefined) return false;
67
+ if (!('total' in value) || value['total'] === undefined) return false;
68
+ if (!('updated_at' in value) || value['updated_at'] === undefined) return false;
69
+ return true;
70
+ }
71
+
72
+ export function PnlLeaderboardFromJSON(json: any): PnlLeaderboard {
73
+ return PnlLeaderboardFromJSONTyped(json, false);
74
+ }
75
+
76
+ export function PnlLeaderboardFromJSONTyped(json: any, ignoreDiscriminator: boolean): PnlLeaderboard {
77
+ if (json == null) {
78
+ return json;
79
+ }
80
+ return {
81
+
82
+ 'code': json['code'],
83
+ 'message': json['message'] == null ? undefined : json['message'],
84
+ 'entries': ((json['entries'] as Array<any>).map(PnlLeaderboardEntryFromJSON)),
85
+ 'total': json['total'],
86
+ 'updated_at': json['updated_at'],
87
+ };
88
+ }
89
+
90
+ export function PnlLeaderboardToJSON(value?: PnlLeaderboard | null): any {
91
+ if (value == null) {
92
+ return value;
93
+ }
94
+ return {
95
+
96
+ 'code': value['code'],
97
+ 'message': value['message'],
98
+ 'entries': ((value['entries'] as Array<any>).map(PnlLeaderboardEntryToJSON)),
99
+ 'total': value['total'],
100
+ 'updated_at': value['updated_at'],
101
+ };
102
+ }
103
+
@@ -0,0 +1,106 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface PnlLeaderboardEntry
20
+ */
21
+ export interface PnlLeaderboardEntry {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof PnlLeaderboardEntry
26
+ */
27
+ rank: number;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof PnlLeaderboardEntry
32
+ */
33
+ l1_address: string;
34
+ /**
35
+ *
36
+ * @type {number}
37
+ * @memberof PnlLeaderboardEntry
38
+ */
39
+ account_value: number;
40
+ /**
41
+ *
42
+ * @type {number}
43
+ * @memberof PnlLeaderboardEntry
44
+ */
45
+ pnl: number;
46
+ /**
47
+ *
48
+ * @type {number}
49
+ * @memberof PnlLeaderboardEntry
50
+ */
51
+ roi: number;
52
+ /**
53
+ *
54
+ * @type {number}
55
+ * @memberof PnlLeaderboardEntry
56
+ */
57
+ volume: number;
58
+ }
59
+
60
+ /**
61
+ * Check if a given object implements the PnlLeaderboardEntry interface.
62
+ */
63
+ export function instanceOfPnlLeaderboardEntry(value: object): value is PnlLeaderboardEntry {
64
+ if (!('rank' in value) || value['rank'] === undefined) return false;
65
+ if (!('l1_address' in value) || value['l1_address'] === undefined) return false;
66
+ if (!('account_value' in value) || value['account_value'] === undefined) return false;
67
+ if (!('pnl' in value) || value['pnl'] === undefined) return false;
68
+ if (!('roi' in value) || value['roi'] === undefined) return false;
69
+ if (!('volume' in value) || value['volume'] === undefined) return false;
70
+ return true;
71
+ }
72
+
73
+ export function PnlLeaderboardEntryFromJSON(json: any): PnlLeaderboardEntry {
74
+ return PnlLeaderboardEntryFromJSONTyped(json, false);
75
+ }
76
+
77
+ export function PnlLeaderboardEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): PnlLeaderboardEntry {
78
+ if (json == null) {
79
+ return json;
80
+ }
81
+ return {
82
+
83
+ 'rank': json['rank'],
84
+ 'l1_address': json['l1_address'],
85
+ 'account_value': json['account_value'],
86
+ 'pnl': json['pnl'],
87
+ 'roi': json['roi'],
88
+ 'volume': json['volume'],
89
+ };
90
+ }
91
+
92
+ export function PnlLeaderboardEntryToJSON(value?: PnlLeaderboardEntry | null): any {
93
+ if (value == null) {
94
+ return value;
95
+ }
96
+ return {
97
+
98
+ 'rank': value['rank'],
99
+ 'l1_address': value['l1_address'],
100
+ 'account_value': value['account_value'],
101
+ 'pnl': value['pnl'],
102
+ 'roi': value['roi'],
103
+ 'volume': value['volume'],
104
+ };
105
+ }
106
+
@@ -0,0 +1,78 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface ReqExportHistoricalTrades
20
+ */
21
+ export interface ReqExportHistoricalTrades {
22
+ /**
23
+ * made optional to support header auth clients
24
+ * @type {string}
25
+ * @memberof ReqExportHistoricalTrades
26
+ */
27
+ auth?: string;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof ReqExportHistoricalTrades
32
+ */
33
+ l1_address: string;
34
+ /**
35
+ * UTC day, YYYY-MM-DD
36
+ * @type {string}
37
+ * @memberof ReqExportHistoricalTrades
38
+ */
39
+ date: string;
40
+ }
41
+
42
+ /**
43
+ * Check if a given object implements the ReqExportHistoricalTrades interface.
44
+ */
45
+ export function instanceOfReqExportHistoricalTrades(value: object): value is ReqExportHistoricalTrades {
46
+ if (!('l1_address' in value) || value['l1_address'] === undefined) return false;
47
+ if (!('date' in value) || value['date'] === undefined) return false;
48
+ return true;
49
+ }
50
+
51
+ export function ReqExportHistoricalTradesFromJSON(json: any): ReqExportHistoricalTrades {
52
+ return ReqExportHistoricalTradesFromJSONTyped(json, false);
53
+ }
54
+
55
+ export function ReqExportHistoricalTradesFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReqExportHistoricalTrades {
56
+ if (json == null) {
57
+ return json;
58
+ }
59
+ return {
60
+
61
+ 'auth': json['auth'] == null ? undefined : json['auth'],
62
+ 'l1_address': json['l1_address'],
63
+ 'date': json['date'],
64
+ };
65
+ }
66
+
67
+ export function ReqExportHistoricalTradesToJSON(value?: ReqExportHistoricalTrades | null): any {
68
+ if (value == null) {
69
+ return value;
70
+ }
71
+ return {
72
+
73
+ 'auth': value['auth'],
74
+ 'l1_address': value['l1_address'],
75
+ 'date': value['date'],
76
+ };
77
+ }
78
+