@d8x/perpetuals-sdk 0.6.4 → 0.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/cjs/version.d.ts +1 -1
  2. package/dist/cjs/version.js +1 -1
  3. package/dist/esm/version.d.ts +1 -1
  4. package/dist/esm/version.js +1 -1
  5. package/package.json +2 -1
  6. package/src/abi/ERC20.json +288 -0
  7. package/src/abi/IPerpetualManager.json +5888 -0
  8. package/src/abi/LimitOrderBook.json +1062 -0
  9. package/src/abi/LimitOrderBookFactory.json +161 -0
  10. package/src/abi/MockTokenSwap.json +186 -0
  11. package/src/abi/ShareToken.json +428 -0
  12. package/src/accountTrade.ts +428 -0
  13. package/src/brokerTool.ts +555 -0
  14. package/src/config/defaultConfig.json +62 -0
  15. package/src/config/mockSwap.json +6 -0
  16. package/src/config/priceFeedConfig.json +104 -0
  17. package/src/config/symbolList.json +13 -0
  18. package/src/contracts/ERC20.ts +444 -0
  19. package/src/contracts/IPerpetualManager.ts +7227 -0
  20. package/src/contracts/LimitOrderBook.ts +1251 -0
  21. package/src/contracts/LimitOrderBookFactory.ts +348 -0
  22. package/src/contracts/MockTokenSwap.ts +373 -0
  23. package/src/contracts/ShareToken.ts +695 -0
  24. package/src/contracts/common.ts +44 -0
  25. package/src/contracts/factories/ERC20__factory.ts +306 -0
  26. package/src/contracts/factories/IPerpetualManager__factory.ts +5912 -0
  27. package/src/contracts/factories/LimitOrderBookFactory__factory.ts +189 -0
  28. package/src/contracts/factories/LimitOrderBook__factory.ts +1086 -0
  29. package/src/contracts/factories/MockTokenSwap__factory.ts +207 -0
  30. package/src/contracts/factories/ShareToken__factory.ts +449 -0
  31. package/src/contracts/factories/index.ts +9 -0
  32. package/src/contracts/index.ts +16 -0
  33. package/src/d8XMath.ts +376 -0
  34. package/src/index.ts +29 -0
  35. package/src/liquidatorTool.ts +270 -0
  36. package/src/liquidityProviderTool.ts +148 -0
  37. package/src/marketData.ts +1310 -0
  38. package/src/nodeSDKTypes.ts +332 -0
  39. package/src/orderReferrerTool.ts +516 -0
  40. package/src/perpetualDataHandler.ts +1161 -0
  41. package/src/perpetualEventHandler.ts +455 -0
  42. package/src/priceFeeds.ts +382 -0
  43. package/src/traderDigests.ts +86 -0
  44. package/src/traderInterface.ts +172 -0
  45. package/src/triangulator.ts +105 -0
  46. package/src/utils.ts +134 -0
  47. package/src/version.ts +1 -0
  48. package/src/writeAccessHandler.ts +139 -0
@@ -0,0 +1,1251 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumber,
7
+ BigNumberish,
8
+ BytesLike,
9
+ CallOverrides,
10
+ ContractTransaction,
11
+ Overrides,
12
+ PayableOverrides,
13
+ PopulatedTransaction,
14
+ Signer,
15
+ utils,
16
+ } from "ethers";
17
+ import type {
18
+ FunctionFragment,
19
+ Result,
20
+ EventFragment,
21
+ } from "@ethersproject/abi";
22
+ import type { Listener, Provider } from "@ethersproject/providers";
23
+ import type {
24
+ TypedEventFilter,
25
+ TypedEvent,
26
+ TypedListener,
27
+ OnEvent,
28
+ } from "./common";
29
+
30
+ export declare namespace IPerpetualOrder {
31
+ export type OrderStruct = {
32
+ leverageTDR: BigNumberish;
33
+ brokerFeeTbps: BigNumberish;
34
+ iPerpetualId: BigNumberish;
35
+ traderAddr: string;
36
+ executionTimestamp: BigNumberish;
37
+ brokerAddr: string;
38
+ submittedTimestamp: BigNumberish;
39
+ flags: BigNumberish;
40
+ iDeadline: BigNumberish;
41
+ referrerAddr: string;
42
+ fAmount: BigNumberish;
43
+ fLimitPrice: BigNumberish;
44
+ fTriggerPrice: BigNumberish;
45
+ brokerSignature: BytesLike;
46
+ };
47
+
48
+ export type OrderStructOutput = [
49
+ number,
50
+ number,
51
+ number,
52
+ string,
53
+ number,
54
+ string,
55
+ number,
56
+ number,
57
+ number,
58
+ string,
59
+ BigNumber,
60
+ BigNumber,
61
+ BigNumber,
62
+ string
63
+ ] & {
64
+ leverageTDR: number;
65
+ brokerFeeTbps: number;
66
+ iPerpetualId: number;
67
+ traderAddr: string;
68
+ executionTimestamp: number;
69
+ brokerAddr: string;
70
+ submittedTimestamp: number;
71
+ flags: number;
72
+ iDeadline: number;
73
+ referrerAddr: string;
74
+ fAmount: BigNumber;
75
+ fLimitPrice: BigNumber;
76
+ fTriggerPrice: BigNumber;
77
+ brokerSignature: string;
78
+ };
79
+ }
80
+
81
+ export declare namespace IClientOrder {
82
+ export type ClientOrderStruct = {
83
+ iPerpetualId: BigNumberish;
84
+ fLimitPrice: BigNumberish;
85
+ leverageTDR: BigNumberish;
86
+ executionTimestamp: BigNumberish;
87
+ flags: BigNumberish;
88
+ iDeadline: BigNumberish;
89
+ brokerAddr: string;
90
+ fTriggerPrice: BigNumberish;
91
+ fAmount: BigNumberish;
92
+ parentChildDigest1: BytesLike;
93
+ traderAddr: string;
94
+ parentChildDigest2: BytesLike;
95
+ brokerFeeTbps: BigNumberish;
96
+ brokerSignature: BytesLike;
97
+ };
98
+
99
+ export type ClientOrderStructOutput = [
100
+ number,
101
+ BigNumber,
102
+ number,
103
+ number,
104
+ number,
105
+ number,
106
+ string,
107
+ BigNumber,
108
+ BigNumber,
109
+ string,
110
+ string,
111
+ string,
112
+ number,
113
+ string
114
+ ] & {
115
+ iPerpetualId: number;
116
+ fLimitPrice: BigNumber;
117
+ leverageTDR: number;
118
+ executionTimestamp: number;
119
+ flags: number;
120
+ iDeadline: number;
121
+ brokerAddr: string;
122
+ fTriggerPrice: BigNumber;
123
+ fAmount: BigNumber;
124
+ parentChildDigest1: string;
125
+ traderAddr: string;
126
+ parentChildDigest2: string;
127
+ brokerFeeTbps: number;
128
+ brokerSignature: string;
129
+ };
130
+ }
131
+
132
+ export interface LimitOrderBookInterface extends utils.Interface {
133
+ functions: {
134
+ "allDigests(uint256)": FunctionFragment;
135
+ "allLimitDigests(uint256,uint256)": FunctionFragment;
136
+ "cancelOrder(bytes32,bytes,bytes[],uint64[])": FunctionFragment;
137
+ "digestsOfTrader(address,uint256)": FunctionFragment;
138
+ "executeOrder(bytes32,address,bytes[],uint64[])": FunctionFragment;
139
+ "executeOrders(bytes32[],address,bytes[],uint64[])": FunctionFragment;
140
+ "getOrderStatus(bytes32)": FunctionFragment;
141
+ "getOrders(address,uint256,uint256)": FunctionFragment;
142
+ "getSignature(bytes32)": FunctionFragment;
143
+ "getTrader(bytes32)": FunctionFragment;
144
+ "lastOrderHash()": FunctionFragment;
145
+ "limitDigestsOfTrader(address,uint256,uint256)": FunctionFragment;
146
+ "marketCloseSwitchTimestamp()": FunctionFragment;
147
+ "nextOrderHash(bytes32)": FunctionFragment;
148
+ "numberOfAllDigests()": FunctionFragment;
149
+ "numberOfDigestsOfTrader(address)": FunctionFragment;
150
+ "numberOfOrderBookDigests()": FunctionFragment;
151
+ "orderCount()": FunctionFragment;
152
+ "orderDependency(bytes32)": FunctionFragment;
153
+ "orderOfDigest(bytes32)": FunctionFragment;
154
+ "orderSignature(bytes32)": FunctionFragment;
155
+ "perpManager()": FunctionFragment;
156
+ "perpetualId()": FunctionFragment;
157
+ "pollLimitOrders(bytes32,uint256)": FunctionFragment;
158
+ "postOrder((uint24,int128,uint16,uint32,uint32,uint32,address,int128,int128,bytes32,address,bytes32,uint16,bytes),bytes)": FunctionFragment;
159
+ "postOrders((uint24,int128,uint16,uint32,uint32,uint32,address,int128,int128,bytes32,address,bytes32,uint16,bytes)[],bytes[])": FunctionFragment;
160
+ "prevOrderHash(bytes32)": FunctionFragment;
161
+ };
162
+
163
+ getFunction(
164
+ nameOrSignatureOrTopic:
165
+ | "allDigests"
166
+ | "allLimitDigests"
167
+ | "cancelOrder"
168
+ | "digestsOfTrader"
169
+ | "executeOrder"
170
+ | "executeOrders"
171
+ | "getOrderStatus"
172
+ | "getOrders"
173
+ | "getSignature"
174
+ | "getTrader"
175
+ | "lastOrderHash"
176
+ | "limitDigestsOfTrader"
177
+ | "marketCloseSwitchTimestamp"
178
+ | "nextOrderHash"
179
+ | "numberOfAllDigests"
180
+ | "numberOfDigestsOfTrader"
181
+ | "numberOfOrderBookDigests"
182
+ | "orderCount"
183
+ | "orderDependency"
184
+ | "orderOfDigest"
185
+ | "orderSignature"
186
+ | "perpManager"
187
+ | "perpetualId"
188
+ | "pollLimitOrders"
189
+ | "postOrder"
190
+ | "postOrders"
191
+ | "prevOrderHash"
192
+ ): FunctionFragment;
193
+
194
+ encodeFunctionData(
195
+ functionFragment: "allDigests",
196
+ values: [BigNumberish]
197
+ ): string;
198
+ encodeFunctionData(
199
+ functionFragment: "allLimitDigests",
200
+ values: [BigNumberish, BigNumberish]
201
+ ): string;
202
+ encodeFunctionData(
203
+ functionFragment: "cancelOrder",
204
+ values: [BytesLike, BytesLike, BytesLike[], BigNumberish[]]
205
+ ): string;
206
+ encodeFunctionData(
207
+ functionFragment: "digestsOfTrader",
208
+ values: [string, BigNumberish]
209
+ ): string;
210
+ encodeFunctionData(
211
+ functionFragment: "executeOrder",
212
+ values: [BytesLike, string, BytesLike[], BigNumberish[]]
213
+ ): string;
214
+ encodeFunctionData(
215
+ functionFragment: "executeOrders",
216
+ values: [BytesLike[], string, BytesLike[], BigNumberish[]]
217
+ ): string;
218
+ encodeFunctionData(
219
+ functionFragment: "getOrderStatus",
220
+ values: [BytesLike]
221
+ ): string;
222
+ encodeFunctionData(
223
+ functionFragment: "getOrders",
224
+ values: [string, BigNumberish, BigNumberish]
225
+ ): string;
226
+ encodeFunctionData(
227
+ functionFragment: "getSignature",
228
+ values: [BytesLike]
229
+ ): string;
230
+ encodeFunctionData(
231
+ functionFragment: "getTrader",
232
+ values: [BytesLike]
233
+ ): string;
234
+ encodeFunctionData(
235
+ functionFragment: "lastOrderHash",
236
+ values?: undefined
237
+ ): string;
238
+ encodeFunctionData(
239
+ functionFragment: "limitDigestsOfTrader",
240
+ values: [string, BigNumberish, BigNumberish]
241
+ ): string;
242
+ encodeFunctionData(
243
+ functionFragment: "marketCloseSwitchTimestamp",
244
+ values?: undefined
245
+ ): string;
246
+ encodeFunctionData(
247
+ functionFragment: "nextOrderHash",
248
+ values: [BytesLike]
249
+ ): string;
250
+ encodeFunctionData(
251
+ functionFragment: "numberOfAllDigests",
252
+ values?: undefined
253
+ ): string;
254
+ encodeFunctionData(
255
+ functionFragment: "numberOfDigestsOfTrader",
256
+ values: [string]
257
+ ): string;
258
+ encodeFunctionData(
259
+ functionFragment: "numberOfOrderBookDigests",
260
+ values?: undefined
261
+ ): string;
262
+ encodeFunctionData(
263
+ functionFragment: "orderCount",
264
+ values?: undefined
265
+ ): string;
266
+ encodeFunctionData(
267
+ functionFragment: "orderDependency",
268
+ values: [BytesLike]
269
+ ): string;
270
+ encodeFunctionData(
271
+ functionFragment: "orderOfDigest",
272
+ values: [BytesLike]
273
+ ): string;
274
+ encodeFunctionData(
275
+ functionFragment: "orderSignature",
276
+ values: [BytesLike]
277
+ ): string;
278
+ encodeFunctionData(
279
+ functionFragment: "perpManager",
280
+ values?: undefined
281
+ ): string;
282
+ encodeFunctionData(
283
+ functionFragment: "perpetualId",
284
+ values?: undefined
285
+ ): string;
286
+ encodeFunctionData(
287
+ functionFragment: "pollLimitOrders",
288
+ values: [BytesLike, BigNumberish]
289
+ ): string;
290
+ encodeFunctionData(
291
+ functionFragment: "postOrder",
292
+ values: [IClientOrder.ClientOrderStruct, BytesLike]
293
+ ): string;
294
+ encodeFunctionData(
295
+ functionFragment: "postOrders",
296
+ values: [IClientOrder.ClientOrderStruct[], BytesLike[]]
297
+ ): string;
298
+ encodeFunctionData(
299
+ functionFragment: "prevOrderHash",
300
+ values: [BytesLike]
301
+ ): string;
302
+
303
+ decodeFunctionResult(functionFragment: "allDigests", data: BytesLike): Result;
304
+ decodeFunctionResult(
305
+ functionFragment: "allLimitDigests",
306
+ data: BytesLike
307
+ ): Result;
308
+ decodeFunctionResult(
309
+ functionFragment: "cancelOrder",
310
+ data: BytesLike
311
+ ): Result;
312
+ decodeFunctionResult(
313
+ functionFragment: "digestsOfTrader",
314
+ data: BytesLike
315
+ ): Result;
316
+ decodeFunctionResult(
317
+ functionFragment: "executeOrder",
318
+ data: BytesLike
319
+ ): Result;
320
+ decodeFunctionResult(
321
+ functionFragment: "executeOrders",
322
+ data: BytesLike
323
+ ): Result;
324
+ decodeFunctionResult(
325
+ functionFragment: "getOrderStatus",
326
+ data: BytesLike
327
+ ): Result;
328
+ decodeFunctionResult(functionFragment: "getOrders", data: BytesLike): Result;
329
+ decodeFunctionResult(
330
+ functionFragment: "getSignature",
331
+ data: BytesLike
332
+ ): Result;
333
+ decodeFunctionResult(functionFragment: "getTrader", data: BytesLike): Result;
334
+ decodeFunctionResult(
335
+ functionFragment: "lastOrderHash",
336
+ data: BytesLike
337
+ ): Result;
338
+ decodeFunctionResult(
339
+ functionFragment: "limitDigestsOfTrader",
340
+ data: BytesLike
341
+ ): Result;
342
+ decodeFunctionResult(
343
+ functionFragment: "marketCloseSwitchTimestamp",
344
+ data: BytesLike
345
+ ): Result;
346
+ decodeFunctionResult(
347
+ functionFragment: "nextOrderHash",
348
+ data: BytesLike
349
+ ): Result;
350
+ decodeFunctionResult(
351
+ functionFragment: "numberOfAllDigests",
352
+ data: BytesLike
353
+ ): Result;
354
+ decodeFunctionResult(
355
+ functionFragment: "numberOfDigestsOfTrader",
356
+ data: BytesLike
357
+ ): Result;
358
+ decodeFunctionResult(
359
+ functionFragment: "numberOfOrderBookDigests",
360
+ data: BytesLike
361
+ ): Result;
362
+ decodeFunctionResult(functionFragment: "orderCount", data: BytesLike): Result;
363
+ decodeFunctionResult(
364
+ functionFragment: "orderDependency",
365
+ data: BytesLike
366
+ ): Result;
367
+ decodeFunctionResult(
368
+ functionFragment: "orderOfDigest",
369
+ data: BytesLike
370
+ ): Result;
371
+ decodeFunctionResult(
372
+ functionFragment: "orderSignature",
373
+ data: BytesLike
374
+ ): Result;
375
+ decodeFunctionResult(
376
+ functionFragment: "perpManager",
377
+ data: BytesLike
378
+ ): Result;
379
+ decodeFunctionResult(
380
+ functionFragment: "perpetualId",
381
+ data: BytesLike
382
+ ): Result;
383
+ decodeFunctionResult(
384
+ functionFragment: "pollLimitOrders",
385
+ data: BytesLike
386
+ ): Result;
387
+ decodeFunctionResult(functionFragment: "postOrder", data: BytesLike): Result;
388
+ decodeFunctionResult(functionFragment: "postOrders", data: BytesLike): Result;
389
+ decodeFunctionResult(
390
+ functionFragment: "prevOrderHash",
391
+ data: BytesLike
392
+ ): Result;
393
+
394
+ events: {
395
+ "ExecutionFailed(uint24,address,bytes32,string)": EventFragment;
396
+ "PerpetualLimitOrderCreated(uint24,address,address,tuple,bytes32)": EventFragment;
397
+ };
398
+
399
+ getEvent(nameOrSignatureOrTopic: "ExecutionFailed"): EventFragment;
400
+ getEvent(nameOrSignatureOrTopic: "PerpetualLimitOrderCreated"): EventFragment;
401
+ }
402
+
403
+ export interface ExecutionFailedEventObject {
404
+ perpetualId: number;
405
+ trader: string;
406
+ digest: string;
407
+ reason: string;
408
+ }
409
+ export type ExecutionFailedEvent = TypedEvent<
410
+ [number, string, string, string],
411
+ ExecutionFailedEventObject
412
+ >;
413
+
414
+ export type ExecutionFailedEventFilter = TypedEventFilter<ExecutionFailedEvent>;
415
+
416
+ export interface PerpetualLimitOrderCreatedEventObject {
417
+ perpetualId: number;
418
+ trader: string;
419
+ brokerAddr: string;
420
+ order: IPerpetualOrder.OrderStructOutput;
421
+ digest: string;
422
+ }
423
+ export type PerpetualLimitOrderCreatedEvent = TypedEvent<
424
+ [number, string, string, IPerpetualOrder.OrderStructOutput, string],
425
+ PerpetualLimitOrderCreatedEventObject
426
+ >;
427
+
428
+ export type PerpetualLimitOrderCreatedEventFilter =
429
+ TypedEventFilter<PerpetualLimitOrderCreatedEvent>;
430
+
431
+ export interface LimitOrderBook extends BaseContract {
432
+ connect(signerOrProvider: Signer | Provider | string): this;
433
+ attach(addressOrName: string): this;
434
+ deployed(): Promise<this>;
435
+
436
+ interface: LimitOrderBookInterface;
437
+
438
+ queryFilter<TEvent extends TypedEvent>(
439
+ event: TypedEventFilter<TEvent>,
440
+ fromBlockOrBlockhash?: string | number | undefined,
441
+ toBlock?: string | number | undefined
442
+ ): Promise<Array<TEvent>>;
443
+
444
+ listeners<TEvent extends TypedEvent>(
445
+ eventFilter?: TypedEventFilter<TEvent>
446
+ ): Array<TypedListener<TEvent>>;
447
+ listeners(eventName?: string): Array<Listener>;
448
+ removeAllListeners<TEvent extends TypedEvent>(
449
+ eventFilter: TypedEventFilter<TEvent>
450
+ ): this;
451
+ removeAllListeners(eventName?: string): this;
452
+ off: OnEvent<this>;
453
+ on: OnEvent<this>;
454
+ once: OnEvent<this>;
455
+ removeListener: OnEvent<this>;
456
+
457
+ functions: {
458
+ allDigests(
459
+ arg0: BigNumberish,
460
+ overrides?: CallOverrides
461
+ ): Promise<[string]>;
462
+
463
+ allLimitDigests(
464
+ page: BigNumberish,
465
+ limit: BigNumberish,
466
+ overrides?: CallOverrides
467
+ ): Promise<[string[]]>;
468
+
469
+ cancelOrder(
470
+ _digest: BytesLike,
471
+ _signature: BytesLike,
472
+ _updateData: BytesLike[],
473
+ _publishTimes: BigNumberish[],
474
+ overrides?: PayableOverrides & { from?: string }
475
+ ): Promise<ContractTransaction>;
476
+
477
+ digestsOfTrader(
478
+ arg0: string,
479
+ arg1: BigNumberish,
480
+ overrides?: CallOverrides
481
+ ): Promise<[string]>;
482
+
483
+ executeOrder(
484
+ _digest: BytesLike,
485
+ _referrerAddr: string,
486
+ _updateData: BytesLike[],
487
+ _publishTimes: BigNumberish[],
488
+ overrides?: PayableOverrides & { from?: string }
489
+ ): Promise<ContractTransaction>;
490
+
491
+ executeOrders(
492
+ _digests: BytesLike[],
493
+ _referrerAddr: string,
494
+ _updateData: BytesLike[],
495
+ _publishTimes: BigNumberish[],
496
+ overrides?: PayableOverrides & { from?: string }
497
+ ): Promise<ContractTransaction>;
498
+
499
+ getOrderStatus(
500
+ _digest: BytesLike,
501
+ overrides?: CallOverrides
502
+ ): Promise<[number]>;
503
+
504
+ getOrders(
505
+ trader: string,
506
+ offset: BigNumberish,
507
+ limit: BigNumberish,
508
+ overrides?: CallOverrides
509
+ ): Promise<
510
+ [IClientOrder.ClientOrderStructOutput[]] & {
511
+ orders: IClientOrder.ClientOrderStructOutput[];
512
+ }
513
+ >;
514
+
515
+ getSignature(
516
+ digest: BytesLike,
517
+ overrides?: CallOverrides
518
+ ): Promise<[string] & { signature: string }>;
519
+
520
+ getTrader(
521
+ digest: BytesLike,
522
+ overrides?: CallOverrides
523
+ ): Promise<[string] & { trader: string }>;
524
+
525
+ lastOrderHash(overrides?: CallOverrides): Promise<[string]>;
526
+
527
+ limitDigestsOfTrader(
528
+ trader: string,
529
+ page: BigNumberish,
530
+ limit: BigNumberish,
531
+ overrides?: CallOverrides
532
+ ): Promise<[string[]]>;
533
+
534
+ marketCloseSwitchTimestamp(overrides?: CallOverrides): Promise<[BigNumber]>;
535
+
536
+ nextOrderHash(
537
+ arg0: BytesLike,
538
+ overrides?: CallOverrides
539
+ ): Promise<[string]>;
540
+
541
+ numberOfAllDigests(overrides?: CallOverrides): Promise<[BigNumber]>;
542
+
543
+ numberOfDigestsOfTrader(
544
+ trader: string,
545
+ overrides?: CallOverrides
546
+ ): Promise<[BigNumber]>;
547
+
548
+ numberOfOrderBookDigests(overrides?: CallOverrides): Promise<[BigNumber]>;
549
+
550
+ orderCount(overrides?: CallOverrides): Promise<[BigNumber]>;
551
+
552
+ orderDependency(
553
+ arg0: BytesLike,
554
+ overrides?: CallOverrides
555
+ ): Promise<
556
+ [string, string] & {
557
+ parentChildDigest1: string;
558
+ parentChildDigest2: string;
559
+ }
560
+ >;
561
+
562
+ orderOfDigest(
563
+ arg0: BytesLike,
564
+ overrides?: CallOverrides
565
+ ): Promise<
566
+ [
567
+ number,
568
+ number,
569
+ number,
570
+ string,
571
+ number,
572
+ string,
573
+ number,
574
+ number,
575
+ number,
576
+ string,
577
+ BigNumber,
578
+ BigNumber,
579
+ BigNumber,
580
+ string
581
+ ] & {
582
+ leverageTDR: number;
583
+ brokerFeeTbps: number;
584
+ iPerpetualId: number;
585
+ traderAddr: string;
586
+ executionTimestamp: number;
587
+ brokerAddr: string;
588
+ submittedTimestamp: number;
589
+ flags: number;
590
+ iDeadline: number;
591
+ referrerAddr: string;
592
+ fAmount: BigNumber;
593
+ fLimitPrice: BigNumber;
594
+ fTriggerPrice: BigNumber;
595
+ brokerSignature: string;
596
+ }
597
+ >;
598
+
599
+ orderSignature(
600
+ arg0: BytesLike,
601
+ overrides?: CallOverrides
602
+ ): Promise<[string]>;
603
+
604
+ perpManager(overrides?: CallOverrides): Promise<[string]>;
605
+
606
+ perpetualId(overrides?: CallOverrides): Promise<[number]>;
607
+
608
+ pollLimitOrders(
609
+ _startAfter: BytesLike,
610
+ _numElements: BigNumberish,
611
+ overrides?: CallOverrides
612
+ ): Promise<
613
+ [IClientOrder.ClientOrderStructOutput[], string[]] & {
614
+ orders: IClientOrder.ClientOrderStructOutput[];
615
+ orderHashes: string[];
616
+ }
617
+ >;
618
+
619
+ postOrder(
620
+ _order: IClientOrder.ClientOrderStruct,
621
+ _signature: BytesLike,
622
+ overrides?: Overrides & { from?: string }
623
+ ): Promise<ContractTransaction>;
624
+
625
+ postOrders(
626
+ _orders: IClientOrder.ClientOrderStruct[],
627
+ _signatures: BytesLike[],
628
+ overrides?: Overrides & { from?: string }
629
+ ): Promise<ContractTransaction>;
630
+
631
+ prevOrderHash(
632
+ arg0: BytesLike,
633
+ overrides?: CallOverrides
634
+ ): Promise<[string]>;
635
+ };
636
+
637
+ allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
638
+
639
+ allLimitDigests(
640
+ page: BigNumberish,
641
+ limit: BigNumberish,
642
+ overrides?: CallOverrides
643
+ ): Promise<string[]>;
644
+
645
+ cancelOrder(
646
+ _digest: BytesLike,
647
+ _signature: BytesLike,
648
+ _updateData: BytesLike[],
649
+ _publishTimes: BigNumberish[],
650
+ overrides?: PayableOverrides & { from?: string }
651
+ ): Promise<ContractTransaction>;
652
+
653
+ digestsOfTrader(
654
+ arg0: string,
655
+ arg1: BigNumberish,
656
+ overrides?: CallOverrides
657
+ ): Promise<string>;
658
+
659
+ executeOrder(
660
+ _digest: BytesLike,
661
+ _referrerAddr: string,
662
+ _updateData: BytesLike[],
663
+ _publishTimes: BigNumberish[],
664
+ overrides?: PayableOverrides & { from?: string }
665
+ ): Promise<ContractTransaction>;
666
+
667
+ executeOrders(
668
+ _digests: BytesLike[],
669
+ _referrerAddr: string,
670
+ _updateData: BytesLike[],
671
+ _publishTimes: BigNumberish[],
672
+ overrides?: PayableOverrides & { from?: string }
673
+ ): Promise<ContractTransaction>;
674
+
675
+ getOrderStatus(
676
+ _digest: BytesLike,
677
+ overrides?: CallOverrides
678
+ ): Promise<number>;
679
+
680
+ getOrders(
681
+ trader: string,
682
+ offset: BigNumberish,
683
+ limit: BigNumberish,
684
+ overrides?: CallOverrides
685
+ ): Promise<IClientOrder.ClientOrderStructOutput[]>;
686
+
687
+ getSignature(digest: BytesLike, overrides?: CallOverrides): Promise<string>;
688
+
689
+ getTrader(digest: BytesLike, overrides?: CallOverrides): Promise<string>;
690
+
691
+ lastOrderHash(overrides?: CallOverrides): Promise<string>;
692
+
693
+ limitDigestsOfTrader(
694
+ trader: string,
695
+ page: BigNumberish,
696
+ limit: BigNumberish,
697
+ overrides?: CallOverrides
698
+ ): Promise<string[]>;
699
+
700
+ marketCloseSwitchTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
701
+
702
+ nextOrderHash(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
703
+
704
+ numberOfAllDigests(overrides?: CallOverrides): Promise<BigNumber>;
705
+
706
+ numberOfDigestsOfTrader(
707
+ trader: string,
708
+ overrides?: CallOverrides
709
+ ): Promise<BigNumber>;
710
+
711
+ numberOfOrderBookDigests(overrides?: CallOverrides): Promise<BigNumber>;
712
+
713
+ orderCount(overrides?: CallOverrides): Promise<BigNumber>;
714
+
715
+ orderDependency(
716
+ arg0: BytesLike,
717
+ overrides?: CallOverrides
718
+ ): Promise<
719
+ [string, string] & {
720
+ parentChildDigest1: string;
721
+ parentChildDigest2: string;
722
+ }
723
+ >;
724
+
725
+ orderOfDigest(
726
+ arg0: BytesLike,
727
+ overrides?: CallOverrides
728
+ ): Promise<
729
+ [
730
+ number,
731
+ number,
732
+ number,
733
+ string,
734
+ number,
735
+ string,
736
+ number,
737
+ number,
738
+ number,
739
+ string,
740
+ BigNumber,
741
+ BigNumber,
742
+ BigNumber,
743
+ string
744
+ ] & {
745
+ leverageTDR: number;
746
+ brokerFeeTbps: number;
747
+ iPerpetualId: number;
748
+ traderAddr: string;
749
+ executionTimestamp: number;
750
+ brokerAddr: string;
751
+ submittedTimestamp: number;
752
+ flags: number;
753
+ iDeadline: number;
754
+ referrerAddr: string;
755
+ fAmount: BigNumber;
756
+ fLimitPrice: BigNumber;
757
+ fTriggerPrice: BigNumber;
758
+ brokerSignature: string;
759
+ }
760
+ >;
761
+
762
+ orderSignature(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
763
+
764
+ perpManager(overrides?: CallOverrides): Promise<string>;
765
+
766
+ perpetualId(overrides?: CallOverrides): Promise<number>;
767
+
768
+ pollLimitOrders(
769
+ _startAfter: BytesLike,
770
+ _numElements: BigNumberish,
771
+ overrides?: CallOverrides
772
+ ): Promise<
773
+ [IClientOrder.ClientOrderStructOutput[], string[]] & {
774
+ orders: IClientOrder.ClientOrderStructOutput[];
775
+ orderHashes: string[];
776
+ }
777
+ >;
778
+
779
+ postOrder(
780
+ _order: IClientOrder.ClientOrderStruct,
781
+ _signature: BytesLike,
782
+ overrides?: Overrides & { from?: string }
783
+ ): Promise<ContractTransaction>;
784
+
785
+ postOrders(
786
+ _orders: IClientOrder.ClientOrderStruct[],
787
+ _signatures: BytesLike[],
788
+ overrides?: Overrides & { from?: string }
789
+ ): Promise<ContractTransaction>;
790
+
791
+ prevOrderHash(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
792
+
793
+ callStatic: {
794
+ allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
795
+
796
+ allLimitDigests(
797
+ page: BigNumberish,
798
+ limit: BigNumberish,
799
+ overrides?: CallOverrides
800
+ ): Promise<string[]>;
801
+
802
+ cancelOrder(
803
+ _digest: BytesLike,
804
+ _signature: BytesLike,
805
+ _updateData: BytesLike[],
806
+ _publishTimes: BigNumberish[],
807
+ overrides?: CallOverrides
808
+ ): Promise<void>;
809
+
810
+ digestsOfTrader(
811
+ arg0: string,
812
+ arg1: BigNumberish,
813
+ overrides?: CallOverrides
814
+ ): Promise<string>;
815
+
816
+ executeOrder(
817
+ _digest: BytesLike,
818
+ _referrerAddr: string,
819
+ _updateData: BytesLike[],
820
+ _publishTimes: BigNumberish[],
821
+ overrides?: CallOverrides
822
+ ): Promise<void>;
823
+
824
+ executeOrders(
825
+ _digests: BytesLike[],
826
+ _referrerAddr: string,
827
+ _updateData: BytesLike[],
828
+ _publishTimes: BigNumberish[],
829
+ overrides?: CallOverrides
830
+ ): Promise<void>;
831
+
832
+ getOrderStatus(
833
+ _digest: BytesLike,
834
+ overrides?: CallOverrides
835
+ ): Promise<number>;
836
+
837
+ getOrders(
838
+ trader: string,
839
+ offset: BigNumberish,
840
+ limit: BigNumberish,
841
+ overrides?: CallOverrides
842
+ ): Promise<IClientOrder.ClientOrderStructOutput[]>;
843
+
844
+ getSignature(digest: BytesLike, overrides?: CallOverrides): Promise<string>;
845
+
846
+ getTrader(digest: BytesLike, overrides?: CallOverrides): Promise<string>;
847
+
848
+ lastOrderHash(overrides?: CallOverrides): Promise<string>;
849
+
850
+ limitDigestsOfTrader(
851
+ trader: string,
852
+ page: BigNumberish,
853
+ limit: BigNumberish,
854
+ overrides?: CallOverrides
855
+ ): Promise<string[]>;
856
+
857
+ marketCloseSwitchTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
858
+
859
+ nextOrderHash(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
860
+
861
+ numberOfAllDigests(overrides?: CallOverrides): Promise<BigNumber>;
862
+
863
+ numberOfDigestsOfTrader(
864
+ trader: string,
865
+ overrides?: CallOverrides
866
+ ): Promise<BigNumber>;
867
+
868
+ numberOfOrderBookDigests(overrides?: CallOverrides): Promise<BigNumber>;
869
+
870
+ orderCount(overrides?: CallOverrides): Promise<BigNumber>;
871
+
872
+ orderDependency(
873
+ arg0: BytesLike,
874
+ overrides?: CallOverrides
875
+ ): Promise<
876
+ [string, string] & {
877
+ parentChildDigest1: string;
878
+ parentChildDigest2: string;
879
+ }
880
+ >;
881
+
882
+ orderOfDigest(
883
+ arg0: BytesLike,
884
+ overrides?: CallOverrides
885
+ ): Promise<
886
+ [
887
+ number,
888
+ number,
889
+ number,
890
+ string,
891
+ number,
892
+ string,
893
+ number,
894
+ number,
895
+ number,
896
+ string,
897
+ BigNumber,
898
+ BigNumber,
899
+ BigNumber,
900
+ string
901
+ ] & {
902
+ leverageTDR: number;
903
+ brokerFeeTbps: number;
904
+ iPerpetualId: number;
905
+ traderAddr: string;
906
+ executionTimestamp: number;
907
+ brokerAddr: string;
908
+ submittedTimestamp: number;
909
+ flags: number;
910
+ iDeadline: number;
911
+ referrerAddr: string;
912
+ fAmount: BigNumber;
913
+ fLimitPrice: BigNumber;
914
+ fTriggerPrice: BigNumber;
915
+ brokerSignature: string;
916
+ }
917
+ >;
918
+
919
+ orderSignature(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
920
+
921
+ perpManager(overrides?: CallOverrides): Promise<string>;
922
+
923
+ perpetualId(overrides?: CallOverrides): Promise<number>;
924
+
925
+ pollLimitOrders(
926
+ _startAfter: BytesLike,
927
+ _numElements: BigNumberish,
928
+ overrides?: CallOverrides
929
+ ): Promise<
930
+ [IClientOrder.ClientOrderStructOutput[], string[]] & {
931
+ orders: IClientOrder.ClientOrderStructOutput[];
932
+ orderHashes: string[];
933
+ }
934
+ >;
935
+
936
+ postOrder(
937
+ _order: IClientOrder.ClientOrderStruct,
938
+ _signature: BytesLike,
939
+ overrides?: CallOverrides
940
+ ): Promise<void>;
941
+
942
+ postOrders(
943
+ _orders: IClientOrder.ClientOrderStruct[],
944
+ _signatures: BytesLike[],
945
+ overrides?: CallOverrides
946
+ ): Promise<void>;
947
+
948
+ prevOrderHash(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
949
+ };
950
+
951
+ filters: {
952
+ "ExecutionFailed(uint24,address,bytes32,string)"(
953
+ perpetualId?: BigNumberish | null,
954
+ trader?: string | null,
955
+ digest?: null,
956
+ reason?: null
957
+ ): ExecutionFailedEventFilter;
958
+ ExecutionFailed(
959
+ perpetualId?: BigNumberish | null,
960
+ trader?: string | null,
961
+ digest?: null,
962
+ reason?: null
963
+ ): ExecutionFailedEventFilter;
964
+
965
+ "PerpetualLimitOrderCreated(uint24,address,address,tuple,bytes32)"(
966
+ perpetualId?: BigNumberish | null,
967
+ trader?: string | null,
968
+ brokerAddr?: null,
969
+ order?: null,
970
+ digest?: null
971
+ ): PerpetualLimitOrderCreatedEventFilter;
972
+ PerpetualLimitOrderCreated(
973
+ perpetualId?: BigNumberish | null,
974
+ trader?: string | null,
975
+ brokerAddr?: null,
976
+ order?: null,
977
+ digest?: null
978
+ ): PerpetualLimitOrderCreatedEventFilter;
979
+ };
980
+
981
+ estimateGas: {
982
+ allDigests(
983
+ arg0: BigNumberish,
984
+ overrides?: CallOverrides
985
+ ): Promise<BigNumber>;
986
+
987
+ allLimitDigests(
988
+ page: BigNumberish,
989
+ limit: BigNumberish,
990
+ overrides?: CallOverrides
991
+ ): Promise<BigNumber>;
992
+
993
+ cancelOrder(
994
+ _digest: BytesLike,
995
+ _signature: BytesLike,
996
+ _updateData: BytesLike[],
997
+ _publishTimes: BigNumberish[],
998
+ overrides?: PayableOverrides & { from?: string }
999
+ ): Promise<BigNumber>;
1000
+
1001
+ digestsOfTrader(
1002
+ arg0: string,
1003
+ arg1: BigNumberish,
1004
+ overrides?: CallOverrides
1005
+ ): Promise<BigNumber>;
1006
+
1007
+ executeOrder(
1008
+ _digest: BytesLike,
1009
+ _referrerAddr: string,
1010
+ _updateData: BytesLike[],
1011
+ _publishTimes: BigNumberish[],
1012
+ overrides?: PayableOverrides & { from?: string }
1013
+ ): Promise<BigNumber>;
1014
+
1015
+ executeOrders(
1016
+ _digests: BytesLike[],
1017
+ _referrerAddr: string,
1018
+ _updateData: BytesLike[],
1019
+ _publishTimes: BigNumberish[],
1020
+ overrides?: PayableOverrides & { from?: string }
1021
+ ): Promise<BigNumber>;
1022
+
1023
+ getOrderStatus(
1024
+ _digest: BytesLike,
1025
+ overrides?: CallOverrides
1026
+ ): Promise<BigNumber>;
1027
+
1028
+ getOrders(
1029
+ trader: string,
1030
+ offset: BigNumberish,
1031
+ limit: BigNumberish,
1032
+ overrides?: CallOverrides
1033
+ ): Promise<BigNumber>;
1034
+
1035
+ getSignature(
1036
+ digest: BytesLike,
1037
+ overrides?: CallOverrides
1038
+ ): Promise<BigNumber>;
1039
+
1040
+ getTrader(digest: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
1041
+
1042
+ lastOrderHash(overrides?: CallOverrides): Promise<BigNumber>;
1043
+
1044
+ limitDigestsOfTrader(
1045
+ trader: string,
1046
+ page: BigNumberish,
1047
+ limit: BigNumberish,
1048
+ overrides?: CallOverrides
1049
+ ): Promise<BigNumber>;
1050
+
1051
+ marketCloseSwitchTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
1052
+
1053
+ nextOrderHash(
1054
+ arg0: BytesLike,
1055
+ overrides?: CallOverrides
1056
+ ): Promise<BigNumber>;
1057
+
1058
+ numberOfAllDigests(overrides?: CallOverrides): Promise<BigNumber>;
1059
+
1060
+ numberOfDigestsOfTrader(
1061
+ trader: string,
1062
+ overrides?: CallOverrides
1063
+ ): Promise<BigNumber>;
1064
+
1065
+ numberOfOrderBookDigests(overrides?: CallOverrides): Promise<BigNumber>;
1066
+
1067
+ orderCount(overrides?: CallOverrides): Promise<BigNumber>;
1068
+
1069
+ orderDependency(
1070
+ arg0: BytesLike,
1071
+ overrides?: CallOverrides
1072
+ ): Promise<BigNumber>;
1073
+
1074
+ orderOfDigest(
1075
+ arg0: BytesLike,
1076
+ overrides?: CallOverrides
1077
+ ): Promise<BigNumber>;
1078
+
1079
+ orderSignature(
1080
+ arg0: BytesLike,
1081
+ overrides?: CallOverrides
1082
+ ): Promise<BigNumber>;
1083
+
1084
+ perpManager(overrides?: CallOverrides): Promise<BigNumber>;
1085
+
1086
+ perpetualId(overrides?: CallOverrides): Promise<BigNumber>;
1087
+
1088
+ pollLimitOrders(
1089
+ _startAfter: BytesLike,
1090
+ _numElements: BigNumberish,
1091
+ overrides?: CallOverrides
1092
+ ): Promise<BigNumber>;
1093
+
1094
+ postOrder(
1095
+ _order: IClientOrder.ClientOrderStruct,
1096
+ _signature: BytesLike,
1097
+ overrides?: Overrides & { from?: string }
1098
+ ): Promise<BigNumber>;
1099
+
1100
+ postOrders(
1101
+ _orders: IClientOrder.ClientOrderStruct[],
1102
+ _signatures: BytesLike[],
1103
+ overrides?: Overrides & { from?: string }
1104
+ ): Promise<BigNumber>;
1105
+
1106
+ prevOrderHash(
1107
+ arg0: BytesLike,
1108
+ overrides?: CallOverrides
1109
+ ): Promise<BigNumber>;
1110
+ };
1111
+
1112
+ populateTransaction: {
1113
+ allDigests(
1114
+ arg0: BigNumberish,
1115
+ overrides?: CallOverrides
1116
+ ): Promise<PopulatedTransaction>;
1117
+
1118
+ allLimitDigests(
1119
+ page: BigNumberish,
1120
+ limit: BigNumberish,
1121
+ overrides?: CallOverrides
1122
+ ): Promise<PopulatedTransaction>;
1123
+
1124
+ cancelOrder(
1125
+ _digest: BytesLike,
1126
+ _signature: BytesLike,
1127
+ _updateData: BytesLike[],
1128
+ _publishTimes: BigNumberish[],
1129
+ overrides?: PayableOverrides & { from?: string }
1130
+ ): Promise<PopulatedTransaction>;
1131
+
1132
+ digestsOfTrader(
1133
+ arg0: string,
1134
+ arg1: BigNumberish,
1135
+ overrides?: CallOverrides
1136
+ ): Promise<PopulatedTransaction>;
1137
+
1138
+ executeOrder(
1139
+ _digest: BytesLike,
1140
+ _referrerAddr: string,
1141
+ _updateData: BytesLike[],
1142
+ _publishTimes: BigNumberish[],
1143
+ overrides?: PayableOverrides & { from?: string }
1144
+ ): Promise<PopulatedTransaction>;
1145
+
1146
+ executeOrders(
1147
+ _digests: BytesLike[],
1148
+ _referrerAddr: string,
1149
+ _updateData: BytesLike[],
1150
+ _publishTimes: BigNumberish[],
1151
+ overrides?: PayableOverrides & { from?: string }
1152
+ ): Promise<PopulatedTransaction>;
1153
+
1154
+ getOrderStatus(
1155
+ _digest: BytesLike,
1156
+ overrides?: CallOverrides
1157
+ ): Promise<PopulatedTransaction>;
1158
+
1159
+ getOrders(
1160
+ trader: string,
1161
+ offset: BigNumberish,
1162
+ limit: BigNumberish,
1163
+ overrides?: CallOverrides
1164
+ ): Promise<PopulatedTransaction>;
1165
+
1166
+ getSignature(
1167
+ digest: BytesLike,
1168
+ overrides?: CallOverrides
1169
+ ): Promise<PopulatedTransaction>;
1170
+
1171
+ getTrader(
1172
+ digest: BytesLike,
1173
+ overrides?: CallOverrides
1174
+ ): Promise<PopulatedTransaction>;
1175
+
1176
+ lastOrderHash(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1177
+
1178
+ limitDigestsOfTrader(
1179
+ trader: string,
1180
+ page: BigNumberish,
1181
+ limit: BigNumberish,
1182
+ overrides?: CallOverrides
1183
+ ): Promise<PopulatedTransaction>;
1184
+
1185
+ marketCloseSwitchTimestamp(
1186
+ overrides?: CallOverrides
1187
+ ): Promise<PopulatedTransaction>;
1188
+
1189
+ nextOrderHash(
1190
+ arg0: BytesLike,
1191
+ overrides?: CallOverrides
1192
+ ): Promise<PopulatedTransaction>;
1193
+
1194
+ numberOfAllDigests(
1195
+ overrides?: CallOverrides
1196
+ ): Promise<PopulatedTransaction>;
1197
+
1198
+ numberOfDigestsOfTrader(
1199
+ trader: string,
1200
+ overrides?: CallOverrides
1201
+ ): Promise<PopulatedTransaction>;
1202
+
1203
+ numberOfOrderBookDigests(
1204
+ overrides?: CallOverrides
1205
+ ): Promise<PopulatedTransaction>;
1206
+
1207
+ orderCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1208
+
1209
+ orderDependency(
1210
+ arg0: BytesLike,
1211
+ overrides?: CallOverrides
1212
+ ): Promise<PopulatedTransaction>;
1213
+
1214
+ orderOfDigest(
1215
+ arg0: BytesLike,
1216
+ overrides?: CallOverrides
1217
+ ): Promise<PopulatedTransaction>;
1218
+
1219
+ orderSignature(
1220
+ arg0: BytesLike,
1221
+ overrides?: CallOverrides
1222
+ ): Promise<PopulatedTransaction>;
1223
+
1224
+ perpManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1225
+
1226
+ perpetualId(overrides?: CallOverrides): Promise<PopulatedTransaction>;
1227
+
1228
+ pollLimitOrders(
1229
+ _startAfter: BytesLike,
1230
+ _numElements: BigNumberish,
1231
+ overrides?: CallOverrides
1232
+ ): Promise<PopulatedTransaction>;
1233
+
1234
+ postOrder(
1235
+ _order: IClientOrder.ClientOrderStruct,
1236
+ _signature: BytesLike,
1237
+ overrides?: Overrides & { from?: string }
1238
+ ): Promise<PopulatedTransaction>;
1239
+
1240
+ postOrders(
1241
+ _orders: IClientOrder.ClientOrderStruct[],
1242
+ _signatures: BytesLike[],
1243
+ overrides?: Overrides & { from?: string }
1244
+ ): Promise<PopulatedTransaction>;
1245
+
1246
+ prevOrderHash(
1247
+ arg0: BytesLike,
1248
+ overrides?: CallOverrides
1249
+ ): Promise<PopulatedTransaction>;
1250
+ };
1251
+ }