@d8x/perpetuals-sdk 0.8.33 → 0.8.35

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 (45) hide show
  1. package/dist/cjs/abi/LimitOrderBook.json +95 -0
  2. package/dist/cjs/abi/LimitOrderBookFactory.json +31 -20
  3. package/dist/cjs/contracts/LimitOrderBook.d.ts +53 -3
  4. package/dist/cjs/contracts/LimitOrderBookFactory.d.ts +30 -17
  5. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.d.ts +27 -18
  6. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.js +30 -19
  7. package/dist/cjs/contracts/factories/LimitOrderBookFactory__factory.js.map +1 -1
  8. package/dist/cjs/contracts/factories/LimitOrderBook__factory.d.ts +74 -0
  9. package/dist/cjs/contracts/factories/LimitOrderBook__factory.js +95 -0
  10. package/dist/cjs/contracts/factories/LimitOrderBook__factory.js.map +1 -1
  11. package/dist/cjs/nodeSDKTypes.d.ts +2 -0
  12. package/dist/cjs/orderExecutorTool.js +17 -5
  13. package/dist/cjs/orderExecutorTool.js.map +1 -1
  14. package/dist/cjs/perpetualDataHandler.js +1 -0
  15. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  16. package/dist/cjs/version.d.ts +1 -1
  17. package/dist/cjs/version.js +1 -1
  18. package/dist/esm/abi/LimitOrderBook.json +95 -0
  19. package/dist/esm/abi/LimitOrderBookFactory.json +31 -20
  20. package/dist/esm/contracts/LimitOrderBook.d.ts +53 -3
  21. package/dist/esm/contracts/LimitOrderBookFactory.d.ts +30 -17
  22. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.d.ts +27 -18
  23. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.js +30 -19
  24. package/dist/esm/contracts/factories/LimitOrderBookFactory__factory.js.map +1 -1
  25. package/dist/esm/contracts/factories/LimitOrderBook__factory.d.ts +74 -0
  26. package/dist/esm/contracts/factories/LimitOrderBook__factory.js +95 -0
  27. package/dist/esm/contracts/factories/LimitOrderBook__factory.js.map +1 -1
  28. package/dist/esm/nodeSDKTypes.d.ts +2 -0
  29. package/dist/esm/orderExecutorTool.js +17 -5
  30. package/dist/esm/orderExecutorTool.js.map +1 -1
  31. package/dist/esm/perpetualDataHandler.js +1 -0
  32. package/dist/esm/perpetualDataHandler.js.map +1 -1
  33. package/dist/esm/version.d.ts +1 -1
  34. package/dist/esm/version.js +1 -1
  35. package/package.json +1 -1
  36. package/src/abi/LimitOrderBook.json +95 -0
  37. package/src/abi/LimitOrderBookFactory.json +31 -20
  38. package/src/contracts/LimitOrderBook.ts +120 -2
  39. package/src/contracts/LimitOrderBookFactory.ts +63 -40
  40. package/src/contracts/factories/LimitOrderBookFactory__factory.ts +30 -19
  41. package/src/contracts/factories/LimitOrderBook__factory.ts +95 -0
  42. package/src/nodeSDKTypes.ts +2 -0
  43. package/src/orderExecutorTool.ts +19 -8
  44. package/src/perpetualDataHandler.ts +1 -0
  45. package/src/version.ts +1 -1
@@ -20,11 +20,41 @@
20
20
  "internalType": "uint16",
21
21
  "name": "_postingFeeTbps",
22
22
  "type": "uint16"
23
+ },
24
+ {
25
+ "internalType": "uint32",
26
+ "name": "_callbackGasLimit",
27
+ "type": "uint32"
23
28
  }
24
29
  ],
25
30
  "stateMutability": "nonpayable",
26
31
  "type": "constructor"
27
32
  },
33
+ {
34
+ "anonymous": false,
35
+ "inputs": [
36
+ {
37
+ "indexed": false,
38
+ "internalType": "address",
39
+ "name": "callbackTarget",
40
+ "type": "address"
41
+ },
42
+ {
43
+ "indexed": false,
44
+ "internalType": "bool",
45
+ "name": "success",
46
+ "type": "bool"
47
+ },
48
+ {
49
+ "indexed": false,
50
+ "internalType": "uint32",
51
+ "name": "gasLimit",
52
+ "type": "uint32"
53
+ }
54
+ ],
55
+ "name": "Callback",
56
+ "type": "event"
57
+ },
28
58
  {
29
59
  "anonymous": false,
30
60
  "inputs": [
@@ -240,6 +270,38 @@
240
270
  "stateMutability": "view",
241
271
  "type": "function"
242
272
  },
273
+ {
274
+ "inputs": [
275
+ {
276
+ "internalType": "bytes32",
277
+ "name": "",
278
+ "type": "bytes32"
279
+ }
280
+ ],
281
+ "name": "callbackFunctions",
282
+ "outputs": [
283
+ {
284
+ "internalType": "address",
285
+ "name": "",
286
+ "type": "address"
287
+ }
288
+ ],
289
+ "stateMutability": "view",
290
+ "type": "function"
291
+ },
292
+ {
293
+ "inputs": [],
294
+ "name": "callbackGasLimit",
295
+ "outputs": [
296
+ {
297
+ "internalType": "uint32",
298
+ "name": "",
299
+ "type": "uint32"
300
+ }
301
+ ],
302
+ "stateMutability": "view",
303
+ "type": "function"
304
+ },
243
305
  {
244
306
  "inputs": [
245
307
  {
@@ -458,6 +520,11 @@
458
520
  "internalType": "bytes",
459
521
  "name": "brokerSignature",
460
522
  "type": "bytes"
523
+ },
524
+ {
525
+ "internalType": "address",
526
+ "name": "callbackTarget",
527
+ "type": "address"
461
528
  }
462
529
  ],
463
530
  "internalType": "struct IClientOrder.ClientOrder[]",
@@ -877,6 +944,11 @@
877
944
  "internalType": "bytes",
878
945
  "name": "brokerSignature",
879
946
  "type": "bytes"
947
+ },
948
+ {
949
+ "internalType": "address",
950
+ "name": "callbackTarget",
951
+ "type": "address"
880
952
  }
881
953
  ],
882
954
  "internalType": "struct IClientOrder.ClientOrder[]",
@@ -965,6 +1037,11 @@
965
1037
  "internalType": "bytes",
966
1038
  "name": "brokerSignature",
967
1039
  "type": "bytes"
1040
+ },
1041
+ {
1042
+ "internalType": "address",
1043
+ "name": "callbackTarget",
1044
+ "type": "address"
968
1045
  }
969
1046
  ],
970
1047
  "internalType": "struct IClientOrder.ClientOrder",
@@ -1055,6 +1132,11 @@
1055
1132
  "internalType": "bytes",
1056
1133
  "name": "brokerSignature",
1057
1134
  "type": "bytes"
1135
+ },
1136
+ {
1137
+ "internalType": "address",
1138
+ "name": "callbackTarget",
1139
+ "type": "address"
1058
1140
  }
1059
1141
  ],
1060
1142
  "internalType": "struct IClientOrder.ClientOrder[]",
@@ -1103,5 +1185,18 @@
1103
1185
  "outputs": [],
1104
1186
  "stateMutability": "nonpayable",
1105
1187
  "type": "function"
1188
+ },
1189
+ {
1190
+ "inputs": [
1191
+ {
1192
+ "internalType": "uint32",
1193
+ "name": "_gasLimit",
1194
+ "type": "uint32"
1195
+ }
1196
+ ],
1197
+ "name": "setCallbackGasLimit",
1198
+ "outputs": [],
1199
+ "stateMutability": "nonpayable",
1200
+ "type": "function"
1106
1201
  }
1107
1202
  ]
@@ -82,30 +82,23 @@
82
82
  "type": "event"
83
83
  },
84
84
  {
85
- "inputs": [],
86
- "name": "CANCEL_DELAY_SEC",
87
- "outputs": [
85
+ "anonymous": false,
86
+ "inputs": [
88
87
  {
89
- "internalType": "uint8",
90
- "name": "",
91
- "type": "uint8"
92
- }
93
- ],
94
- "stateMutability": "view",
95
- "type": "function"
96
- },
97
- {
98
- "inputs": [],
99
- "name": "POSTING_FEE_TBPS",
100
- "outputs": [
88
+ "indexed": true,
89
+ "internalType": "uint24",
90
+ "name": "perpetualId",
91
+ "type": "uint24"
92
+ },
101
93
  {
102
- "internalType": "uint16",
103
- "name": "",
104
- "type": "uint16"
94
+ "indexed": false,
95
+ "internalType": "uint32",
96
+ "name": "gasLimit",
97
+ "type": "uint32"
105
98
  }
106
99
  ],
107
- "stateMutability": "view",
108
- "type": "function"
100
+ "name": "SetCallbackGasLimit",
101
+ "type": "event"
109
102
  },
110
103
  {
111
104
  "inputs": [
@@ -219,6 +212,24 @@
219
212
  "stateMutability": "nonpayable",
220
213
  "type": "function"
221
214
  },
215
+ {
216
+ "inputs": [
217
+ {
218
+ "internalType": "uint24",
219
+ "name": "_iPerpetualId",
220
+ "type": "uint24"
221
+ },
222
+ {
223
+ "internalType": "uint32",
224
+ "name": "_gasLimit",
225
+ "type": "uint32"
226
+ }
227
+ ],
228
+ "name": "setCallbackGasLimit",
229
+ "outputs": [],
230
+ "stateMutability": "nonpayable",
231
+ "type": "function"
232
+ },
222
233
  {
223
234
  "inputs": [
224
235
  {
@@ -67,6 +67,7 @@ export declare namespace IClientOrder {
67
67
  parentChildDigest2: BytesLike;
68
68
  brokerFeeTbps: BigNumberish;
69
69
  brokerSignature: BytesLike;
70
+ callbackTarget: string;
70
71
  };
71
72
  type ClientOrderStructOutput = [
72
73
  number,
@@ -82,6 +83,7 @@ export declare namespace IClientOrder {
82
83
  string,
83
84
  string,
84
85
  number,
86
+ string,
85
87
  string
86
88
  ] & {
87
89
  iPerpetualId: number;
@@ -98,6 +100,7 @@ export declare namespace IClientOrder {
98
100
  parentChildDigest2: string;
99
101
  brokerFeeTbps: number;
100
102
  brokerSignature: string;
103
+ callbackTarget: string;
101
104
  };
102
105
  }
103
106
  export interface LimitOrderBookInterface extends utils.Interface {
@@ -106,6 +109,8 @@ export interface LimitOrderBookInterface extends utils.Interface {
106
109
  "allDigests(uint256)": FunctionFragment;
107
110
  "allLimitDigests(uint256,uint256)": FunctionFragment;
108
111
  "approvedExecutor(address)": FunctionFragment;
112
+ "callbackFunctions(bytes32)": FunctionFragment;
113
+ "callbackGasLimit()": FunctionFragment;
109
114
  "cancelOrder(bytes32,bytes,bytes[],uint64[])": FunctionFragment;
110
115
  "digestsOfTrader(address,uint256)": FunctionFragment;
111
116
  "executeOrder(bytes32,address,bytes[],uint64[])": FunctionFragment;
@@ -128,16 +133,19 @@ export interface LimitOrderBookInterface extends utils.Interface {
128
133
  "perpManager()": FunctionFragment;
129
134
  "perpetualId()": FunctionFragment;
130
135
  "pollLimitOrders(bytes32,uint256)": FunctionFragment;
131
- "postOrder((uint24,int128,uint16,uint32,uint32,uint32,address,int128,int128,bytes32,address,bytes32,uint16,bytes),bytes)": FunctionFragment;
132
- "postOrders((uint24,int128,uint16,uint32,uint32,uint32,address,int128,int128,bytes32,address,bytes32,uint16,bytes)[],bytes[])": FunctionFragment;
136
+ "postOrder((uint24,int128,uint16,uint32,uint32,uint32,address,int128,int128,bytes32,address,bytes32,uint16,bytes,address),bytes)": FunctionFragment;
137
+ "postOrders((uint24,int128,uint16,uint32,uint32,uint32,address,int128,int128,bytes32,address,bytes32,uint16,bytes,address)[],bytes[])": FunctionFragment;
133
138
  "prevOrderHash(bytes32)": FunctionFragment;
134
139
  "removeExecutor(address)": FunctionFragment;
140
+ "setCallbackGasLimit(uint32)": FunctionFragment;
135
141
  };
136
- getFunction(nameOrSignatureOrTopic: "addExecutor" | "allDigests" | "allLimitDigests" | "approvedExecutor" | "cancelOrder" | "digestsOfTrader" | "executeOrder" | "executeOrders" | "getOrderStatus" | "getOrders" | "getSignature" | "getTrader" | "lastOrderHash" | "limitDigestsOfTrader" | "marketCloseSwitchTimestamp" | "nextOrderHash" | "numberOfAllDigests" | "numberOfDigestsOfTrader" | "numberOfOrderBookDigests" | "orderCount" | "orderDependency" | "orderOfDigest" | "orderSignature" | "perpManager" | "perpetualId" | "pollLimitOrders" | "postOrder" | "postOrders" | "prevOrderHash" | "removeExecutor"): FunctionFragment;
142
+ getFunction(nameOrSignatureOrTopic: "addExecutor" | "allDigests" | "allLimitDigests" | "approvedExecutor" | "callbackFunctions" | "callbackGasLimit" | "cancelOrder" | "digestsOfTrader" | "executeOrder" | "executeOrders" | "getOrderStatus" | "getOrders" | "getSignature" | "getTrader" | "lastOrderHash" | "limitDigestsOfTrader" | "marketCloseSwitchTimestamp" | "nextOrderHash" | "numberOfAllDigests" | "numberOfDigestsOfTrader" | "numberOfOrderBookDigests" | "orderCount" | "orderDependency" | "orderOfDigest" | "orderSignature" | "perpManager" | "perpetualId" | "pollLimitOrders" | "postOrder" | "postOrders" | "prevOrderHash" | "removeExecutor" | "setCallbackGasLimit"): FunctionFragment;
137
143
  encodeFunctionData(functionFragment: "addExecutor", values: [string]): string;
138
144
  encodeFunctionData(functionFragment: "allDigests", values: [BigNumberish]): string;
139
145
  encodeFunctionData(functionFragment: "allLimitDigests", values: [BigNumberish, BigNumberish]): string;
140
146
  encodeFunctionData(functionFragment: "approvedExecutor", values: [string]): string;
147
+ encodeFunctionData(functionFragment: "callbackFunctions", values: [BytesLike]): string;
148
+ encodeFunctionData(functionFragment: "callbackGasLimit", values?: undefined): string;
141
149
  encodeFunctionData(functionFragment: "cancelOrder", values: [BytesLike, BytesLike, BytesLike[], BigNumberish[]]): string;
142
150
  encodeFunctionData(functionFragment: "digestsOfTrader", values: [string, BigNumberish]): string;
143
151
  encodeFunctionData(functionFragment: "executeOrder", values: [BytesLike, string, BytesLike[], BigNumberish[]]): string;
@@ -164,10 +172,13 @@ export interface LimitOrderBookInterface extends utils.Interface {
164
172
  encodeFunctionData(functionFragment: "postOrders", values: [IClientOrder.ClientOrderStruct[], BytesLike[]]): string;
165
173
  encodeFunctionData(functionFragment: "prevOrderHash", values: [BytesLike]): string;
166
174
  encodeFunctionData(functionFragment: "removeExecutor", values: [string]): string;
175
+ encodeFunctionData(functionFragment: "setCallbackGasLimit", values: [BigNumberish]): string;
167
176
  decodeFunctionResult(functionFragment: "addExecutor", data: BytesLike): Result;
168
177
  decodeFunctionResult(functionFragment: "allDigests", data: BytesLike): Result;
169
178
  decodeFunctionResult(functionFragment: "allLimitDigests", data: BytesLike): Result;
170
179
  decodeFunctionResult(functionFragment: "approvedExecutor", data: BytesLike): Result;
180
+ decodeFunctionResult(functionFragment: "callbackFunctions", data: BytesLike): Result;
181
+ decodeFunctionResult(functionFragment: "callbackGasLimit", data: BytesLike): Result;
171
182
  decodeFunctionResult(functionFragment: "cancelOrder", data: BytesLike): Result;
172
183
  decodeFunctionResult(functionFragment: "digestsOfTrader", data: BytesLike): Result;
173
184
  decodeFunctionResult(functionFragment: "executeOrder", data: BytesLike): Result;
@@ -194,13 +205,27 @@ export interface LimitOrderBookInterface extends utils.Interface {
194
205
  decodeFunctionResult(functionFragment: "postOrders", data: BytesLike): Result;
195
206
  decodeFunctionResult(functionFragment: "prevOrderHash", data: BytesLike): Result;
196
207
  decodeFunctionResult(functionFragment: "removeExecutor", data: BytesLike): Result;
208
+ decodeFunctionResult(functionFragment: "setCallbackGasLimit", data: BytesLike): Result;
197
209
  events: {
210
+ "Callback(address,bool,uint32)": EventFragment;
198
211
  "ExecutionFailed(uint24,address,bytes32,string)": EventFragment;
199
212
  "PerpetualLimitOrderCreated(uint24,address,address,(uint16,uint16,uint24,address,uint32,address,uint32,uint32,uint32,address,int128,int128,int128,bytes),bytes32)": EventFragment;
200
213
  };
214
+ getEvent(nameOrSignatureOrTopic: "Callback"): EventFragment;
201
215
  getEvent(nameOrSignatureOrTopic: "ExecutionFailed"): EventFragment;
202
216
  getEvent(nameOrSignatureOrTopic: "PerpetualLimitOrderCreated"): EventFragment;
203
217
  }
218
+ export interface CallbackEventObject {
219
+ callbackTarget: string;
220
+ success: boolean;
221
+ gasLimit: number;
222
+ }
223
+ export type CallbackEvent = TypedEvent<[
224
+ string,
225
+ boolean,
226
+ number
227
+ ], CallbackEventObject>;
228
+ export type CallbackEventFilter = TypedEventFilter<CallbackEvent>;
204
229
  export interface ExecutionFailedEventObject {
205
230
  perpetualId: number;
206
231
  trader: string;
@@ -250,6 +275,8 @@ export interface LimitOrderBook extends BaseContract {
250
275
  allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
251
276
  allLimitDigests(page: BigNumberish, limit: BigNumberish, overrides?: CallOverrides): Promise<[string[]]>;
252
277
  approvedExecutor(arg0: string, overrides?: CallOverrides): Promise<[boolean]>;
278
+ callbackFunctions(arg0: BytesLike, overrides?: CallOverrides): Promise<[string]>;
279
+ callbackGasLimit(overrides?: CallOverrides): Promise<[number]>;
253
280
  cancelOrder(_digest: BytesLike, _signature: BytesLike, _updateData: BytesLike[], _publishTimes: BigNumberish[], overrides?: PayableOverrides & {
254
281
  from?: string;
255
282
  }): Promise<ContractTransaction>;
@@ -338,6 +365,9 @@ export interface LimitOrderBook extends BaseContract {
338
365
  removeExecutor(_executor: string, overrides?: Overrides & {
339
366
  from?: string;
340
367
  }): Promise<ContractTransaction>;
368
+ setCallbackGasLimit(_gasLimit: BigNumberish, overrides?: Overrides & {
369
+ from?: string;
370
+ }): Promise<ContractTransaction>;
341
371
  };
342
372
  addExecutor(_executor: string, overrides?: Overrides & {
343
373
  from?: string;
@@ -345,6 +375,8 @@ export interface LimitOrderBook extends BaseContract {
345
375
  allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
346
376
  allLimitDigests(page: BigNumberish, limit: BigNumberish, overrides?: CallOverrides): Promise<string[]>;
347
377
  approvedExecutor(arg0: string, overrides?: CallOverrides): Promise<boolean>;
378
+ callbackFunctions(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
379
+ callbackGasLimit(overrides?: CallOverrides): Promise<number>;
348
380
  cancelOrder(_digest: BytesLike, _signature: BytesLike, _updateData: BytesLike[], _publishTimes: BigNumberish[], overrides?: PayableOverrides & {
349
381
  from?: string;
350
382
  }): Promise<ContractTransaction>;
@@ -425,11 +457,16 @@ export interface LimitOrderBook extends BaseContract {
425
457
  removeExecutor(_executor: string, overrides?: Overrides & {
426
458
  from?: string;
427
459
  }): Promise<ContractTransaction>;
460
+ setCallbackGasLimit(_gasLimit: BigNumberish, overrides?: Overrides & {
461
+ from?: string;
462
+ }): Promise<ContractTransaction>;
428
463
  callStatic: {
429
464
  addExecutor(_executor: string, overrides?: CallOverrides): Promise<void>;
430
465
  allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<string>;
431
466
  allLimitDigests(page: BigNumberish, limit: BigNumberish, overrides?: CallOverrides): Promise<string[]>;
432
467
  approvedExecutor(arg0: string, overrides?: CallOverrides): Promise<boolean>;
468
+ callbackFunctions(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
469
+ callbackGasLimit(overrides?: CallOverrides): Promise<number>;
433
470
  cancelOrder(_digest: BytesLike, _signature: BytesLike, _updateData: BytesLike[], _publishTimes: BigNumberish[], overrides?: CallOverrides): Promise<void>;
434
471
  digestsOfTrader(arg0: string, arg1: BigNumberish, overrides?: CallOverrides): Promise<string>;
435
472
  executeOrder(_digest: BytesLike, _executorAddr: string, _updateData: BytesLike[], _publishTimes: BigNumberish[], overrides?: CallOverrides): Promise<void>;
@@ -498,8 +535,11 @@ export interface LimitOrderBook extends BaseContract {
498
535
  postOrders(_orders: IClientOrder.ClientOrderStruct[], _signatures: BytesLike[], overrides?: CallOverrides): Promise<void>;
499
536
  prevOrderHash(arg0: BytesLike, overrides?: CallOverrides): Promise<string>;
500
537
  removeExecutor(_executor: string, overrides?: CallOverrides): Promise<void>;
538
+ setCallbackGasLimit(_gasLimit: BigNumberish, overrides?: CallOverrides): Promise<void>;
501
539
  };
502
540
  filters: {
541
+ "Callback(address,bool,uint32)"(callbackTarget?: null, success?: null, gasLimit?: null): CallbackEventFilter;
542
+ Callback(callbackTarget?: null, success?: null, gasLimit?: null): CallbackEventFilter;
503
543
  "ExecutionFailed(uint24,address,bytes32,string)"(perpetualId?: BigNumberish | null, trader?: string | null, digest?: null, reason?: null): ExecutionFailedEventFilter;
504
544
  ExecutionFailed(perpetualId?: BigNumberish | null, trader?: string | null, digest?: null, reason?: null): ExecutionFailedEventFilter;
505
545
  "PerpetualLimitOrderCreated(uint24,address,address,(uint16,uint16,uint24,address,uint32,address,uint32,uint32,uint32,address,int128,int128,int128,bytes),bytes32)"(perpetualId?: BigNumberish | null, trader?: string | null, brokerAddr?: null, order?: null, digest?: null): PerpetualLimitOrderCreatedEventFilter;
@@ -512,6 +552,8 @@ export interface LimitOrderBook extends BaseContract {
512
552
  allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
513
553
  allLimitDigests(page: BigNumberish, limit: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
514
554
  approvedExecutor(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
555
+ callbackFunctions(arg0: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
556
+ callbackGasLimit(overrides?: CallOverrides): Promise<BigNumber>;
515
557
  cancelOrder(_digest: BytesLike, _signature: BytesLike, _updateData: BytesLike[], _publishTimes: BigNumberish[], overrides?: PayableOverrides & {
516
558
  from?: string;
517
559
  }): Promise<BigNumber>;
@@ -550,6 +592,9 @@ export interface LimitOrderBook extends BaseContract {
550
592
  removeExecutor(_executor: string, overrides?: Overrides & {
551
593
  from?: string;
552
594
  }): Promise<BigNumber>;
595
+ setCallbackGasLimit(_gasLimit: BigNumberish, overrides?: Overrides & {
596
+ from?: string;
597
+ }): Promise<BigNumber>;
553
598
  };
554
599
  populateTransaction: {
555
600
  addExecutor(_executor: string, overrides?: Overrides & {
@@ -558,6 +603,8 @@ export interface LimitOrderBook extends BaseContract {
558
603
  allDigests(arg0: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
559
604
  allLimitDigests(page: BigNumberish, limit: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
560
605
  approvedExecutor(arg0: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
606
+ callbackFunctions(arg0: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
607
+ callbackGasLimit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
561
608
  cancelOrder(_digest: BytesLike, _signature: BytesLike, _updateData: BytesLike[], _publishTimes: BigNumberish[], overrides?: PayableOverrides & {
562
609
  from?: string;
563
610
  }): Promise<PopulatedTransaction>;
@@ -596,5 +643,8 @@ export interface LimitOrderBook extends BaseContract {
596
643
  removeExecutor(_executor: string, overrides?: Overrides & {
597
644
  from?: string;
598
645
  }): Promise<PopulatedTransaction>;
646
+ setCallbackGasLimit(_gasLimit: BigNumberish, overrides?: Overrides & {
647
+ from?: string;
648
+ }): Promise<PopulatedTransaction>;
599
649
  };
600
650
  }
@@ -4,8 +4,6 @@ import type { Listener, Provider } from "@ethersproject/providers";
4
4
  import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
5
5
  export interface LimitOrderBookFactoryInterface extends utils.Interface {
6
6
  functions: {
7
- "CANCEL_DELAY_SEC()": FunctionFragment;
8
- "POSTING_FEE_TBPS()": FunctionFragment;
9
7
  "addExecutor(uint24,address)": FunctionFragment;
10
8
  "deployLimitOrderBookProxy(address,uint24)": FunctionFragment;
11
9
  "getOrderBookAddress(uint24)": FunctionFragment;
@@ -13,11 +11,10 @@ export interface LimitOrderBookFactoryInterface extends utils.Interface {
13
11
  "owner()": FunctionFragment;
14
12
  "removeExecutor(uint24,address)": FunctionFragment;
15
13
  "renounceOwnership()": FunctionFragment;
14
+ "setCallbackGasLimit(uint24,uint32)": FunctionFragment;
16
15
  "transferOwnership(address)": FunctionFragment;
17
16
  };
18
- getFunction(nameOrSignatureOrTopic: "CANCEL_DELAY_SEC" | "POSTING_FEE_TBPS" | "addExecutor" | "deployLimitOrderBookProxy" | "getOrderBookAddress" | "orderBooks" | "owner" | "removeExecutor" | "renounceOwnership" | "transferOwnership"): FunctionFragment;
19
- encodeFunctionData(functionFragment: "CANCEL_DELAY_SEC", values?: undefined): string;
20
- encodeFunctionData(functionFragment: "POSTING_FEE_TBPS", values?: undefined): string;
17
+ getFunction(nameOrSignatureOrTopic: "addExecutor" | "deployLimitOrderBookProxy" | "getOrderBookAddress" | "orderBooks" | "owner" | "removeExecutor" | "renounceOwnership" | "setCallbackGasLimit" | "transferOwnership"): FunctionFragment;
21
18
  encodeFunctionData(functionFragment: "addExecutor", values: [BigNumberish, string]): string;
22
19
  encodeFunctionData(functionFragment: "deployLimitOrderBookProxy", values: [string, BigNumberish]): string;
23
20
  encodeFunctionData(functionFragment: "getOrderBookAddress", values: [BigNumberish]): string;
@@ -25,9 +22,8 @@ export interface LimitOrderBookFactoryInterface extends utils.Interface {
25
22
  encodeFunctionData(functionFragment: "owner", values?: undefined): string;
26
23
  encodeFunctionData(functionFragment: "removeExecutor", values: [BigNumberish, string]): string;
27
24
  encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string;
25
+ encodeFunctionData(functionFragment: "setCallbackGasLimit", values: [BigNumberish, BigNumberish]): string;
28
26
  encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string;
29
- decodeFunctionResult(functionFragment: "CANCEL_DELAY_SEC", data: BytesLike): Result;
30
- decodeFunctionResult(functionFragment: "POSTING_FEE_TBPS", data: BytesLike): Result;
31
27
  decodeFunctionResult(functionFragment: "addExecutor", data: BytesLike): Result;
32
28
  decodeFunctionResult(functionFragment: "deployLimitOrderBookProxy", data: BytesLike): Result;
33
29
  decodeFunctionResult(functionFragment: "getOrderBookAddress", data: BytesLike): Result;
@@ -35,17 +31,20 @@ export interface LimitOrderBookFactoryInterface extends utils.Interface {
35
31
  decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
36
32
  decodeFunctionResult(functionFragment: "removeExecutor", data: BytesLike): Result;
37
33
  decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result;
34
+ decodeFunctionResult(functionFragment: "setCallbackGasLimit", data: BytesLike): Result;
38
35
  decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result;
39
36
  events: {
40
37
  "AddExecutor(uint24,address)": EventFragment;
41
38
  "OwnershipTransferred(address,address)": EventFragment;
42
39
  "PerpetualLimitOrderBookDeployed(uint24,address,address)": EventFragment;
43
40
  "RemoveExecutor(uint24,address)": EventFragment;
41
+ "SetCallbackGasLimit(uint24,uint32)": EventFragment;
44
42
  };
45
43
  getEvent(nameOrSignatureOrTopic: "AddExecutor"): EventFragment;
46
44
  getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment;
47
45
  getEvent(nameOrSignatureOrTopic: "PerpetualLimitOrderBookDeployed"): EventFragment;
48
46
  getEvent(nameOrSignatureOrTopic: "RemoveExecutor"): EventFragment;
47
+ getEvent(nameOrSignatureOrTopic: "SetCallbackGasLimit"): EventFragment;
49
48
  }
50
49
  export interface AddExecutorEventObject {
51
50
  perpetualId: number;
@@ -85,6 +84,15 @@ export type RemoveExecutorEvent = TypedEvent<[
85
84
  string
86
85
  ], RemoveExecutorEventObject>;
87
86
  export type RemoveExecutorEventFilter = TypedEventFilter<RemoveExecutorEvent>;
87
+ export interface SetCallbackGasLimitEventObject {
88
+ perpetualId: number;
89
+ gasLimit: number;
90
+ }
91
+ export type SetCallbackGasLimitEvent = TypedEvent<[
92
+ number,
93
+ number
94
+ ], SetCallbackGasLimitEventObject>;
95
+ export type SetCallbackGasLimitEventFilter = TypedEventFilter<SetCallbackGasLimitEvent>;
88
96
  export interface LimitOrderBookFactory extends BaseContract {
89
97
  connect(signerOrProvider: Signer | Provider | string): this;
90
98
  attach(addressOrName: string): this;
@@ -100,8 +108,6 @@ export interface LimitOrderBookFactory extends BaseContract {
100
108
  once: OnEvent<this>;
101
109
  removeListener: OnEvent<this>;
102
110
  functions: {
103
- CANCEL_DELAY_SEC(overrides?: CallOverrides): Promise<[number]>;
104
- POSTING_FEE_TBPS(overrides?: CallOverrides): Promise<[number]>;
105
111
  addExecutor(_iPerpetualId: BigNumberish, _executor: string, overrides?: Overrides & {
106
112
  from?: string;
107
113
  }): Promise<ContractTransaction>;
@@ -117,12 +123,13 @@ export interface LimitOrderBookFactory extends BaseContract {
117
123
  renounceOwnership(overrides?: Overrides & {
118
124
  from?: string;
119
125
  }): Promise<ContractTransaction>;
126
+ setCallbackGasLimit(_iPerpetualId: BigNumberish, _gasLimit: BigNumberish, overrides?: Overrides & {
127
+ from?: string;
128
+ }): Promise<ContractTransaction>;
120
129
  transferOwnership(newOwner: string, overrides?: Overrides & {
121
130
  from?: string;
122
131
  }): Promise<ContractTransaction>;
123
132
  };
124
- CANCEL_DELAY_SEC(overrides?: CallOverrides): Promise<number>;
125
- POSTING_FEE_TBPS(overrides?: CallOverrides): Promise<number>;
126
133
  addExecutor(_iPerpetualId: BigNumberish, _executor: string, overrides?: Overrides & {
127
134
  from?: string;
128
135
  }): Promise<ContractTransaction>;
@@ -138,12 +145,13 @@ export interface LimitOrderBookFactory extends BaseContract {
138
145
  renounceOwnership(overrides?: Overrides & {
139
146
  from?: string;
140
147
  }): Promise<ContractTransaction>;
148
+ setCallbackGasLimit(_iPerpetualId: BigNumberish, _gasLimit: BigNumberish, overrides?: Overrides & {
149
+ from?: string;
150
+ }): Promise<ContractTransaction>;
141
151
  transferOwnership(newOwner: string, overrides?: Overrides & {
142
152
  from?: string;
143
153
  }): Promise<ContractTransaction>;
144
154
  callStatic: {
145
- CANCEL_DELAY_SEC(overrides?: CallOverrides): Promise<number>;
146
- POSTING_FEE_TBPS(overrides?: CallOverrides): Promise<number>;
147
155
  addExecutor(_iPerpetualId: BigNumberish, _executor: string, overrides?: CallOverrides): Promise<void>;
148
156
  deployLimitOrderBookProxy(_perpetualManagerAddr: string, _perpetualId: BigNumberish, overrides?: CallOverrides): Promise<void>;
149
157
  getOrderBookAddress(_iPerpetualId: BigNumberish, overrides?: CallOverrides): Promise<string>;
@@ -151,6 +159,7 @@ export interface LimitOrderBookFactory extends BaseContract {
151
159
  owner(overrides?: CallOverrides): Promise<string>;
152
160
  removeExecutor(_iPerpetualId: BigNumberish, _executor: string, overrides?: CallOverrides): Promise<void>;
153
161
  renounceOwnership(overrides?: CallOverrides): Promise<void>;
162
+ setCallbackGasLimit(_iPerpetualId: BigNumberish, _gasLimit: BigNumberish, overrides?: CallOverrides): Promise<void>;
154
163
  transferOwnership(newOwner: string, overrides?: CallOverrides): Promise<void>;
155
164
  };
156
165
  filters: {
@@ -162,10 +171,10 @@ export interface LimitOrderBookFactory extends BaseContract {
162
171
  PerpetualLimitOrderBookDeployed(perpetualId?: BigNumberish | null, perpManagerAddress?: null, limitOrderBookAddress?: null): PerpetualLimitOrderBookDeployedEventFilter;
163
172
  "RemoveExecutor(uint24,address)"(perpetualId?: BigNumberish | null, executor?: null): RemoveExecutorEventFilter;
164
173
  RemoveExecutor(perpetualId?: BigNumberish | null, executor?: null): RemoveExecutorEventFilter;
174
+ "SetCallbackGasLimit(uint24,uint32)"(perpetualId?: BigNumberish | null, gasLimit?: null): SetCallbackGasLimitEventFilter;
175
+ SetCallbackGasLimit(perpetualId?: BigNumberish | null, gasLimit?: null): SetCallbackGasLimitEventFilter;
165
176
  };
166
177
  estimateGas: {
167
- CANCEL_DELAY_SEC(overrides?: CallOverrides): Promise<BigNumber>;
168
- POSTING_FEE_TBPS(overrides?: CallOverrides): Promise<BigNumber>;
169
178
  addExecutor(_iPerpetualId: BigNumberish, _executor: string, overrides?: Overrides & {
170
179
  from?: string;
171
180
  }): Promise<BigNumber>;
@@ -181,13 +190,14 @@ export interface LimitOrderBookFactory extends BaseContract {
181
190
  renounceOwnership(overrides?: Overrides & {
182
191
  from?: string;
183
192
  }): Promise<BigNumber>;
193
+ setCallbackGasLimit(_iPerpetualId: BigNumberish, _gasLimit: BigNumberish, overrides?: Overrides & {
194
+ from?: string;
195
+ }): Promise<BigNumber>;
184
196
  transferOwnership(newOwner: string, overrides?: Overrides & {
185
197
  from?: string;
186
198
  }): Promise<BigNumber>;
187
199
  };
188
200
  populateTransaction: {
189
- CANCEL_DELAY_SEC(overrides?: CallOverrides): Promise<PopulatedTransaction>;
190
- POSTING_FEE_TBPS(overrides?: CallOverrides): Promise<PopulatedTransaction>;
191
201
  addExecutor(_iPerpetualId: BigNumberish, _executor: string, overrides?: Overrides & {
192
202
  from?: string;
193
203
  }): Promise<PopulatedTransaction>;
@@ -203,6 +213,9 @@ export interface LimitOrderBookFactory extends BaseContract {
203
213
  renounceOwnership(overrides?: Overrides & {
204
214
  from?: string;
205
215
  }): Promise<PopulatedTransaction>;
216
+ setCallbackGasLimit(_iPerpetualId: BigNumberish, _gasLimit: BigNumberish, overrides?: Overrides & {
217
+ from?: string;
218
+ }): Promise<PopulatedTransaction>;
206
219
  transferOwnership(newOwner: string, overrides?: Overrides & {
207
220
  from?: string;
208
221
  }): Promise<PopulatedTransaction>;
@@ -68,25 +68,20 @@ export declare class LimitOrderBookFactory__factory {
68
68
  readonly name: "RemoveExecutor";
69
69
  readonly type: "event";
70
70
  }, {
71
- readonly inputs: readonly [];
72
- readonly name: "CANCEL_DELAY_SEC";
73
- readonly outputs: readonly [{
74
- readonly internalType: "uint8";
75
- readonly name: "";
76
- readonly type: "uint8";
77
- }];
78
- readonly stateMutability: "view";
79
- readonly type: "function";
80
- }, {
81
- readonly inputs: readonly [];
82
- readonly name: "POSTING_FEE_TBPS";
83
- readonly outputs: readonly [{
84
- readonly internalType: "uint16";
85
- readonly name: "";
86
- readonly type: "uint16";
71
+ readonly anonymous: false;
72
+ readonly inputs: readonly [{
73
+ readonly indexed: true;
74
+ readonly internalType: "uint24";
75
+ readonly name: "perpetualId";
76
+ readonly type: "uint24";
77
+ }, {
78
+ readonly indexed: false;
79
+ readonly internalType: "uint32";
80
+ readonly name: "gasLimit";
81
+ readonly type: "uint32";
87
82
  }];
88
- readonly stateMutability: "view";
89
- readonly type: "function";
83
+ readonly name: "SetCallbackGasLimit";
84
+ readonly type: "event";
90
85
  }, {
91
86
  readonly inputs: readonly [{
92
87
  readonly internalType: "uint24";
@@ -173,6 +168,20 @@ export declare class LimitOrderBookFactory__factory {
173
168
  readonly outputs: readonly [];
174
169
  readonly stateMutability: "nonpayable";
175
170
  readonly type: "function";
171
+ }, {
172
+ readonly inputs: readonly [{
173
+ readonly internalType: "uint24";
174
+ readonly name: "_iPerpetualId";
175
+ readonly type: "uint24";
176
+ }, {
177
+ readonly internalType: "uint32";
178
+ readonly name: "_gasLimit";
179
+ readonly type: "uint32";
180
+ }];
181
+ readonly name: "setCallbackGasLimit";
182
+ readonly outputs: readonly [];
183
+ readonly stateMutability: "nonpayable";
184
+ readonly type: "function";
176
185
  }, {
177
186
  readonly inputs: readonly [{
178
187
  readonly internalType: "address";