@nadohq/trigger-client 0.1.0-alpha.7 → 0.1.0-alpha.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/TriggerClient.cjs +17 -0
- package/dist/TriggerClient.cjs.map +1 -1
- package/dist/TriggerClient.d.cts +2 -1
- package/dist/TriggerClient.d.ts +2 -1
- package/dist/TriggerClient.js +22 -1
- package/dist/TriggerClient.js.map +1 -1
- package/dist/dataMappers.cjs +53 -7
- package/dist/dataMappers.cjs.map +1 -1
- package/dist/dataMappers.d.cts +4 -3
- package/dist/dataMappers.d.ts +4 -3
- package/dist/dataMappers.js +51 -6
- package/dist/dataMappers.js.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/types/clientModelTypes.cjs.map +1 -1
- package/dist/types/clientModelTypes.d.cts +14 -2
- package/dist/types/clientModelTypes.d.ts +14 -2
- package/dist/types/clientTypes.cjs.map +1 -1
- package/dist/types/clientTypes.d.cts +27 -2
- package/dist/types/clientTypes.d.ts +27 -2
- package/dist/types/index.d.cts +2 -2
- package/dist/types/index.d.ts +2 -2
- package/dist/types/serverQueryTypes.cjs.map +1 -1
- package/dist/types/serverQueryTypes.d.cts +40 -5
- package/dist/types/serverQueryTypes.d.ts +40 -5
- package/package.json +4 -4
- package/src/TriggerClient.ts +32 -1
- package/src/dataMappers.ts +54 -5
- package/src/types/clientModelTypes.ts +19 -3
- package/src/types/clientTypes.ts +37 -1
- package/src/types/serverQueryTypes.ts +58 -7
|
@@ -40,8 +40,6 @@ type TriggerCriteria = {
|
|
|
40
40
|
};
|
|
41
41
|
type TriggerCriteriaType = TriggerCriteria['type'];
|
|
42
42
|
type TriggerOrderStatus = {
|
|
43
|
-
type: 'pending';
|
|
44
|
-
} | {
|
|
45
43
|
type: 'cancelled';
|
|
46
44
|
reason: string;
|
|
47
45
|
} | {
|
|
@@ -50,6 +48,20 @@ type TriggerOrderStatus = {
|
|
|
50
48
|
} | {
|
|
51
49
|
type: 'internal_error';
|
|
52
50
|
error: string;
|
|
51
|
+
} | {
|
|
52
|
+
type: 'triggering';
|
|
53
|
+
} | {
|
|
54
|
+
type: 'waiting_price';
|
|
55
|
+
} | {
|
|
56
|
+
type: 'waiting_dependency';
|
|
57
|
+
} | {
|
|
58
|
+
type: 'twap_executing';
|
|
59
|
+
currentExecution: number;
|
|
60
|
+
totalExecutions: number;
|
|
61
|
+
} | {
|
|
62
|
+
type: 'twap_completed';
|
|
63
|
+
executed: number;
|
|
64
|
+
total: number;
|
|
53
65
|
};
|
|
54
66
|
|
|
55
67
|
export type { PriceTriggerCriteria, PriceTriggerDependency, PriceTriggerRequirementType, TimeTriggerCriteria, TriggerCriteria, TriggerCriteriaType, TriggerOrderStatus };
|
|
@@ -40,8 +40,6 @@ type TriggerCriteria = {
|
|
|
40
40
|
};
|
|
41
41
|
type TriggerCriteriaType = TriggerCriteria['type'];
|
|
42
42
|
type TriggerOrderStatus = {
|
|
43
|
-
type: 'pending';
|
|
44
|
-
} | {
|
|
45
43
|
type: 'cancelled';
|
|
46
44
|
reason: string;
|
|
47
45
|
} | {
|
|
@@ -50,6 +48,20 @@ type TriggerOrderStatus = {
|
|
|
50
48
|
} | {
|
|
51
49
|
type: 'internal_error';
|
|
52
50
|
error: string;
|
|
51
|
+
} | {
|
|
52
|
+
type: 'triggering';
|
|
53
|
+
} | {
|
|
54
|
+
type: 'waiting_price';
|
|
55
|
+
} | {
|
|
56
|
+
type: 'waiting_dependency';
|
|
57
|
+
} | {
|
|
58
|
+
type: 'twap_executing';
|
|
59
|
+
currentExecution: number;
|
|
60
|
+
totalExecutions: number;
|
|
61
|
+
} | {
|
|
62
|
+
type: 'twap_completed';
|
|
63
|
+
executed: number;
|
|
64
|
+
total: number;
|
|
53
65
|
};
|
|
54
66
|
|
|
55
67
|
export type { PriceTriggerCriteria, PriceTriggerDependency, PriceTriggerRequirementType, TimeTriggerCriteria, TriggerCriteria, TriggerCriteriaType, TriggerOrderStatus };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/clientTypes.ts"],"sourcesContent":["import {\n EIP712CancelOrdersParams,\n EIP712CancelProductOrdersParams,\n OrderAppendix,\n Subaccount,\n} from '@nadohq/shared';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/types/clientTypes.ts"],"sourcesContent":["import {\n EIP712CancelOrdersParams,\n EIP712CancelProductOrdersParams,\n OrderAppendix,\n Subaccount,\n} from '@nadohq/shared';\nimport {\n EngineOrderParams,\n EngineServerExecuteResult,\n} from '@nadohq/engine-client';\nimport { BigDecimal } from '@nadohq/shared';\nimport { TriggerCriteria, TriggerOrderStatus } from './clientModelTypes';\nimport {\n TriggerServerOrder,\n TriggerServerTriggerTypeFilter,\n} from './serverQueryTypes';\n\ntype WithOptionalNonce<T> = Omit<T, 'nonce'> & { nonce?: string };\n\ninterface SignatureParams {\n /**\n * Address derived from productId for placement (see getOrderVerifyingAddr)\n * endpoint address for cancellation & listing\n */\n verifyingAddr: string;\n chainId: number;\n}\n\n/**\n * Executes\n */\n\nexport interface TriggerPlaceOrderParams extends SignatureParams {\n id?: number;\n productId: number;\n order: EngineOrderParams;\n triggerCriteria: TriggerCriteria;\n // If not given, engine defaults to true (leverage/borrow enabled)\n spotLeverage?: boolean;\n // For isolated orders, this specifies whether margin can be borrowed (i.e. whether the cross account can have a negative USDC balance)\n borrowMargin?: boolean;\n digest?: string;\n nonce?: string;\n}\n\nexport type TriggerCancelOrdersParams = SignatureParams &\n WithOptionalNonce<EIP712CancelOrdersParams>;\n\nexport type TriggerCancelProductOrdersParams = SignatureParams &\n WithOptionalNonce<EIP712CancelProductOrdersParams>;\n\n/**\n * Queries\n */\n\nexport interface TriggerListOrdersParams extends Subaccount, SignatureParams {\n // In millis, defaults to 90s in the future\n recvTime?: BigDecimal;\n // If not given, defaults to all products\n productId?: number;\n // Pending trigger orders only, ignores cancelled & triggered orders\n pending: boolean;\n // In seconds\n maxUpdateTimeInclusive?: number;\n // When provided, the associated trigger orders are returned regardless of other filters\n digests?: string[];\n limit?: number;\n // Filter by trigger types\n triggerTypes?: TriggerServerTriggerTypeFilter[];\n // Filter by reduce-only orders\n reduceOnly?: boolean;\n}\n\nexport interface TriggerOrder {\n productId: number;\n triggerCriteria: TriggerCriteria;\n price: BigDecimal;\n amount: BigDecimal;\n expiration: number;\n nonce: string;\n digest: string;\n appendix: OrderAppendix;\n}\n\nexport interface TriggerOrderInfo {\n order: TriggerOrder;\n serverOrder: TriggerServerOrder;\n status: TriggerOrderStatus;\n updatedAt: number;\n}\n\nexport interface TriggerListOrdersResponse {\n orders: TriggerOrderInfo[];\n}\n\nexport interface TriggerListTwapExecutionsParams {\n digest: string;\n}\n\nexport type TwapExecutionStatus =\n | {\n type: 'pending';\n }\n | {\n type: 'executed';\n executedTime: number;\n executeResponse: EngineServerExecuteResult;\n }\n | {\n type: 'failed';\n error: string;\n }\n | {\n type: 'cancelled';\n reason: string;\n };\n\nexport interface TwapExecutionInfo {\n executionId: number;\n scheduledTime: number;\n status: TwapExecutionStatus;\n updatedAt: number;\n}\n\nexport interface TriggerListTwapExecutionsResponse {\n executions: TwapExecutionInfo[];\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EIP712CancelOrdersParams, EIP712CancelProductOrdersParams, Subaccount, BigDecimal, OrderAppendix } from '@nadohq/shared';
|
|
2
|
-
import { EngineOrderParams } from '@nadohq/engine-client';
|
|
2
|
+
import { EngineOrderParams, EngineServerExecuteResult } from '@nadohq/engine-client';
|
|
3
3
|
import { TriggerCriteria, TriggerOrderStatus } from './clientModelTypes.cjs';
|
|
4
4
|
import { TriggerServerTriggerTypeFilter, TriggerServerOrder } from './serverQueryTypes.cjs';
|
|
5
5
|
import './serverExecuteTypes.cjs';
|
|
@@ -63,5 +63,30 @@ interface TriggerOrderInfo {
|
|
|
63
63
|
interface TriggerListOrdersResponse {
|
|
64
64
|
orders: TriggerOrderInfo[];
|
|
65
65
|
}
|
|
66
|
+
interface TriggerListTwapExecutionsParams {
|
|
67
|
+
digest: string;
|
|
68
|
+
}
|
|
69
|
+
type TwapExecutionStatus = {
|
|
70
|
+
type: 'pending';
|
|
71
|
+
} | {
|
|
72
|
+
type: 'executed';
|
|
73
|
+
executedTime: number;
|
|
74
|
+
executeResponse: EngineServerExecuteResult;
|
|
75
|
+
} | {
|
|
76
|
+
type: 'failed';
|
|
77
|
+
error: string;
|
|
78
|
+
} | {
|
|
79
|
+
type: 'cancelled';
|
|
80
|
+
reason: string;
|
|
81
|
+
};
|
|
82
|
+
interface TwapExecutionInfo {
|
|
83
|
+
executionId: number;
|
|
84
|
+
scheduledTime: number;
|
|
85
|
+
status: TwapExecutionStatus;
|
|
86
|
+
updatedAt: number;
|
|
87
|
+
}
|
|
88
|
+
interface TriggerListTwapExecutionsResponse {
|
|
89
|
+
executions: TwapExecutionInfo[];
|
|
90
|
+
}
|
|
66
91
|
|
|
67
|
-
export type { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams };
|
|
92
|
+
export type { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerListTwapExecutionsParams, TriggerListTwapExecutionsResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams, TwapExecutionInfo, TwapExecutionStatus };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EIP712CancelOrdersParams, EIP712CancelProductOrdersParams, Subaccount, BigDecimal, OrderAppendix } from '@nadohq/shared';
|
|
2
|
-
import { EngineOrderParams } from '@nadohq/engine-client';
|
|
2
|
+
import { EngineOrderParams, EngineServerExecuteResult } from '@nadohq/engine-client';
|
|
3
3
|
import { TriggerCriteria, TriggerOrderStatus } from './clientModelTypes.js';
|
|
4
4
|
import { TriggerServerTriggerTypeFilter, TriggerServerOrder } from './serverQueryTypes.js';
|
|
5
5
|
import './serverExecuteTypes.js';
|
|
@@ -63,5 +63,30 @@ interface TriggerOrderInfo {
|
|
|
63
63
|
interface TriggerListOrdersResponse {
|
|
64
64
|
orders: TriggerOrderInfo[];
|
|
65
65
|
}
|
|
66
|
+
interface TriggerListTwapExecutionsParams {
|
|
67
|
+
digest: string;
|
|
68
|
+
}
|
|
69
|
+
type TwapExecutionStatus = {
|
|
70
|
+
type: 'pending';
|
|
71
|
+
} | {
|
|
72
|
+
type: 'executed';
|
|
73
|
+
executedTime: number;
|
|
74
|
+
executeResponse: EngineServerExecuteResult;
|
|
75
|
+
} | {
|
|
76
|
+
type: 'failed';
|
|
77
|
+
error: string;
|
|
78
|
+
} | {
|
|
79
|
+
type: 'cancelled';
|
|
80
|
+
reason: string;
|
|
81
|
+
};
|
|
82
|
+
interface TwapExecutionInfo {
|
|
83
|
+
executionId: number;
|
|
84
|
+
scheduledTime: number;
|
|
85
|
+
status: TwapExecutionStatus;
|
|
86
|
+
updatedAt: number;
|
|
87
|
+
}
|
|
88
|
+
interface TriggerListTwapExecutionsResponse {
|
|
89
|
+
executions: TwapExecutionInfo[];
|
|
90
|
+
}
|
|
66
91
|
|
|
67
|
-
export type { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams };
|
|
92
|
+
export type { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerListTwapExecutionsParams, TriggerListTwapExecutionsResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams, TwapExecutionInfo, TwapExecutionStatus };
|
package/dist/types/index.d.cts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { PriceTriggerCriteria, PriceTriggerDependency, PriceTriggerRequirementType, TimeTriggerCriteria, TriggerCriteria, TriggerCriteriaType, TriggerOrderStatus } from './clientModelTypes.cjs';
|
|
2
|
-
export { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams } from './clientTypes.cjs';
|
|
2
|
+
export { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerListTwapExecutionsParams, TriggerListTwapExecutionsResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams, TwapExecutionInfo, TwapExecutionStatus } from './clientTypes.cjs';
|
|
3
3
|
export { TriggerServerDependency, TriggerServerPriceRequirement, TriggerServerPriceTriggerCriteria, TriggerServerTimeTriggerCriteria, TriggerServerTriggerCriteria } from './serverModelTypes.cjs';
|
|
4
4
|
export { TriggerServerCancelOrdersParams, TriggerServerCancelProductOrdersParams, TriggerServerExecuteRequestByType, TriggerServerExecuteRequestType, TriggerServerExecuteResult, TriggerServerExecuteSuccessResult, TriggerServerPlaceOrderParams } from './serverExecuteTypes.cjs';
|
|
5
|
-
export { TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter } from './serverQueryTypes.cjs';
|
|
5
|
+
export { TriggerServerCancelReason, TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerListTwapExecutionsParams, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter, TriggerServerTwapExecutionInfo, TriggerServerTwapExecutionStatus, TriggerServerTwapExecutionsResponse } from './serverQueryTypes.cjs';
|
|
6
6
|
export { TriggerServerFailureError } from './TriggerServerFailureError.cjs';
|
|
7
7
|
import '@nadohq/engine-client';
|
|
8
8
|
import '@nadohq/shared';
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { PriceTriggerCriteria, PriceTriggerDependency, PriceTriggerRequirementType, TimeTriggerCriteria, TriggerCriteria, TriggerCriteriaType, TriggerOrderStatus } from './clientModelTypes.js';
|
|
2
|
-
export { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams } from './clientTypes.js';
|
|
2
|
+
export { TriggerCancelOrdersParams, TriggerCancelProductOrdersParams, TriggerListOrdersParams, TriggerListOrdersResponse, TriggerListTwapExecutionsParams, TriggerListTwapExecutionsResponse, TriggerOrder, TriggerOrderInfo, TriggerPlaceOrderParams, TwapExecutionInfo, TwapExecutionStatus } from './clientTypes.js';
|
|
3
3
|
export { TriggerServerDependency, TriggerServerPriceRequirement, TriggerServerPriceTriggerCriteria, TriggerServerTimeTriggerCriteria, TriggerServerTriggerCriteria } from './serverModelTypes.js';
|
|
4
4
|
export { TriggerServerCancelOrdersParams, TriggerServerCancelProductOrdersParams, TriggerServerExecuteRequestByType, TriggerServerExecuteRequestType, TriggerServerExecuteResult, TriggerServerExecuteSuccessResult, TriggerServerPlaceOrderParams } from './serverExecuteTypes.js';
|
|
5
|
-
export { TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter } from './serverQueryTypes.js';
|
|
5
|
+
export { TriggerServerCancelReason, TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerListTwapExecutionsParams, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter, TriggerServerTwapExecutionInfo, TriggerServerTwapExecutionStatus, TriggerServerTwapExecutionsResponse } from './serverQueryTypes.js';
|
|
6
6
|
export { TriggerServerFailureError } from './TriggerServerFailureError.js';
|
|
7
7
|
import '@nadohq/engine-client';
|
|
8
8
|
import '@nadohq/shared';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/serverQueryTypes.ts"],"sourcesContent":["import { EIP712ListTriggerOrdersValues, SignedTx } from '@nadohq/shared';\nimport { EngineServerExecuteResult } from '@nadohq/engine-client';\nimport { TriggerServerPlaceOrderParams } from './serverExecuteTypes';\n\nexport type TriggerServerOrderStatus =\n |
|
|
1
|
+
{"version":3,"sources":["../../src/types/serverQueryTypes.ts"],"sourcesContent":["import { EIP712ListTriggerOrdersValues, SignedTx } from '@nadohq/shared';\nimport { EngineServerExecuteResult } from '@nadohq/engine-client';\nimport { TriggerServerPlaceOrderParams } from './serverExecuteTypes';\n\nexport type TriggerServerOrderStatus =\n | {\n cancelled: TriggerServerCancelReason;\n }\n | {\n triggered: EngineServerExecuteResult;\n }\n | {\n internal_error: string;\n }\n | 'triggering'\n | 'waiting_price'\n | 'waiting_dependency'\n | {\n twap_executing: {\n current_execution: number;\n total_executions: number;\n };\n }\n | {\n twap_completed: {\n executed: number;\n total: number;\n };\n };\n\n/**\n * Request types\n */\n\nexport type TriggerServerTriggerTypeFilter = 'price_trigger' | 'time_trigger';\n\nexport interface TriggerServerListTriggerOrdersParams\n extends SignedTx<EIP712ListTriggerOrdersValues> {\n pending: boolean;\n // If not given, defaults to all products\n product_id?: number;\n max_update_time?: number;\n digests?: string[];\n limit?: number;\n trigger_types?: TriggerServerTriggerTypeFilter[];\n reduce_only?: boolean;\n}\n\nexport interface TriggerServerListTwapExecutionsParams {\n digest: string;\n}\n\nexport interface TriggerServerQueryRequestByType {\n list_trigger_orders: TriggerServerListTriggerOrdersParams;\n list_twap_executions: TriggerServerListTwapExecutionsParams;\n}\n\nexport type TriggerServerQueryRequestType =\n keyof TriggerServerQueryRequestByType;\n\n/**\n * Response types\n */\n\nexport type TriggerServerOrder = TriggerServerPlaceOrderParams & {\n // Digest is always populated here\n digest: string;\n};\n\nexport interface TriggerServerOrderInfo {\n order: TriggerServerOrder;\n status: TriggerServerOrderStatus;\n updated_at: number;\n}\n\nexport interface TriggerServerListTriggerOrdersResponse {\n orders: TriggerServerOrderInfo[];\n}\n\nexport type TriggerServerCancelReason =\n | 'user_requested'\n | 'linked_signer_changed'\n | 'expired'\n | 'account_health'\n | 'isolated_subaccount_closed'\n | 'dependent_order_cancelled';\n\nexport type TriggerServerTwapExecutionStatus =\n | 'pending'\n | {\n executed: {\n executed_time: number;\n execute_response: EngineServerExecuteResult;\n };\n }\n | {\n failed: string;\n }\n | {\n cancelled: TriggerServerCancelReason;\n };\n\nexport interface TriggerServerTwapExecutionInfo {\n execution_id: number;\n scheduled_time: number;\n status: TriggerServerTwapExecutionStatus;\n updated_at: number;\n}\n\nexport interface TriggerServerTwapExecutionsResponse {\n executions: TriggerServerTwapExecutionInfo[];\n}\n\nexport interface TriggerServerQueryResponseByType {\n list_trigger_orders: TriggerServerListTriggerOrdersResponse;\n list_twap_executions: TriggerServerTwapExecutionsResponse;\n}\n\nexport interface TriggerServerQuerySuccessResponse<\n TQueryType extends\n keyof TriggerServerQueryResponseByType = TriggerServerQueryRequestType,\n> {\n status: 'success';\n data: TriggerServerQueryResponseByType[TQueryType];\n}\n\nexport interface TriggerServerQueryFailureResponse {\n status: 'failure';\n error: string;\n error_code: number;\n}\n\nexport type TriggerServerQueryResponse<\n TQueryType extends\n keyof TriggerServerQueryResponseByType = TriggerServerQueryRequestType,\n> =\n | TriggerServerQuerySuccessResponse<TQueryType>\n | TriggerServerQueryFailureResponse;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
|
@@ -3,17 +3,27 @@ import { EngineServerExecuteResult } from '@nadohq/engine-client';
|
|
|
3
3
|
import { TriggerServerPlaceOrderParams } from './serverExecuteTypes.cjs';
|
|
4
4
|
import './serverModelTypes.cjs';
|
|
5
5
|
|
|
6
|
-
type TriggerServerOrderStatus =
|
|
7
|
-
|
|
6
|
+
type TriggerServerOrderStatus = {
|
|
7
|
+
cancelled: TriggerServerCancelReason;
|
|
8
8
|
} | {
|
|
9
|
-
|
|
9
|
+
triggered: EngineServerExecuteResult;
|
|
10
10
|
} | {
|
|
11
11
|
internal_error: string;
|
|
12
|
+
} | 'triggering' | 'waiting_price' | 'waiting_dependency' | {
|
|
13
|
+
twap_executing: {
|
|
14
|
+
current_execution: number;
|
|
15
|
+
total_executions: number;
|
|
16
|
+
};
|
|
17
|
+
} | {
|
|
18
|
+
twap_completed: {
|
|
19
|
+
executed: number;
|
|
20
|
+
total: number;
|
|
21
|
+
};
|
|
12
22
|
};
|
|
13
23
|
/**
|
|
14
24
|
* Request types
|
|
15
25
|
*/
|
|
16
|
-
type TriggerServerTriggerTypeFilter = 'price_trigger' | '
|
|
26
|
+
type TriggerServerTriggerTypeFilter = 'price_trigger' | 'time_trigger';
|
|
17
27
|
interface TriggerServerListTriggerOrdersParams extends SignedTx<EIP712ListTriggerOrdersValues> {
|
|
18
28
|
pending: boolean;
|
|
19
29
|
product_id?: number;
|
|
@@ -23,8 +33,12 @@ interface TriggerServerListTriggerOrdersParams extends SignedTx<EIP712ListTrigge
|
|
|
23
33
|
trigger_types?: TriggerServerTriggerTypeFilter[];
|
|
24
34
|
reduce_only?: boolean;
|
|
25
35
|
}
|
|
36
|
+
interface TriggerServerListTwapExecutionsParams {
|
|
37
|
+
digest: string;
|
|
38
|
+
}
|
|
26
39
|
interface TriggerServerQueryRequestByType {
|
|
27
40
|
list_trigger_orders: TriggerServerListTriggerOrdersParams;
|
|
41
|
+
list_twap_executions: TriggerServerListTwapExecutionsParams;
|
|
28
42
|
}
|
|
29
43
|
type TriggerServerQueryRequestType = keyof TriggerServerQueryRequestByType;
|
|
30
44
|
/**
|
|
@@ -41,8 +55,29 @@ interface TriggerServerOrderInfo {
|
|
|
41
55
|
interface TriggerServerListTriggerOrdersResponse {
|
|
42
56
|
orders: TriggerServerOrderInfo[];
|
|
43
57
|
}
|
|
58
|
+
type TriggerServerCancelReason = 'user_requested' | 'linked_signer_changed' | 'expired' | 'account_health' | 'isolated_subaccount_closed' | 'dependent_order_cancelled';
|
|
59
|
+
type TriggerServerTwapExecutionStatus = 'pending' | {
|
|
60
|
+
executed: {
|
|
61
|
+
executed_time: number;
|
|
62
|
+
execute_response: EngineServerExecuteResult;
|
|
63
|
+
};
|
|
64
|
+
} | {
|
|
65
|
+
failed: string;
|
|
66
|
+
} | {
|
|
67
|
+
cancelled: TriggerServerCancelReason;
|
|
68
|
+
};
|
|
69
|
+
interface TriggerServerTwapExecutionInfo {
|
|
70
|
+
execution_id: number;
|
|
71
|
+
scheduled_time: number;
|
|
72
|
+
status: TriggerServerTwapExecutionStatus;
|
|
73
|
+
updated_at: number;
|
|
74
|
+
}
|
|
75
|
+
interface TriggerServerTwapExecutionsResponse {
|
|
76
|
+
executions: TriggerServerTwapExecutionInfo[];
|
|
77
|
+
}
|
|
44
78
|
interface TriggerServerQueryResponseByType {
|
|
45
79
|
list_trigger_orders: TriggerServerListTriggerOrdersResponse;
|
|
80
|
+
list_twap_executions: TriggerServerTwapExecutionsResponse;
|
|
46
81
|
}
|
|
47
82
|
interface TriggerServerQuerySuccessResponse<TQueryType extends keyof TriggerServerQueryResponseByType = TriggerServerQueryRequestType> {
|
|
48
83
|
status: 'success';
|
|
@@ -55,4 +90,4 @@ interface TriggerServerQueryFailureResponse {
|
|
|
55
90
|
}
|
|
56
91
|
type TriggerServerQueryResponse<TQueryType extends keyof TriggerServerQueryResponseByType = TriggerServerQueryRequestType> = TriggerServerQuerySuccessResponse<TQueryType> | TriggerServerQueryFailureResponse;
|
|
57
92
|
|
|
58
|
-
export type { TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter };
|
|
93
|
+
export type { TriggerServerCancelReason, TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerListTwapExecutionsParams, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter, TriggerServerTwapExecutionInfo, TriggerServerTwapExecutionStatus, TriggerServerTwapExecutionsResponse };
|
|
@@ -3,17 +3,27 @@ import { EngineServerExecuteResult } from '@nadohq/engine-client';
|
|
|
3
3
|
import { TriggerServerPlaceOrderParams } from './serverExecuteTypes.js';
|
|
4
4
|
import './serverModelTypes.js';
|
|
5
5
|
|
|
6
|
-
type TriggerServerOrderStatus =
|
|
7
|
-
|
|
6
|
+
type TriggerServerOrderStatus = {
|
|
7
|
+
cancelled: TriggerServerCancelReason;
|
|
8
8
|
} | {
|
|
9
|
-
|
|
9
|
+
triggered: EngineServerExecuteResult;
|
|
10
10
|
} | {
|
|
11
11
|
internal_error: string;
|
|
12
|
+
} | 'triggering' | 'waiting_price' | 'waiting_dependency' | {
|
|
13
|
+
twap_executing: {
|
|
14
|
+
current_execution: number;
|
|
15
|
+
total_executions: number;
|
|
16
|
+
};
|
|
17
|
+
} | {
|
|
18
|
+
twap_completed: {
|
|
19
|
+
executed: number;
|
|
20
|
+
total: number;
|
|
21
|
+
};
|
|
12
22
|
};
|
|
13
23
|
/**
|
|
14
24
|
* Request types
|
|
15
25
|
*/
|
|
16
|
-
type TriggerServerTriggerTypeFilter = 'price_trigger' | '
|
|
26
|
+
type TriggerServerTriggerTypeFilter = 'price_trigger' | 'time_trigger';
|
|
17
27
|
interface TriggerServerListTriggerOrdersParams extends SignedTx<EIP712ListTriggerOrdersValues> {
|
|
18
28
|
pending: boolean;
|
|
19
29
|
product_id?: number;
|
|
@@ -23,8 +33,12 @@ interface TriggerServerListTriggerOrdersParams extends SignedTx<EIP712ListTrigge
|
|
|
23
33
|
trigger_types?: TriggerServerTriggerTypeFilter[];
|
|
24
34
|
reduce_only?: boolean;
|
|
25
35
|
}
|
|
36
|
+
interface TriggerServerListTwapExecutionsParams {
|
|
37
|
+
digest: string;
|
|
38
|
+
}
|
|
26
39
|
interface TriggerServerQueryRequestByType {
|
|
27
40
|
list_trigger_orders: TriggerServerListTriggerOrdersParams;
|
|
41
|
+
list_twap_executions: TriggerServerListTwapExecutionsParams;
|
|
28
42
|
}
|
|
29
43
|
type TriggerServerQueryRequestType = keyof TriggerServerQueryRequestByType;
|
|
30
44
|
/**
|
|
@@ -41,8 +55,29 @@ interface TriggerServerOrderInfo {
|
|
|
41
55
|
interface TriggerServerListTriggerOrdersResponse {
|
|
42
56
|
orders: TriggerServerOrderInfo[];
|
|
43
57
|
}
|
|
58
|
+
type TriggerServerCancelReason = 'user_requested' | 'linked_signer_changed' | 'expired' | 'account_health' | 'isolated_subaccount_closed' | 'dependent_order_cancelled';
|
|
59
|
+
type TriggerServerTwapExecutionStatus = 'pending' | {
|
|
60
|
+
executed: {
|
|
61
|
+
executed_time: number;
|
|
62
|
+
execute_response: EngineServerExecuteResult;
|
|
63
|
+
};
|
|
64
|
+
} | {
|
|
65
|
+
failed: string;
|
|
66
|
+
} | {
|
|
67
|
+
cancelled: TriggerServerCancelReason;
|
|
68
|
+
};
|
|
69
|
+
interface TriggerServerTwapExecutionInfo {
|
|
70
|
+
execution_id: number;
|
|
71
|
+
scheduled_time: number;
|
|
72
|
+
status: TriggerServerTwapExecutionStatus;
|
|
73
|
+
updated_at: number;
|
|
74
|
+
}
|
|
75
|
+
interface TriggerServerTwapExecutionsResponse {
|
|
76
|
+
executions: TriggerServerTwapExecutionInfo[];
|
|
77
|
+
}
|
|
44
78
|
interface TriggerServerQueryResponseByType {
|
|
45
79
|
list_trigger_orders: TriggerServerListTriggerOrdersResponse;
|
|
80
|
+
list_twap_executions: TriggerServerTwapExecutionsResponse;
|
|
46
81
|
}
|
|
47
82
|
interface TriggerServerQuerySuccessResponse<TQueryType extends keyof TriggerServerQueryResponseByType = TriggerServerQueryRequestType> {
|
|
48
83
|
status: 'success';
|
|
@@ -55,4 +90,4 @@ interface TriggerServerQueryFailureResponse {
|
|
|
55
90
|
}
|
|
56
91
|
type TriggerServerQueryResponse<TQueryType extends keyof TriggerServerQueryResponseByType = TriggerServerQueryRequestType> = TriggerServerQuerySuccessResponse<TQueryType> | TriggerServerQueryFailureResponse;
|
|
57
92
|
|
|
58
|
-
export type { TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter };
|
|
93
|
+
export type { TriggerServerCancelReason, TriggerServerListTriggerOrdersParams, TriggerServerListTriggerOrdersResponse, TriggerServerListTwapExecutionsParams, TriggerServerOrder, TriggerServerOrderInfo, TriggerServerOrderStatus, TriggerServerQueryFailureResponse, TriggerServerQueryRequestByType, TriggerServerQueryRequestType, TriggerServerQueryResponse, TriggerServerQueryResponseByType, TriggerServerQuerySuccessResponse, TriggerServerTriggerTypeFilter, TriggerServerTwapExecutionInfo, TriggerServerTwapExecutionStatus, TriggerServerTwapExecutionsResponse };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nadohq/trigger-client",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"description": "> TODO: description",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
}
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@nadohq/engine-client": "^0.1.0-alpha.
|
|
41
|
-
"@nadohq/shared": "^0.1.0-alpha.
|
|
40
|
+
"@nadohq/engine-client": "^0.1.0-alpha.8",
|
|
41
|
+
"@nadohq/shared": "^0.1.0-alpha.8",
|
|
42
42
|
"axios": "*",
|
|
43
43
|
"ts-mixer": "*"
|
|
44
44
|
},
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"viem": "*"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "3488a83313ef5c199b2fc9a3cd70f477e80e74db"
|
|
52
52
|
}
|
package/src/TriggerClient.ts
CHANGED
|
@@ -14,12 +14,18 @@ import {
|
|
|
14
14
|
WalletNotProvidedError,
|
|
15
15
|
} from '@nadohq/shared';
|
|
16
16
|
import axios, { AxiosInstance, AxiosResponse } from 'axios';
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
mapServerOrderInfo,
|
|
19
|
+
mapTriggerCriteria,
|
|
20
|
+
mapTwapExecutionStatus,
|
|
21
|
+
} from './dataMappers';
|
|
18
22
|
import {
|
|
19
23
|
TriggerCancelOrdersParams,
|
|
20
24
|
TriggerCancelProductOrdersParams,
|
|
21
25
|
TriggerListOrdersParams,
|
|
22
26
|
TriggerListOrdersResponse,
|
|
27
|
+
TriggerListTwapExecutionsParams,
|
|
28
|
+
TriggerListTwapExecutionsResponse,
|
|
23
29
|
TriggerOrderInfo,
|
|
24
30
|
TriggerPlaceOrderParams,
|
|
25
31
|
TriggerServerExecuteRequestByType,
|
|
@@ -31,6 +37,7 @@ import {
|
|
|
31
37
|
TriggerServerQueryResponse,
|
|
32
38
|
TriggerServerQueryResponseByType,
|
|
33
39
|
TriggerServerQuerySuccessResponse,
|
|
40
|
+
TwapExecutionInfo,
|
|
34
41
|
} from './types';
|
|
35
42
|
import { TriggerServerFailureError } from './types/TriggerServerFailureError';
|
|
36
43
|
|
|
@@ -198,6 +205,30 @@ export class TriggerClient {
|
|
|
198
205
|
};
|
|
199
206
|
}
|
|
200
207
|
|
|
208
|
+
async listTwapExecutions(
|
|
209
|
+
params: TriggerListTwapExecutionsParams,
|
|
210
|
+
): Promise<TriggerListTwapExecutionsResponse> {
|
|
211
|
+
const queryParams: TriggerServerQueryRequestByType['list_twap_executions'] =
|
|
212
|
+
{
|
|
213
|
+
digest: params.digest,
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
const baseResponse = await this.query('list_twap_executions', queryParams);
|
|
217
|
+
|
|
218
|
+
const executions: TwapExecutionInfo[] = baseResponse.executions.map(
|
|
219
|
+
(execution) => ({
|
|
220
|
+
executionId: execution.execution_id,
|
|
221
|
+
scheduledTime: execution.scheduled_time,
|
|
222
|
+
status: mapTwapExecutionStatus(execution.status),
|
|
223
|
+
updatedAt: execution.updated_at,
|
|
224
|
+
}),
|
|
225
|
+
);
|
|
226
|
+
|
|
227
|
+
return {
|
|
228
|
+
executions,
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
|
|
201
232
|
/*
|
|
202
233
|
Base Fns
|
|
203
234
|
*/
|
package/src/dataMappers.ts
CHANGED
|
@@ -19,6 +19,8 @@ import {
|
|
|
19
19
|
TriggerServerPriceTriggerCriteria,
|
|
20
20
|
TriggerServerTimeTriggerCriteria,
|
|
21
21
|
TriggerServerTriggerCriteria,
|
|
22
|
+
TriggerServerTwapExecutionStatus,
|
|
23
|
+
TwapExecutionStatus,
|
|
22
24
|
} from './types';
|
|
23
25
|
|
|
24
26
|
/**
|
|
@@ -117,24 +119,44 @@ export function mapServerOrderInfo(
|
|
|
117
119
|
function mapTriggerServerOrderStatus(
|
|
118
120
|
status: TriggerServerOrderStatus,
|
|
119
121
|
): TriggerOrderStatus {
|
|
120
|
-
if (status === '
|
|
122
|
+
if (status === 'triggering') {
|
|
121
123
|
return {
|
|
122
|
-
type: '
|
|
124
|
+
type: 'triggering',
|
|
125
|
+
};
|
|
126
|
+
} else if (status === 'waiting_price') {
|
|
127
|
+
return {
|
|
128
|
+
type: 'waiting_price',
|
|
129
|
+
};
|
|
130
|
+
} else if (status === 'waiting_dependency') {
|
|
131
|
+
return {
|
|
132
|
+
type: 'waiting_dependency',
|
|
123
133
|
};
|
|
124
134
|
} else if ('cancelled' in status) {
|
|
125
135
|
return {
|
|
126
136
|
type: 'cancelled',
|
|
127
137
|
reason: status.cancelled,
|
|
128
138
|
};
|
|
139
|
+
} else if ('triggered' in status) {
|
|
140
|
+
return {
|
|
141
|
+
type: 'triggered',
|
|
142
|
+
result: status.triggered,
|
|
143
|
+
};
|
|
129
144
|
} else if ('internal_error' in status) {
|
|
130
145
|
return {
|
|
131
146
|
type: 'internal_error',
|
|
132
147
|
error: status.internal_error,
|
|
133
148
|
};
|
|
134
|
-
} else if ('
|
|
149
|
+
} else if ('twap_executing' in status) {
|
|
135
150
|
return {
|
|
136
|
-
type: '
|
|
137
|
-
|
|
151
|
+
type: 'twap_executing',
|
|
152
|
+
currentExecution: status.twap_executing.current_execution,
|
|
153
|
+
totalExecutions: status.twap_executing.total_executions,
|
|
154
|
+
};
|
|
155
|
+
} else if ('twap_completed' in status) {
|
|
156
|
+
return {
|
|
157
|
+
type: 'twap_completed',
|
|
158
|
+
executed: status.twap_completed.executed,
|
|
159
|
+
total: status.twap_completed.total,
|
|
138
160
|
};
|
|
139
161
|
}
|
|
140
162
|
throw Error(`Unknown trigger order status: ${JSON.stringify(status)}`);
|
|
@@ -226,3 +248,30 @@ function mapServerTimeTriggerCriteria(
|
|
|
226
248
|
),
|
|
227
249
|
};
|
|
228
250
|
}
|
|
251
|
+
|
|
252
|
+
export function mapTwapExecutionStatus(
|
|
253
|
+
status: TriggerServerTwapExecutionStatus,
|
|
254
|
+
): TwapExecutionStatus {
|
|
255
|
+
if (status === 'pending') {
|
|
256
|
+
return {
|
|
257
|
+
type: 'pending',
|
|
258
|
+
};
|
|
259
|
+
} else if ('executed' in status) {
|
|
260
|
+
return {
|
|
261
|
+
type: 'executed',
|
|
262
|
+
executedTime: status.executed.executed_time,
|
|
263
|
+
executeResponse: status.executed.execute_response,
|
|
264
|
+
};
|
|
265
|
+
} else if ('failed' in status) {
|
|
266
|
+
return {
|
|
267
|
+
type: 'failed',
|
|
268
|
+
error: status.failed,
|
|
269
|
+
};
|
|
270
|
+
} else if ('cancelled' in status) {
|
|
271
|
+
return {
|
|
272
|
+
type: 'cancelled',
|
|
273
|
+
reason: status.cancelled,
|
|
274
|
+
};
|
|
275
|
+
}
|
|
276
|
+
throw Error(`Unknown TWAP execution status: ${JSON.stringify(status)}`);
|
|
277
|
+
}
|
|
@@ -62,9 +62,6 @@ export type TriggerCriteria =
|
|
|
62
62
|
export type TriggerCriteriaType = TriggerCriteria['type'];
|
|
63
63
|
|
|
64
64
|
export type TriggerOrderStatus =
|
|
65
|
-
| {
|
|
66
|
-
type: 'pending';
|
|
67
|
-
}
|
|
68
65
|
| {
|
|
69
66
|
type: 'cancelled';
|
|
70
67
|
reason: string;
|
|
@@ -76,4 +73,23 @@ export type TriggerOrderStatus =
|
|
|
76
73
|
| {
|
|
77
74
|
type: 'internal_error';
|
|
78
75
|
error: string;
|
|
76
|
+
}
|
|
77
|
+
| {
|
|
78
|
+
type: 'triggering';
|
|
79
|
+
}
|
|
80
|
+
| {
|
|
81
|
+
type: 'waiting_price';
|
|
82
|
+
}
|
|
83
|
+
| {
|
|
84
|
+
type: 'waiting_dependency';
|
|
85
|
+
}
|
|
86
|
+
| {
|
|
87
|
+
type: 'twap_executing';
|
|
88
|
+
currentExecution: number;
|
|
89
|
+
totalExecutions: number;
|
|
90
|
+
}
|
|
91
|
+
| {
|
|
92
|
+
type: 'twap_completed';
|
|
93
|
+
executed: number;
|
|
94
|
+
total: number;
|
|
79
95
|
};
|
package/src/types/clientTypes.ts
CHANGED
|
@@ -4,7 +4,10 @@ import {
|
|
|
4
4
|
OrderAppendix,
|
|
5
5
|
Subaccount,
|
|
6
6
|
} from '@nadohq/shared';
|
|
7
|
-
import {
|
|
7
|
+
import {
|
|
8
|
+
EngineOrderParams,
|
|
9
|
+
EngineServerExecuteResult,
|
|
10
|
+
} from '@nadohq/engine-client';
|
|
8
11
|
import { BigDecimal } from '@nadohq/shared';
|
|
9
12
|
import { TriggerCriteria, TriggerOrderStatus } from './clientModelTypes';
|
|
10
13
|
import {
|
|
@@ -89,3 +92,36 @@ export interface TriggerOrderInfo {
|
|
|
89
92
|
export interface TriggerListOrdersResponse {
|
|
90
93
|
orders: TriggerOrderInfo[];
|
|
91
94
|
}
|
|
95
|
+
|
|
96
|
+
export interface TriggerListTwapExecutionsParams {
|
|
97
|
+
digest: string;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export type TwapExecutionStatus =
|
|
101
|
+
| {
|
|
102
|
+
type: 'pending';
|
|
103
|
+
}
|
|
104
|
+
| {
|
|
105
|
+
type: 'executed';
|
|
106
|
+
executedTime: number;
|
|
107
|
+
executeResponse: EngineServerExecuteResult;
|
|
108
|
+
}
|
|
109
|
+
| {
|
|
110
|
+
type: 'failed';
|
|
111
|
+
error: string;
|
|
112
|
+
}
|
|
113
|
+
| {
|
|
114
|
+
type: 'cancelled';
|
|
115
|
+
reason: string;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
export interface TwapExecutionInfo {
|
|
119
|
+
executionId: number;
|
|
120
|
+
scheduledTime: number;
|
|
121
|
+
status: TwapExecutionStatus;
|
|
122
|
+
updatedAt: number;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
export interface TriggerListTwapExecutionsResponse {
|
|
126
|
+
executions: TwapExecutionInfo[];
|
|
127
|
+
}
|