@ablehi/server-contract 0.2.2 → 0.2.4
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/edge-COdVAE2s.d.ts +987 -0
- package/dist/edge.d.ts +1 -934
- package/dist/edge.js +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/package.json +7 -7
|
@@ -0,0 +1,987 @@
|
|
|
1
|
+
declare const SERVER_CONTRACT_VERSION = "0.2.4";
|
|
2
|
+
type ServerContractVersion = typeof SERVER_CONTRACT_VERSION;
|
|
3
|
+
|
|
4
|
+
declare const FLOW_IR_SCHEMA_VERSION = "flow.ir.v1";
|
|
5
|
+
type JsonObject = {
|
|
6
|
+
[key: string]: JsonValue;
|
|
7
|
+
};
|
|
8
|
+
type JsonArray = JsonValue[];
|
|
9
|
+
type JsonValue = string | number | boolean | null | JsonObject | JsonArray;
|
|
10
|
+
type ValueExpression = JsonValue;
|
|
11
|
+
type Mapping = {
|
|
12
|
+
[key: string]: ValueExpression;
|
|
13
|
+
};
|
|
14
|
+
type Operand = string | number | boolean | null;
|
|
15
|
+
type Collection = JsonArray | string;
|
|
16
|
+
type BooleanExpression = {
|
|
17
|
+
and: BooleanExpression[];
|
|
18
|
+
} | {
|
|
19
|
+
or: BooleanExpression[];
|
|
20
|
+
} | {
|
|
21
|
+
not: BooleanExpression;
|
|
22
|
+
} | {
|
|
23
|
+
eq: [Operand, Operand];
|
|
24
|
+
} | {
|
|
25
|
+
ne: [Operand, Operand];
|
|
26
|
+
} | {
|
|
27
|
+
in: [Operand, Collection];
|
|
28
|
+
} | {
|
|
29
|
+
exists: Operand;
|
|
30
|
+
};
|
|
31
|
+
type TriggerBinding = ScheduleTriggerBinding | IntegrationTriggerBinding | ManualTriggerBinding;
|
|
32
|
+
type ScheduleTriggerBinding = {
|
|
33
|
+
id: string;
|
|
34
|
+
kind: "schedule";
|
|
35
|
+
cron: string;
|
|
36
|
+
timezone: string;
|
|
37
|
+
inputMapping?: Mapping;
|
|
38
|
+
};
|
|
39
|
+
type IntegrationTriggerBinding = {
|
|
40
|
+
id: string;
|
|
41
|
+
kind: "integration";
|
|
42
|
+
triggerRef: string;
|
|
43
|
+
connectionRef: string;
|
|
44
|
+
config?: JsonObject;
|
|
45
|
+
inputMapping?: Mapping;
|
|
46
|
+
dedupeKey?: ValueExpression;
|
|
47
|
+
};
|
|
48
|
+
type ManualTriggerBinding = {
|
|
49
|
+
id: string;
|
|
50
|
+
kind: "manual";
|
|
51
|
+
label?: string;
|
|
52
|
+
};
|
|
53
|
+
type NodeCommon = {
|
|
54
|
+
id: string;
|
|
55
|
+
runIf?: BooleanExpression;
|
|
56
|
+
dependsOn?: string[];
|
|
57
|
+
};
|
|
58
|
+
type ActionNode = NodeCommon & {
|
|
59
|
+
kind: "action";
|
|
60
|
+
toolRef: string;
|
|
61
|
+
connectionRef: string;
|
|
62
|
+
inputs: Mapping;
|
|
63
|
+
idempotent?: boolean;
|
|
64
|
+
retry?: {
|
|
65
|
+
on: string[];
|
|
66
|
+
limit: number;
|
|
67
|
+
backoff: "exponential" | "fixed";
|
|
68
|
+
};
|
|
69
|
+
timeout?: string;
|
|
70
|
+
};
|
|
71
|
+
type WaitEventNode = NodeCommon & {
|
|
72
|
+
kind: "wait_event";
|
|
73
|
+
eventType: string;
|
|
74
|
+
correlation: {
|
|
75
|
+
key: ValueExpression;
|
|
76
|
+
};
|
|
77
|
+
timeout: string;
|
|
78
|
+
onTimeout: "fail" | string;
|
|
79
|
+
};
|
|
80
|
+
type SleepNode = NodeCommon & {
|
|
81
|
+
kind: "sleep";
|
|
82
|
+
duration: string;
|
|
83
|
+
};
|
|
84
|
+
type HumanInputPrompt = {
|
|
85
|
+
title: TextExpression;
|
|
86
|
+
body?: TextExpression;
|
|
87
|
+
format?: "plain" | "markdown";
|
|
88
|
+
};
|
|
89
|
+
type HumanInputChoice = {
|
|
90
|
+
id: string;
|
|
91
|
+
label: string;
|
|
92
|
+
style?: "primary" | "secondary" | "danger";
|
|
93
|
+
};
|
|
94
|
+
type HumanChoiceInput = {
|
|
95
|
+
kind: "choice";
|
|
96
|
+
choices: HumanInputChoice[];
|
|
97
|
+
allowComment?: boolean;
|
|
98
|
+
};
|
|
99
|
+
type HumanTextInput = {
|
|
100
|
+
kind: "text";
|
|
101
|
+
multiline?: boolean;
|
|
102
|
+
placeholder?: string;
|
|
103
|
+
required?: boolean;
|
|
104
|
+
};
|
|
105
|
+
type HumanFormField = {
|
|
106
|
+
id: string;
|
|
107
|
+
label: string;
|
|
108
|
+
type: "text" | "textarea" | "number" | "boolean" | "select";
|
|
109
|
+
required?: boolean;
|
|
110
|
+
options?: Array<{
|
|
111
|
+
id: string;
|
|
112
|
+
label: string;
|
|
113
|
+
}>;
|
|
114
|
+
};
|
|
115
|
+
type HumanFormInput = {
|
|
116
|
+
kind: "form";
|
|
117
|
+
fields: HumanFormField[];
|
|
118
|
+
};
|
|
119
|
+
type HumanInputSpec = HumanChoiceInput | HumanTextInput | HumanFormInput;
|
|
120
|
+
type HumanInputDeliveryAction = {
|
|
121
|
+
id: string;
|
|
122
|
+
toolRef: string;
|
|
123
|
+
connectionRef: string;
|
|
124
|
+
inputs: Mapping;
|
|
125
|
+
};
|
|
126
|
+
type HumanInputDelivery = {
|
|
127
|
+
actions?: HumanInputDeliveryAction[];
|
|
128
|
+
};
|
|
129
|
+
type HumanInputNode = NodeCommon & {
|
|
130
|
+
kind: "human_input";
|
|
131
|
+
prompt: HumanInputPrompt;
|
|
132
|
+
input: HumanInputSpec;
|
|
133
|
+
timeout: string;
|
|
134
|
+
delivery?: HumanInputDelivery;
|
|
135
|
+
};
|
|
136
|
+
type FlowNode = ActionNode | WaitEventNode | SleepNode | HumanInputNode;
|
|
137
|
+
type TextExpression = string;
|
|
138
|
+
type FlowCompositionSpec = {
|
|
139
|
+
title: TextExpression;
|
|
140
|
+
detail: {
|
|
141
|
+
format: "markdown";
|
|
142
|
+
body: TextExpression;
|
|
143
|
+
data?: Mapping;
|
|
144
|
+
};
|
|
145
|
+
report?: {
|
|
146
|
+
title?: TextExpression;
|
|
147
|
+
format: "markdown";
|
|
148
|
+
body: TextExpression;
|
|
149
|
+
data?: Mapping;
|
|
150
|
+
};
|
|
151
|
+
};
|
|
152
|
+
type FlowDefinition = {
|
|
153
|
+
flow: string;
|
|
154
|
+
triggers?: TriggerBinding[];
|
|
155
|
+
inputSchema: JsonObject;
|
|
156
|
+
nodes: FlowNode[];
|
|
157
|
+
outputs?: Mapping;
|
|
158
|
+
composition: FlowCompositionSpec;
|
|
159
|
+
};
|
|
160
|
+
type FlowIrValidationCode = "INVALID_IR_SHAPE" | "INVALID_NODE_ID" | "INVALID_TRIGGER_ID" | "INVALID_TRIGGER_KIND" | "INVALID_CRON" | "INVALID_NODE_KIND" | "MISSING_NODE_FIELD" | "INVALID_EVENT_TYPE" | "INVALID_DURATION" | "INVALID_RETRY" | "INVALID_HUMAN_INPUT" | "DUPLICATE_NODE_ID" | "DUPLICATE_TRIGGER_ID" | "DANGLING_DEPENDS_ON" | "DATA_REF_TARGET_MISSING" | "DATA_REF_TARGET_NO_OUTPUT" | "DATA_REF_FORWARD_REFERENCE" | "CYCLE_DETECTED" | "INVALID_ON_TIMEOUT_TARGET" | "INVALID_DSL_OPERATOR" | "INVALID_DSL_OPERAND" | "INVALID_DSL_ARITY" | "TRIGGER_REF_SCOPE_VIOLATION" | "NODE_REF_SCOPE_VIOLATION" | "HUMAN_INPUT_REF_SCOPE_VIOLATION" | "NOW_REF_SCOPE_VIOLATION" | "UNKNOWN_REF_ROOT" | "MALFORMED_TEMPLATE_REFERENCE" | "MALFORMED_NOW_EXPR";
|
|
161
|
+
type FlowIrValidationIssue = {
|
|
162
|
+
code: FlowIrValidationCode;
|
|
163
|
+
message: string;
|
|
164
|
+
path: string;
|
|
165
|
+
};
|
|
166
|
+
type FlowIrValidationResult = {
|
|
167
|
+
valid: boolean;
|
|
168
|
+
issues: FlowIrValidationIssue[];
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
declare const FLOW_INTERPRETER_CONTRACT_VERSION = "flow.interp.v2";
|
|
172
|
+
type FlowInterpreterContractVersion = typeof FLOW_INTERPRETER_CONTRACT_VERSION;
|
|
173
|
+
|
|
174
|
+
type ContractParseResult<T> = {
|
|
175
|
+
ok: true;
|
|
176
|
+
value: T;
|
|
177
|
+
} | {
|
|
178
|
+
ok: false;
|
|
179
|
+
reason: string;
|
|
180
|
+
};
|
|
181
|
+
declare function contractParseOk<T>(value: T): ContractParseResult<T>;
|
|
182
|
+
declare function contractParseFail<T>(reason: string): ContractParseResult<T>;
|
|
183
|
+
declare function isJsonRecord(value: unknown): value is Record<string, unknown>;
|
|
184
|
+
|
|
185
|
+
type AblehiSuccess<T> = {
|
|
186
|
+
ok: true;
|
|
187
|
+
data: T;
|
|
188
|
+
};
|
|
189
|
+
type AblehiFailure = {
|
|
190
|
+
ok: false;
|
|
191
|
+
error: {
|
|
192
|
+
code: string;
|
|
193
|
+
message: string;
|
|
194
|
+
issues?: unknown;
|
|
195
|
+
retryable?: boolean;
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
type AblehiEnvelope<T> = AblehiSuccess<T> | AblehiFailure;
|
|
199
|
+
|
|
200
|
+
declare const CONTEXT_STATE_CLEANUP_ROUTE_PATH = "/cleanup-state-scopes";
|
|
201
|
+
type ContextStateScope = {
|
|
202
|
+
kind: "webhook-trigger";
|
|
203
|
+
workspaceId: string;
|
|
204
|
+
triggerInstanceId: string;
|
|
205
|
+
} | {
|
|
206
|
+
kind: "polling-trigger";
|
|
207
|
+
workspaceId: string;
|
|
208
|
+
pollingInstanceId: string;
|
|
209
|
+
} | {
|
|
210
|
+
kind: "flow-action";
|
|
211
|
+
workspaceId: string;
|
|
212
|
+
flowId: string;
|
|
213
|
+
nodeId: string;
|
|
214
|
+
connectionId: string | null;
|
|
215
|
+
};
|
|
216
|
+
type ContextStateCleanupRequestBody = {
|
|
217
|
+
scopes: ContextStateScope[];
|
|
218
|
+
};
|
|
219
|
+
type ContextStateCleanupResponseData = {
|
|
220
|
+
deleted: number;
|
|
221
|
+
};
|
|
222
|
+
declare function parseContextStateScope(value: unknown): ContractParseResult<ContextStateScope>;
|
|
223
|
+
declare function parseContextStateCleanupRequestBody(body: unknown): ContractParseResult<ContextStateCleanupRequestBody>;
|
|
224
|
+
declare function parseContextStateCleanupResponseData(data: unknown): ContractParseResult<ContextStateCleanupResponseData>;
|
|
225
|
+
|
|
226
|
+
declare const INTERNAL_FLOW_RUNS_ROUTE_PREFIX = "/internal/flow-runs";
|
|
227
|
+
declare const EXECUTION_CONTEXT_ROUTE_SUBPATH = "/:flowRunId/execution-context";
|
|
228
|
+
declare function executionContextPath(flowRunId: string): string;
|
|
229
|
+
type ExecutionBindingConnection = {
|
|
230
|
+
installationId: string;
|
|
231
|
+
connectionRef: string;
|
|
232
|
+
connectionId: string;
|
|
233
|
+
authType: string;
|
|
234
|
+
connectionConfig?: Record<string, unknown>;
|
|
235
|
+
};
|
|
236
|
+
type ExecutionBinding<TToolDescriptor = Record<string, unknown>, TIntegrationDescriptor = Record<string, unknown>> = {
|
|
237
|
+
nodeId: string;
|
|
238
|
+
toolRef: string;
|
|
239
|
+
toolDescriptor: TToolDescriptor;
|
|
240
|
+
integrationDescriptor: TIntegrationDescriptor;
|
|
241
|
+
connection: ExecutionBindingConnection;
|
|
242
|
+
stateScope: ContextStateScope;
|
|
243
|
+
};
|
|
244
|
+
type FileRuntimeLimits = {
|
|
245
|
+
fileMaxBytes: number;
|
|
246
|
+
fileReadMaxBytes: number;
|
|
247
|
+
inlineMultipartBytesMax: number;
|
|
248
|
+
};
|
|
249
|
+
type FlowExecutionContextFileRuntime = {
|
|
250
|
+
limits: FileRuntimeLimits;
|
|
251
|
+
} | null;
|
|
252
|
+
type ExecutionContextCompiled = {
|
|
253
|
+
irSchemaVersion: string;
|
|
254
|
+
interpreterContractVersion: string;
|
|
255
|
+
ir: FlowDefinition;
|
|
256
|
+
compiledArtifactId: string;
|
|
257
|
+
};
|
|
258
|
+
type ExecutionContextData<TToolDescriptor = Record<string, unknown>, TIntegrationDescriptor = Record<string, unknown>> = {
|
|
259
|
+
flowRunId: string;
|
|
260
|
+
workspaceId: string;
|
|
261
|
+
input: Record<string, unknown>;
|
|
262
|
+
compiled: ExecutionContextCompiled;
|
|
263
|
+
executionBindings: Array<ExecutionBinding<TToolDescriptor, TIntegrationDescriptor>>;
|
|
264
|
+
fileRuntime: FlowExecutionContextFileRuntime;
|
|
265
|
+
};
|
|
266
|
+
declare function parseFileRuntimeLimits(value: unknown): ContractParseResult<FileRuntimeLimits>;
|
|
267
|
+
declare function parseExecutionContextData(data: unknown): ContractParseResult<ExecutionContextData>;
|
|
268
|
+
|
|
269
|
+
declare const STEP_RESULT_ROUTE_SUBPATH = "/:flowRunId/steps/:nodeId/result";
|
|
270
|
+
declare const FLOW_RUN_RESULT_ROUTE_SUBPATH = "/:flowRunId/result";
|
|
271
|
+
declare const EVENT_WAIT_ROUTE_SUBPATH = "/:flowRunId/event-waits/:nodeId";
|
|
272
|
+
declare function stepResultPath(flowRunId: string, nodeId: string): string;
|
|
273
|
+
declare function flowRunResultPath(flowRunId: string): string;
|
|
274
|
+
declare function eventWaitPath(flowRunId: string, nodeId: string): string;
|
|
275
|
+
type StepRecordResult = {
|
|
276
|
+
status: "succeeded";
|
|
277
|
+
output: unknown;
|
|
278
|
+
} | {
|
|
279
|
+
status: "failed";
|
|
280
|
+
errorCode: string;
|
|
281
|
+
issues?: unknown;
|
|
282
|
+
};
|
|
283
|
+
type StepRecordBody = {
|
|
284
|
+
attempt: number;
|
|
285
|
+
result: StepRecordResult;
|
|
286
|
+
durationMs?: number;
|
|
287
|
+
};
|
|
288
|
+
type StepRecordData = {
|
|
289
|
+
flowRunId: string;
|
|
290
|
+
nodeId: string;
|
|
291
|
+
recorded: "succeeded" | "failed";
|
|
292
|
+
};
|
|
293
|
+
type StepRecordBodyParseResult = {
|
|
294
|
+
ok: true;
|
|
295
|
+
value: StepRecordBody;
|
|
296
|
+
} | {
|
|
297
|
+
ok: false;
|
|
298
|
+
kind: "validation" | "step_result_invalid";
|
|
299
|
+
reason: string;
|
|
300
|
+
};
|
|
301
|
+
declare function parseStepRecordBody(body: unknown): StepRecordBodyParseResult;
|
|
302
|
+
declare function parseStepRecordData(data: unknown): ContractParseResult<StepRecordData>;
|
|
303
|
+
type RenderedFlowComposition = {
|
|
304
|
+
title: string;
|
|
305
|
+
detail: {
|
|
306
|
+
format: "markdown";
|
|
307
|
+
body: string;
|
|
308
|
+
data?: unknown;
|
|
309
|
+
};
|
|
310
|
+
report?: {
|
|
311
|
+
origin: "flow_node";
|
|
312
|
+
title?: string;
|
|
313
|
+
format: "markdown";
|
|
314
|
+
body: string;
|
|
315
|
+
data?: unknown;
|
|
316
|
+
};
|
|
317
|
+
};
|
|
318
|
+
type FlowRunResultRequestBody = {
|
|
319
|
+
status: "succeeded";
|
|
320
|
+
output?: unknown;
|
|
321
|
+
composition?: RenderedFlowComposition;
|
|
322
|
+
} | {
|
|
323
|
+
status: "failed";
|
|
324
|
+
error: {
|
|
325
|
+
code: string;
|
|
326
|
+
message: string;
|
|
327
|
+
};
|
|
328
|
+
};
|
|
329
|
+
type ParsedFlowRunResultBody = {
|
|
330
|
+
status: "succeeded" | "failed";
|
|
331
|
+
output?: unknown;
|
|
332
|
+
error?: {
|
|
333
|
+
code: string;
|
|
334
|
+
message: string;
|
|
335
|
+
};
|
|
336
|
+
composition?: unknown;
|
|
337
|
+
};
|
|
338
|
+
declare function parseFlowRunResultBody(body: unknown): ContractParseResult<ParsedFlowRunResultBody>;
|
|
339
|
+
type FlowRunResultData = {
|
|
340
|
+
run: unknown;
|
|
341
|
+
};
|
|
342
|
+
declare function parseFlowRunResultData(data: unknown): ContractParseResult<FlowRunResultData>;
|
|
343
|
+
type RegisterFlowRunWaitBody = {
|
|
344
|
+
eventType: string;
|
|
345
|
+
correlationKey: string;
|
|
346
|
+
};
|
|
347
|
+
type CompleteFlowRunWaitBody = {
|
|
348
|
+
eventType: string;
|
|
349
|
+
correlationKey: string;
|
|
350
|
+
outcome: "received" | "timed_out";
|
|
351
|
+
eventId?: string;
|
|
352
|
+
};
|
|
353
|
+
type RegisterFlowRunWaitData = {
|
|
354
|
+
registered: true;
|
|
355
|
+
};
|
|
356
|
+
type CompleteFlowRunWaitData = {
|
|
357
|
+
completed: true;
|
|
358
|
+
};
|
|
359
|
+
declare function parseRegisterFlowRunWaitBody(body: unknown): ContractParseResult<RegisterFlowRunWaitBody>;
|
|
360
|
+
declare function parseCompleteFlowRunWaitBody(body: unknown): ContractParseResult<CompleteFlowRunWaitBody>;
|
|
361
|
+
declare function parseRegisterFlowRunWaitData(data: unknown): ContractParseResult<RegisterFlowRunWaitData>;
|
|
362
|
+
|
|
363
|
+
declare const INTERNAL_FLOW_VERSIONS_ROUTE_PREFIX = "/internal/flow-versions";
|
|
364
|
+
declare const HANDLER_BUNDLES_ROUTE_SUBPATH = "/:flowVersionId/handler-bundles";
|
|
365
|
+
declare const INTERNAL_INSTALLATIONS_ROUTE_PREFIX = "/internal/installations";
|
|
366
|
+
declare const TOOL_HANDLER_BUNDLES_ROUTE_SUBPATH = "/:installationId/handler-bundles";
|
|
367
|
+
declare function handlerBundlesPath(flowVersionId: string, compiledArtifactId: string): string;
|
|
368
|
+
declare function toolHandlerBundlesPath(args: {
|
|
369
|
+
installationId: string;
|
|
370
|
+
workspaceId: string;
|
|
371
|
+
artifactDigest: string;
|
|
372
|
+
}): string;
|
|
373
|
+
type RuntimeNetworkModel = "managed_only" | "managed_plus_unmanaged_sdk";
|
|
374
|
+
type RuntimeNetwork = {
|
|
375
|
+
networkModel: RuntimeNetworkModel;
|
|
376
|
+
apiHosts: string[];
|
|
377
|
+
authHosts: string[];
|
|
378
|
+
httpsOnly: boolean;
|
|
379
|
+
};
|
|
380
|
+
type HandlerBundleModule = {
|
|
381
|
+
entry: string;
|
|
382
|
+
files: Record<string, string>;
|
|
383
|
+
};
|
|
384
|
+
type HandlerBundle = {
|
|
385
|
+
toolRef: string;
|
|
386
|
+
kind: "request";
|
|
387
|
+
runtimeNetwork: RuntimeNetwork;
|
|
388
|
+
} | {
|
|
389
|
+
toolRef: string;
|
|
390
|
+
kind: "handler";
|
|
391
|
+
module: HandlerBundleModule;
|
|
392
|
+
runtimeNetwork: RuntimeNetwork;
|
|
393
|
+
};
|
|
394
|
+
type HandlerBundlesData = {
|
|
395
|
+
flowVersionId: string;
|
|
396
|
+
compiledArtifactId: string;
|
|
397
|
+
bundles: HandlerBundle[];
|
|
398
|
+
};
|
|
399
|
+
type ToolHandlerBundlesData = {
|
|
400
|
+
installationId: string;
|
|
401
|
+
artifactDigest: string;
|
|
402
|
+
bundles: HandlerBundle[];
|
|
403
|
+
};
|
|
404
|
+
type HandlerBundlesParseResult<T> = {
|
|
405
|
+
ok: true;
|
|
406
|
+
value: T;
|
|
407
|
+
} | {
|
|
408
|
+
ok: false;
|
|
409
|
+
kind: "shape" | "runtime_network";
|
|
410
|
+
reason: string;
|
|
411
|
+
};
|
|
412
|
+
declare function parseRuntimeNetwork(value: unknown): HandlerBundlesParseResult<RuntimeNetwork>;
|
|
413
|
+
declare function parseHandlerBundlesData(data: unknown): HandlerBundlesParseResult<HandlerBundlesData>;
|
|
414
|
+
declare function parseToolHandlerBundlesData(data: unknown): HandlerBundlesParseResult<ToolHandlerBundlesData>;
|
|
415
|
+
declare function parseHandlerBundle(value: unknown): HandlerBundlesParseResult<HandlerBundle>;
|
|
416
|
+
|
|
417
|
+
declare const INTERNAL_WEBHOOK_TRIGGER_INSTANCES_ROUTE_PREFIX = "/internal/webhook-trigger-instances";
|
|
418
|
+
declare const WEBHOOK_TRIGGER_CONTEXT_ROUTE_SUBPATH = "/:triggerInstanceId/context";
|
|
419
|
+
declare const WEBHOOK_TRIGGER_HANDLER_BUNDLES_ROUTE_SUBPATH = "/:triggerInstanceId/handler-bundles";
|
|
420
|
+
declare const WEBHOOK_TRIGGER_DELIVERY_ROUTE_SUBPATH = "/:triggerInstanceId/deliveries/:deliveryId";
|
|
421
|
+
declare const WEBHOOK_TRIGGER_EVENTS_ROUTE_SUBPATH = "/:triggerInstanceId/events";
|
|
422
|
+
declare const WEBHOOK_TRIGGER_REARM_ROUTE_SUBPATH = "/:triggerInstanceId/rearm";
|
|
423
|
+
declare function webhookTriggerContextPath(triggerInstanceId: string, artifactDigest: string): string;
|
|
424
|
+
declare function webhookTriggerHandlerBundlesPath(triggerInstanceId: string, artifactDigest: string): string;
|
|
425
|
+
declare function webhookTriggerDeliveryPath(triggerInstanceId: string, deliveryId: string): string;
|
|
426
|
+
declare function webhookTriggerEventsPath(triggerInstanceId: string): string;
|
|
427
|
+
declare function webhookTriggerRearmPath(triggerInstanceId: string): string;
|
|
428
|
+
declare const WEBHOOK_PROTOCOL_ADAPTER_BUNDLE_ROUTE_SUBPATH = "/:installationId/webhook-protocol-adapter-bundle";
|
|
429
|
+
declare function webhookProtocolAdapterBundlePath(args: {
|
|
430
|
+
installationId: string;
|
|
431
|
+
workspaceId: string;
|
|
432
|
+
artifactDigest: string;
|
|
433
|
+
}): string;
|
|
434
|
+
type WebhookTriggerVerificationMethod = "header_exact_match" | "hmac_sha256" | "hmac_sha1";
|
|
435
|
+
type PackageWebhookTriggerRuntimeDescriptor = {
|
|
436
|
+
trigger_id: string;
|
|
437
|
+
trigger_ref: string;
|
|
438
|
+
type: "webhook";
|
|
439
|
+
webhook: {
|
|
440
|
+
verification_method: WebhookTriggerVerificationMethod;
|
|
441
|
+
signature_header: string;
|
|
442
|
+
timestamp_header?: string;
|
|
443
|
+
tolerance_seconds?: number;
|
|
444
|
+
binding_policy: "per_instance";
|
|
445
|
+
endpoint_mode: "instance";
|
|
446
|
+
ack_mode: "platform_managed";
|
|
447
|
+
event_handler_module: string;
|
|
448
|
+
enable_handler_module: string;
|
|
449
|
+
disable_handler_module: string;
|
|
450
|
+
renew_handler_module?: string;
|
|
451
|
+
};
|
|
452
|
+
};
|
|
453
|
+
type TriggerConnectionInfo = {
|
|
454
|
+
connectionId: string;
|
|
455
|
+
connectionRef: string;
|
|
456
|
+
integrationRef: string;
|
|
457
|
+
authType: "oauth2" | "oauth1" | "api_key" | "basic_auth" | "bearer" | "jwt" | "custom" | "two_step";
|
|
458
|
+
connectionConfig?: Record<string, unknown>;
|
|
459
|
+
};
|
|
460
|
+
type WebhookWatcherContext = {
|
|
461
|
+
artifactDigest: string;
|
|
462
|
+
triggerRef: string;
|
|
463
|
+
triggerName: string;
|
|
464
|
+
integrationRef: string;
|
|
465
|
+
inputs: Record<string, unknown>;
|
|
466
|
+
connection: TriggerConnectionInfo | null;
|
|
467
|
+
runtime: PackageWebhookTriggerRuntimeDescriptor;
|
|
468
|
+
stateScope: ContextStateScope;
|
|
469
|
+
watcher?: {
|
|
470
|
+
instanceId: string;
|
|
471
|
+
generation: number;
|
|
472
|
+
};
|
|
473
|
+
};
|
|
474
|
+
type WebhookDelivery = {
|
|
475
|
+
deliveryId: string;
|
|
476
|
+
receivedAt: string;
|
|
477
|
+
request: {
|
|
478
|
+
method: "POST";
|
|
479
|
+
headers: Record<string, string>;
|
|
480
|
+
rawBody: string;
|
|
481
|
+
};
|
|
482
|
+
};
|
|
483
|
+
type TriggerHandlerModule = {
|
|
484
|
+
specifier: string;
|
|
485
|
+
source: string;
|
|
486
|
+
};
|
|
487
|
+
type TriggerHandlerBundlesData = {
|
|
488
|
+
triggerRef: string;
|
|
489
|
+
artifactDigest: string;
|
|
490
|
+
modules: TriggerHandlerModule[];
|
|
491
|
+
runtimeNetwork: RuntimeNetwork;
|
|
492
|
+
};
|
|
493
|
+
type WebhookPublishEvent = {
|
|
494
|
+
eventId: string;
|
|
495
|
+
occurredAt: string;
|
|
496
|
+
dedupeKey?: string;
|
|
497
|
+
payload: Record<string, unknown>;
|
|
498
|
+
};
|
|
499
|
+
type WebhookPublishEventsBody = {
|
|
500
|
+
deliveryId: string;
|
|
501
|
+
events: WebhookPublishEvent[];
|
|
502
|
+
};
|
|
503
|
+
type WebhookPublishEventsData = {
|
|
504
|
+
deliveryId: string;
|
|
505
|
+
results: {
|
|
506
|
+
eventId: string;
|
|
507
|
+
flowRunId: string;
|
|
508
|
+
status: "dispatched" | "duplicate";
|
|
509
|
+
}[];
|
|
510
|
+
};
|
|
511
|
+
type WebhookRearmBody = {
|
|
512
|
+
expectedWatcherInstanceId: string;
|
|
513
|
+
};
|
|
514
|
+
type WebhookRearmData = {
|
|
515
|
+
rearmed: boolean;
|
|
516
|
+
};
|
|
517
|
+
type WebhookProtocolAdapterModule = {
|
|
518
|
+
specifier: string;
|
|
519
|
+
source: string;
|
|
520
|
+
};
|
|
521
|
+
declare const WEBHOOK_PROTOCOL_ADAPTER_MODULE = "modules/webhook/protocol-adapter.js";
|
|
522
|
+
type WebhookProtocolAdapterBundleData = {
|
|
523
|
+
protocolId: string;
|
|
524
|
+
artifactDigest: string;
|
|
525
|
+
module: typeof WEBHOOK_PROTOCOL_ADAPTER_MODULE;
|
|
526
|
+
modules: WebhookProtocolAdapterModule[];
|
|
527
|
+
};
|
|
528
|
+
declare function flowScriptProtocolAdapterModuleName(artifactDigest: string): string;
|
|
529
|
+
declare function parseWebhookWatcherContext(data: unknown): ContractParseResult<WebhookWatcherContext>;
|
|
530
|
+
declare function parseWebhookDelivery(data: unknown): ContractParseResult<WebhookDelivery>;
|
|
531
|
+
declare function parseTriggerHandlerBundlesData(data: unknown): HandlerBundlesParseResult<TriggerHandlerBundlesData>;
|
|
532
|
+
declare function parseWebhookPublishEventsBody(body: unknown): ContractParseResult<WebhookPublishEventsBody>;
|
|
533
|
+
declare function parseWebhookRearmBody(body: unknown): ContractParseResult<WebhookRearmBody>;
|
|
534
|
+
|
|
535
|
+
declare const INTERNAL_POLLING_TRIGGER_INSTANCES_ROUTE_PREFIX = "/internal/polling-trigger-instances";
|
|
536
|
+
declare const POLLING_TRIGGER_CONTEXT_ROUTE_SUBPATH = "/:pollingInstanceId/context";
|
|
537
|
+
declare const POLLING_TRIGGER_HANDLER_BUNDLES_ROUTE_SUBPATH = "/:pollingInstanceId/handler-bundles";
|
|
538
|
+
declare const POLLING_TRIGGER_TICK_EVENTS_ROUTE_SUBPATH = "/:pollingInstanceId/ticks/:tickId/events";
|
|
539
|
+
declare function pollingTriggerContextPath(pollingInstanceId: string, artifactDigest: string, tickId: string): string;
|
|
540
|
+
declare function pollingTriggerHandlerBundlesPath(pollingInstanceId: string, artifactDigest: string): string;
|
|
541
|
+
declare function pollingTriggerTickEventsPath(pollingInstanceId: string, tickId: string): string;
|
|
542
|
+
type PackagePollingTriggerRuntimeDescriptor = {
|
|
543
|
+
trigger_id: string;
|
|
544
|
+
trigger_ref: string;
|
|
545
|
+
type: "polling";
|
|
546
|
+
polling: {
|
|
547
|
+
schedule: {
|
|
548
|
+
type: "interval";
|
|
549
|
+
every_seconds: number;
|
|
550
|
+
};
|
|
551
|
+
dedup: {
|
|
552
|
+
strategy: "cursor" | "hash" | "id_field";
|
|
553
|
+
cursor_field?: string;
|
|
554
|
+
id_field?: string;
|
|
555
|
+
};
|
|
556
|
+
run_handler_module: string;
|
|
557
|
+
};
|
|
558
|
+
};
|
|
559
|
+
type PollingTriggerContext = {
|
|
560
|
+
artifactDigest: string;
|
|
561
|
+
triggerRef: string;
|
|
562
|
+
triggerName: string;
|
|
563
|
+
integrationRef: string;
|
|
564
|
+
inputs: Record<string, unknown>;
|
|
565
|
+
connection: TriggerConnectionInfo | null;
|
|
566
|
+
runtime: PackagePollingTriggerRuntimeDescriptor;
|
|
567
|
+
stateScope: ContextStateScope;
|
|
568
|
+
tick: {
|
|
569
|
+
tickId: string;
|
|
570
|
+
scheduledAt: string;
|
|
571
|
+
attempt: number;
|
|
572
|
+
};
|
|
573
|
+
limits: {
|
|
574
|
+
maxEventsPerTick: number;
|
|
575
|
+
};
|
|
576
|
+
};
|
|
577
|
+
type PollingPublishEvent = {
|
|
578
|
+
eventId: string;
|
|
579
|
+
occurredAt?: string;
|
|
580
|
+
dedupeKey?: string;
|
|
581
|
+
payload: Record<string, unknown>;
|
|
582
|
+
};
|
|
583
|
+
type PollingPublishBody = {
|
|
584
|
+
events: PollingPublishEvent[];
|
|
585
|
+
nextCursor?: string | null;
|
|
586
|
+
};
|
|
587
|
+
type PublishPollingTickEventResult = {
|
|
588
|
+
eventId: string;
|
|
589
|
+
dedupeKey: string;
|
|
590
|
+
duplicate: boolean;
|
|
591
|
+
flowRunId: string | null;
|
|
592
|
+
};
|
|
593
|
+
type PublishPollingTickEventsData = {
|
|
594
|
+
tickId: string;
|
|
595
|
+
cursorUpdated: boolean;
|
|
596
|
+
results: PublishPollingTickEventResult[];
|
|
597
|
+
};
|
|
598
|
+
declare function parsePollingTriggerContext(data: unknown): ContractParseResult<PollingTriggerContext>;
|
|
599
|
+
declare function parsePollingPublishBody(body: unknown): ContractParseResult<PollingPublishBody>;
|
|
600
|
+
declare function parsePublishPollingTickEventsData(data: unknown): ContractParseResult<PublishPollingTickEventsData>;
|
|
601
|
+
|
|
602
|
+
declare const INTERNAL_EGRESS_GRANTS_ROUTE_PREFIX = "/internal/egress-grants";
|
|
603
|
+
declare const INTERNAL_TOOL_INVOCATIONS_ROUTE_PREFIX = "/internal/tool-invocations";
|
|
604
|
+
declare const FLOW_RUN_EGRESS_GRANT_ROUTE_SUBPATH = "/:flowRunId/egress-grant";
|
|
605
|
+
declare const TOOL_INVOCATION_EGRESS_GRANT_ROUTE_SUBPATH = "/:invocationId/egress-grant";
|
|
606
|
+
declare const POLLING_TRIGGER_EGRESS_GRANT_ROUTE_SUBPATH = "/:pollingInstanceId/egress-grant";
|
|
607
|
+
declare const WEBHOOK_TRIGGER_EGRESS_GRANT_ROUTE_SUBPATH = "/:triggerInstanceId/egress-grant";
|
|
608
|
+
declare const EGRESS_GRANT_CONSUME_ROUTE_SUBPATH = "/:grantId/consume";
|
|
609
|
+
declare const EGRESS_GRANT_AUDIT_ROUTE_SUBPATH = "/:grantId/audit";
|
|
610
|
+
declare const flowRunEgressGrantPath: (flowRunId: string) => string;
|
|
611
|
+
declare const toolInvocationEgressGrantPath: (invocationId: string) => string;
|
|
612
|
+
declare const pollingTriggerEgressGrantPath: (pollingInstanceId: string) => string;
|
|
613
|
+
declare const webhookTriggerEgressGrantPath: (triggerInstanceId: string) => string;
|
|
614
|
+
declare const egressGrantConsumePath: (grantId: string) => string;
|
|
615
|
+
declare const egressGrantAuditPath: (grantId: string) => string;
|
|
616
|
+
declare const EGRESS_GRANT_SCOPE_KINDS: readonly ["flow_action", "single_tool", "polling_trigger", "webhook_trigger"];
|
|
617
|
+
type EgressGrantScopeKind = (typeof EGRESS_GRANT_SCOPE_KINDS)[number];
|
|
618
|
+
type EgressGrantFileRuntime = {
|
|
619
|
+
baseUrl: string;
|
|
620
|
+
token: string;
|
|
621
|
+
expiresAt: string;
|
|
622
|
+
limits: {
|
|
623
|
+
fileReadMaxBytes: number;
|
|
624
|
+
inlineMultipartBytesMax: number;
|
|
625
|
+
};
|
|
626
|
+
};
|
|
627
|
+
type EgressGrant<TDescriptor = unknown> = {
|
|
628
|
+
grantId: string;
|
|
629
|
+
scopeKind: EgressGrantScopeKind;
|
|
630
|
+
scopeId: string;
|
|
631
|
+
workspaceId: string;
|
|
632
|
+
installationId: string;
|
|
633
|
+
connectionId: string | null;
|
|
634
|
+
artifactDigest: string;
|
|
635
|
+
descriptorHash: string;
|
|
636
|
+
requestDigest: string;
|
|
637
|
+
issuedAt: string;
|
|
638
|
+
expiresAt: string;
|
|
639
|
+
networkPolicy: unknown;
|
|
640
|
+
descriptor: TDescriptor;
|
|
641
|
+
connection: unknown | null;
|
|
642
|
+
credential: unknown | null;
|
|
643
|
+
fileRuntime?: EgressGrantFileRuntime;
|
|
644
|
+
signature: string;
|
|
645
|
+
};
|
|
646
|
+
type EgressGrantConsumeBody = {
|
|
647
|
+
scopeKind: EgressGrantScopeKind;
|
|
648
|
+
scopeId: string;
|
|
649
|
+
requestDigest: string;
|
|
650
|
+
};
|
|
651
|
+
type EgressGrantAuditBody = {
|
|
652
|
+
scopeKind: EgressGrantScopeKind;
|
|
653
|
+
scopeId: string;
|
|
654
|
+
providerHost: string;
|
|
655
|
+
status?: number;
|
|
656
|
+
durationMs: number;
|
|
657
|
+
requestBytes?: number;
|
|
658
|
+
responseBytes?: number;
|
|
659
|
+
errorCode?: string;
|
|
660
|
+
};
|
|
661
|
+
type FlowActionGrantBody = {
|
|
662
|
+
nodeId: string;
|
|
663
|
+
requestDigest: string;
|
|
664
|
+
requestHasMultipartFiles: boolean;
|
|
665
|
+
};
|
|
666
|
+
type SingleToolGrantBody = {
|
|
667
|
+
requestDigest: string;
|
|
668
|
+
};
|
|
669
|
+
type PollingTriggerGrantBody = {
|
|
670
|
+
tickId: string;
|
|
671
|
+
requestDigest: string;
|
|
672
|
+
};
|
|
673
|
+
type WebhookTriggerGrantBody = {
|
|
674
|
+
phase: "lifecycle" | "handler";
|
|
675
|
+
lifecycle?: "enable" | "disable" | "renew";
|
|
676
|
+
requestDigest: string;
|
|
677
|
+
};
|
|
678
|
+
declare function isValidRequestDigest(value: unknown): value is string;
|
|
679
|
+
declare function requestHasMultipartFileParts(request: unknown): boolean;
|
|
680
|
+
type EgressGrantBodyParseResult<T> = {
|
|
681
|
+
ok: true;
|
|
682
|
+
value: T;
|
|
683
|
+
} | {
|
|
684
|
+
ok: false;
|
|
685
|
+
kind: "shape" | "request_digest";
|
|
686
|
+
reason: string;
|
|
687
|
+
};
|
|
688
|
+
declare function parseFlowActionGrantBody(body: unknown): EgressGrantBodyParseResult<FlowActionGrantBody>;
|
|
689
|
+
declare function parseSingleToolGrantBody(body: unknown): EgressGrantBodyParseResult<SingleToolGrantBody>;
|
|
690
|
+
declare function parsePollingTriggerGrantBody(body: unknown): EgressGrantBodyParseResult<PollingTriggerGrantBody>;
|
|
691
|
+
declare function parseWebhookTriggerGrantBody(body: unknown): EgressGrantBodyParseResult<WebhookTriggerGrantBody>;
|
|
692
|
+
declare function parseEgressGrantConsumeBody(body: unknown): EgressGrantBodyParseResult<EgressGrantConsumeBody>;
|
|
693
|
+
declare function parseEgressGrantAuditBody(body: unknown): EgressGrantBodyParseResult<EgressGrantAuditBody>;
|
|
694
|
+
declare function parseEgressGrantData(data: unknown): ContractParseResult<EgressGrant<unknown>>;
|
|
695
|
+
declare function parseEgressGrantConsumeData(data: unknown): ContractParseResult<{
|
|
696
|
+
consumed: true;
|
|
697
|
+
}>;
|
|
698
|
+
|
|
699
|
+
declare const FLOW_RUN_RUNTIME_CREDENTIAL_ROUTE_SUBPATH = "/:flowRunId/runtime-credential";
|
|
700
|
+
declare const TOOL_INVOCATION_RUNTIME_CREDENTIAL_ROUTE_SUBPATH = "/:invocationId/runtime-credential";
|
|
701
|
+
declare const POLLING_TRIGGER_RUNTIME_CREDENTIAL_ROUTE_SUBPATH = "/:pollingInstanceId/runtime-credential";
|
|
702
|
+
declare const WEBHOOK_TRIGGER_RUNTIME_CREDENTIAL_ROUTE_SUBPATH = "/:triggerInstanceId/runtime-credential";
|
|
703
|
+
declare const flowRunRuntimeCredentialPath: (flowRunId: string) => string;
|
|
704
|
+
declare const toolInvocationRuntimeCredentialPath: (invocationId: string) => string;
|
|
705
|
+
declare const pollingTriggerRuntimeCredentialPath: (pollingInstanceId: string) => string;
|
|
706
|
+
declare const webhookTriggerRuntimeCredentialPath: (triggerInstanceId: string) => string;
|
|
707
|
+
declare const RUNTIME_CREDENTIAL_SESSION_SCOPE_KINDS: readonly ["flow_action", "tool_invoke", "polling_trigger", "webhook_trigger"];
|
|
708
|
+
type RuntimeCredentialSessionScopeKind = (typeof RUNTIME_CREDENTIAL_SESSION_SCOPE_KINDS)[number];
|
|
709
|
+
type RuntimeCredentialSessionNetwork = {
|
|
710
|
+
networkModel: "managed_plus_unmanaged_sdk";
|
|
711
|
+
apiHosts: string[];
|
|
712
|
+
authHosts: string[];
|
|
713
|
+
httpsOnly: true;
|
|
714
|
+
};
|
|
715
|
+
type RuntimeCredentialSession<TCredential = unknown> = {
|
|
716
|
+
sessionId: string;
|
|
717
|
+
scopeKind: RuntimeCredentialSessionScopeKind;
|
|
718
|
+
scopeId: string;
|
|
719
|
+
workspaceId: string;
|
|
720
|
+
installationId: string;
|
|
721
|
+
artifactDigest: string;
|
|
722
|
+
descriptorHash: string;
|
|
723
|
+
connectionId: string;
|
|
724
|
+
connectionRef: string;
|
|
725
|
+
authType: string;
|
|
726
|
+
credential: TCredential;
|
|
727
|
+
network: RuntimeCredentialSessionNetwork;
|
|
728
|
+
expiresAt: string;
|
|
729
|
+
};
|
|
730
|
+
type FlowRuntimeCredentialBody = {
|
|
731
|
+
nodeId: string;
|
|
732
|
+
};
|
|
733
|
+
type PollingRuntimeCredentialBody = {
|
|
734
|
+
tickId: string;
|
|
735
|
+
};
|
|
736
|
+
type WebhookRuntimeCredentialBody = {
|
|
737
|
+
executionKind: "event_handler" | "lifecycle";
|
|
738
|
+
deliveryId?: string;
|
|
739
|
+
lifecycleOperation?: "enable" | "disable" | "renew";
|
|
740
|
+
};
|
|
741
|
+
declare function parseFlowRuntimeCredentialBody(body: unknown): ContractParseResult<FlowRuntimeCredentialBody>;
|
|
742
|
+
declare function parseSingleToolRuntimeCredentialBody(body: unknown): ContractParseResult<null>;
|
|
743
|
+
declare function parsePollingRuntimeCredentialBody(body: unknown): ContractParseResult<PollingRuntimeCredentialBody>;
|
|
744
|
+
declare function parseWebhookRuntimeCredentialBody(body: unknown): ContractParseResult<WebhookRuntimeCredentialBody>;
|
|
745
|
+
declare function parseRuntimeCredentialSessionCredential(data: unknown): ContractParseResult<Record<string, unknown>>;
|
|
746
|
+
|
|
747
|
+
declare const WORKSPACE_FILES_ROUTE_PREFIX = "/workspaces/:workspaceId/files";
|
|
748
|
+
type FileAccessIntent = "preview" | "download" | "text";
|
|
749
|
+
type FileRefData = {
|
|
750
|
+
file_id: string;
|
|
751
|
+
name: string;
|
|
752
|
+
mime_type?: string;
|
|
753
|
+
size_bytes: number;
|
|
754
|
+
created_at: string;
|
|
755
|
+
expires_at: string;
|
|
756
|
+
sha256?: string;
|
|
757
|
+
source?: string;
|
|
758
|
+
};
|
|
759
|
+
type PresignedFileUrlData = {
|
|
760
|
+
method: "GET" | "PUT";
|
|
761
|
+
url: string;
|
|
762
|
+
headers: Record<string, string>;
|
|
763
|
+
expires_at: string;
|
|
764
|
+
};
|
|
765
|
+
type FileUploadSessionData = {
|
|
766
|
+
file: FileRefData;
|
|
767
|
+
upload: PresignedFileUrlData;
|
|
768
|
+
};
|
|
769
|
+
type FileAccessData = {
|
|
770
|
+
file: FileRefData;
|
|
771
|
+
access: PresignedFileUrlData;
|
|
772
|
+
intent: FileAccessIntent;
|
|
773
|
+
};
|
|
774
|
+
declare const workspaceFileUploadSessionPath: (workspaceId: string) => string;
|
|
775
|
+
declare const workspaceFileCompletePath: (workspaceId: string, fileId: string) => string;
|
|
776
|
+
declare const workspaceFileMetadataPath: (workspaceId: string, fileId: string) => string;
|
|
777
|
+
declare const workspaceFileAccessPath: (workspaceId: string, fileId: string, intent: FileAccessIntent) => string;
|
|
778
|
+
declare function parseFileRefData(data: unknown): ContractParseResult<FileRefData>;
|
|
779
|
+
declare function parseFileUploadSessionData(data: unknown): ContractParseResult<FileUploadSessionData>;
|
|
780
|
+
declare function parseFileAccessData(data: unknown): ContractParseResult<FileAccessData>;
|
|
781
|
+
|
|
782
|
+
declare const INTERNAL_FILES_ROUTE_PREFIX = "/internal/files";
|
|
783
|
+
declare const FILE_UPLOAD_SESSION_ROUTE_SUBPATH = "/upload-session";
|
|
784
|
+
declare const FILE_COMPLETE_ROUTE_SUBPATH = "/:fileId/complete";
|
|
785
|
+
declare const FILE_ACCESS_ROUTE_SUBPATH = "/:fileId/access";
|
|
786
|
+
declare const FILE_STAT_ROUTE_SUBPATH = "/:fileId/stat";
|
|
787
|
+
declare const FILE_CONTENT_ROUTE_SUBPATH = "/:fileId/content";
|
|
788
|
+
type FileRuntimeScopeKind = "flow_run" | "tool_invocation";
|
|
789
|
+
type FileRuntimeScope = {
|
|
790
|
+
scopeKind: FileRuntimeScopeKind;
|
|
791
|
+
scopeId: string;
|
|
792
|
+
};
|
|
793
|
+
type InternalFileAccessIntent = "runtime_read" | "provider_multipart";
|
|
794
|
+
type InternalFileAccessData = {
|
|
795
|
+
file: FileRefData;
|
|
796
|
+
access: PresignedFileUrlData;
|
|
797
|
+
intent: InternalFileAccessIntent;
|
|
798
|
+
};
|
|
799
|
+
declare const internalFilesPath: () => string;
|
|
800
|
+
declare const internalFileUploadSessionPath: () => string;
|
|
801
|
+
declare const internalFileCompletePath: (fileId: string) => string;
|
|
802
|
+
declare const internalFileAccessPath: (fileId: string, intent: InternalFileAccessIntent) => string;
|
|
803
|
+
declare const internalFileStatPath: (fileId: string, scope: FileRuntimeScope) => string;
|
|
804
|
+
declare const internalFileContentPath: (fileId: string, scope: FileRuntimeScope) => string;
|
|
805
|
+
|
|
806
|
+
declare function parseInternalFileAccessData(data: unknown): ContractParseResult<InternalFileAccessData>;
|
|
807
|
+
|
|
808
|
+
declare const HUMAN_INPUTS_ROUTE_SUBPATH = "/:flowRunId/human-inputs";
|
|
809
|
+
declare const HUMAN_INPUT_REQUEST_ROUTE_SUBPATH = "/:flowRunId/human-inputs/:requestId";
|
|
810
|
+
declare const HUMAN_INPUT_EXPIRE_ROUTE_SUBPATH = "/:flowRunId/human-inputs/:requestId/expire";
|
|
811
|
+
declare const HUMAN_INPUT_ACKNOWLEDGE_ROUTE_SUBPATH = "/:flowRunId/human-inputs/:requestId/acknowledge";
|
|
812
|
+
declare const humanInputsPath: (flowRunId: string) => string;
|
|
813
|
+
declare const humanInputRequestPath: (flowRunId: string, requestId: string) => string;
|
|
814
|
+
declare const humanInputExpirePath: (flowRunId: string, requestId: string) => string;
|
|
815
|
+
declare const humanInputAcknowledgePath: (flowRunId: string, requestId: string) => string;
|
|
816
|
+
declare const HUMAN_INPUT_RESOLVED_EVENT_PREFIX = "human_input_resolved";
|
|
817
|
+
declare function humanInputResolvedEventType(requestId: string): string;
|
|
818
|
+
type HumanInputResolvedEvent = {
|
|
819
|
+
requestId: string;
|
|
820
|
+
flowRunId: string;
|
|
821
|
+
nodeId: string;
|
|
822
|
+
status: "submitted" | "expired";
|
|
823
|
+
};
|
|
824
|
+
type RenderedHumanInputPrompt = {
|
|
825
|
+
title: string;
|
|
826
|
+
body?: string;
|
|
827
|
+
format?: "plain" | "markdown";
|
|
828
|
+
};
|
|
829
|
+
type PartiallyRenderedValue = {
|
|
830
|
+
kind: "literal";
|
|
831
|
+
value: unknown;
|
|
832
|
+
} | {
|
|
833
|
+
kind: "array";
|
|
834
|
+
items: PartiallyRenderedValue[];
|
|
835
|
+
} | {
|
|
836
|
+
kind: "object";
|
|
837
|
+
entries: Record<string, PartiallyRenderedValue>;
|
|
838
|
+
} | {
|
|
839
|
+
kind: "human_input_ref";
|
|
840
|
+
path: string;
|
|
841
|
+
} | {
|
|
842
|
+
kind: "template";
|
|
843
|
+
parts: PartiallyRenderedTemplatePart[];
|
|
844
|
+
};
|
|
845
|
+
type PartiallyRenderedTemplatePart = {
|
|
846
|
+
kind: "literal";
|
|
847
|
+
value: string;
|
|
848
|
+
} | {
|
|
849
|
+
kind: "human_input_ref";
|
|
850
|
+
path: string;
|
|
851
|
+
};
|
|
852
|
+
type PartiallyRenderedMapping = Record<string, PartiallyRenderedValue>;
|
|
853
|
+
type PartiallyRenderedHumanInputDelivery = {
|
|
854
|
+
actions?: Array<{
|
|
855
|
+
id: string;
|
|
856
|
+
inputs: PartiallyRenderedMapping;
|
|
857
|
+
}>;
|
|
858
|
+
};
|
|
859
|
+
type CreateHumanInputRequestBody = {
|
|
860
|
+
nodeId: string;
|
|
861
|
+
renderedPrompt: RenderedHumanInputPrompt;
|
|
862
|
+
input: HumanInputSpec;
|
|
863
|
+
partiallyRenderedDelivery?: PartiallyRenderedHumanInputDelivery;
|
|
864
|
+
timeout: string;
|
|
865
|
+
expiresAt: string;
|
|
866
|
+
};
|
|
867
|
+
type HumanInputResponse = {
|
|
868
|
+
kind: "choice";
|
|
869
|
+
choiceId: string;
|
|
870
|
+
comment?: string;
|
|
871
|
+
} | {
|
|
872
|
+
kind: "text";
|
|
873
|
+
text: string;
|
|
874
|
+
} | {
|
|
875
|
+
kind: "form";
|
|
876
|
+
values: Record<string, unknown>;
|
|
877
|
+
};
|
|
878
|
+
type HumanInputActor = {
|
|
879
|
+
type: "user";
|
|
880
|
+
userId: string;
|
|
881
|
+
} | {
|
|
882
|
+
type: "api_key";
|
|
883
|
+
apiKeyId: string;
|
|
884
|
+
} | {
|
|
885
|
+
type: "anonymous";
|
|
886
|
+
} | {
|
|
887
|
+
type: "provider";
|
|
888
|
+
provider: string;
|
|
889
|
+
providerActorId?: string;
|
|
890
|
+
} | {
|
|
891
|
+
type: "system";
|
|
892
|
+
};
|
|
893
|
+
type HumanInputOutput = {
|
|
894
|
+
status: "submitted";
|
|
895
|
+
response: HumanInputResponse;
|
|
896
|
+
actor: Exclude<HumanInputActor, {
|
|
897
|
+
type: "system";
|
|
898
|
+
}>;
|
|
899
|
+
submissionSource: string;
|
|
900
|
+
submittedAt: string;
|
|
901
|
+
} | {
|
|
902
|
+
status: "expired";
|
|
903
|
+
actor: {
|
|
904
|
+
type: "system";
|
|
905
|
+
};
|
|
906
|
+
expiredAt: string;
|
|
907
|
+
};
|
|
908
|
+
type HumanInputRequestView = {
|
|
909
|
+
id: string;
|
|
910
|
+
workspaceId: string;
|
|
911
|
+
flowRunId: string;
|
|
912
|
+
nodeId: string;
|
|
913
|
+
status: "pending" | "submitted" | "expired" | "cancelled";
|
|
914
|
+
inputKind: string;
|
|
915
|
+
timeout: string;
|
|
916
|
+
expiresAt: string;
|
|
917
|
+
createdAt: string;
|
|
918
|
+
updatedAt: string;
|
|
919
|
+
output: HumanInputOutput | null;
|
|
920
|
+
};
|
|
921
|
+
declare function parseCreateHumanInputBody(body: unknown): ContractParseResult<CreateHumanInputRequestBody>;
|
|
922
|
+
declare function parseHumanInputRequestViewData(data: unknown): ContractParseResult<HumanInputRequestView>;
|
|
923
|
+
declare function parseHumanInputCreateData(data: unknown): ContractParseResult<{
|
|
924
|
+
created: boolean;
|
|
925
|
+
request: HumanInputRequestView;
|
|
926
|
+
}>;
|
|
927
|
+
declare function parseHumanInputAcknowledgeData(data: unknown): ContractParseResult<{
|
|
928
|
+
acknowledged: true;
|
|
929
|
+
}>;
|
|
930
|
+
|
|
931
|
+
declare const WFP_USER_RUNTIME_MANIFEST_FORMAT_VERSION = "ablehi-wfp-user-runtime-manifest/v1";
|
|
932
|
+
type WfpUserRuntimeManifest = {
|
|
933
|
+
formatVersion: typeof WFP_USER_RUNTIME_MANIFEST_FORMAT_VERSION;
|
|
934
|
+
runtimeContractVersion: string;
|
|
935
|
+
sha256: string;
|
|
936
|
+
sourceRevision: string;
|
|
937
|
+
};
|
|
938
|
+
declare const WFP_USER_RUNTIME_UNKNOWN_SOURCE_REVISION = "unknown";
|
|
939
|
+
declare function wfpUserRuntimeManifestPath(bundlePath: string): string;
|
|
940
|
+
|
|
941
|
+
declare const DEPLOYMENT_HANDSHAKE_ROUTE = "/internal/deployment-handshake";
|
|
942
|
+
type DeploymentHandshakeRequestBody = {
|
|
943
|
+
nonce: string;
|
|
944
|
+
timestamp: string;
|
|
945
|
+
contractVersion: string;
|
|
946
|
+
dispatchNamespace: string;
|
|
947
|
+
probe: string;
|
|
948
|
+
};
|
|
949
|
+
type DeploymentHandshakeData = {
|
|
950
|
+
nonce: string;
|
|
951
|
+
contractVersion: string;
|
|
952
|
+
dispatchNamespace: string;
|
|
953
|
+
capabilities: string[];
|
|
954
|
+
proof: string;
|
|
955
|
+
};
|
|
956
|
+
type DeploymentHandshakeResponse = {
|
|
957
|
+
ok: true;
|
|
958
|
+
data: DeploymentHandshakeData;
|
|
959
|
+
} | {
|
|
960
|
+
ok: false;
|
|
961
|
+
error: {
|
|
962
|
+
code: string;
|
|
963
|
+
message: string;
|
|
964
|
+
};
|
|
965
|
+
};
|
|
966
|
+
declare const DEPLOYMENT_HANDSHAKE_DISPATCHER_CAPABILITIES: readonly ["start", "terminate", "send-event", "start-webhook-watcher", "run-polling-tick", "invoke-tool", "invoke-trigger-handler", "invoke-webhook-protocol-adapter", "deployment-handshake"];
|
|
967
|
+
declare const DEPLOYMENT_HANDSHAKE_REQUIRED_CAPABILITIES: readonly ["start", "terminate", "send-event", "start-webhook-watcher", "run-polling-tick", "invoke-tool", "invoke-trigger-handler", "invoke-webhook-protocol-adapter", "deployment-handshake"];
|
|
968
|
+
declare const HANDSHAKE_REQUEST_INVALID = "HANDSHAKE_REQUEST_INVALID";
|
|
969
|
+
declare const HANDSHAKE_SECRET_UNCONFIGURED = "HANDSHAKE_SECRET_UNCONFIGURED";
|
|
970
|
+
declare const HANDSHAKE_SECRET_MISMATCH = "HANDSHAKE_SECRET_MISMATCH";
|
|
971
|
+
declare const HANDSHAKE_CONTRACT_VERSION_MISMATCH = "HANDSHAKE_CONTRACT_VERSION_MISMATCH";
|
|
972
|
+
declare const HANDSHAKE_DISPATCH_NAMESPACE_MISMATCH = "HANDSHAKE_DISPATCH_NAMESPACE_MISMATCH";
|
|
973
|
+
declare const HANDSHAKE_CAPABILITY_MISSING = "HANDSHAKE_CAPABILITY_MISSING";
|
|
974
|
+
declare function deploymentHandshakeProbePayload(input: {
|
|
975
|
+
nonce: string;
|
|
976
|
+
timestamp: string;
|
|
977
|
+
contractVersion: string;
|
|
978
|
+
dispatchNamespace: string;
|
|
979
|
+
}): string;
|
|
980
|
+
declare function deploymentHandshakeResponseProofPayload(input: {
|
|
981
|
+
nonce: string;
|
|
982
|
+
contractVersion: string;
|
|
983
|
+
dispatchNamespace: string;
|
|
984
|
+
capabilities: string[];
|
|
985
|
+
}): string;
|
|
986
|
+
|
|
987
|
+
export { type FileAccessIntent as $, type AblehiEnvelope as A, type BooleanExpression as B, CONTEXT_STATE_CLEANUP_ROUTE_PATH as C, DEPLOYMENT_HANDSHAKE_DISPATCHER_CAPABILITIES as D, EGRESS_GRANT_AUDIT_ROUTE_SUBPATH as E, type FlowNode as F, type EgressGrantConsumeBody as G, type EgressGrantFileRuntime as H, type EgressGrantScopeKind as I, type JsonValue as J, type ExecutionBinding as K, type ExecutionBindingConnection as L, type Mapping as M, type ExecutionContextCompiled as N, type ExecutionContextData as O, FILE_ACCESS_ROUTE_SUBPATH as P, FILE_COMPLETE_ROUTE_SUBPATH as Q, FILE_CONTENT_ROUTE_SUBPATH as R, FILE_STAT_ROUTE_SUBPATH as S, type TriggerBinding as T, FILE_UPLOAD_SESSION_ROUTE_SUBPATH as U, FLOW_INTERPRETER_CONTRACT_VERSION as V, FLOW_IR_SCHEMA_VERSION as W, FLOW_RUN_EGRESS_GRANT_ROUTE_SUBPATH as X, FLOW_RUN_RESULT_ROUTE_SUBPATH as Y, FLOW_RUN_RUNTIME_CREDENTIAL_ROUTE_SUBPATH as Z, type FileAccessData as _, type FlowIrValidationResult as a, POLLING_TRIGGER_RUNTIME_CREDENTIAL_ROUTE_SUBPATH as a$, type FileRefData as a0, type FileRuntimeLimits as a1, type FileRuntimeScope as a2, type FileRuntimeScopeKind as a3, type FileUploadSessionData as a4, type FlowActionGrantBody as a5, type FlowDefinition as a6, type FlowExecutionContextFileRuntime as a7, type FlowInterpreterContractVersion as a8, type FlowIrValidationCode as a9, type HumanInputDeliveryAction as aA, type HumanInputNode as aB, type HumanInputOutput as aC, type HumanInputPrompt as aD, type HumanInputRequestView as aE, type HumanInputResolvedEvent as aF, type HumanInputResponse as aG, type HumanInputSpec as aH, type HumanTextInput as aI, INTERNAL_EGRESS_GRANTS_ROUTE_PREFIX as aJ, INTERNAL_FILES_ROUTE_PREFIX as aK, INTERNAL_FLOW_RUNS_ROUTE_PREFIX as aL, INTERNAL_FLOW_VERSIONS_ROUTE_PREFIX as aM, INTERNAL_INSTALLATIONS_ROUTE_PREFIX as aN, INTERNAL_POLLING_TRIGGER_INSTANCES_ROUTE_PREFIX as aO, INTERNAL_TOOL_INVOCATIONS_ROUTE_PREFIX as aP, INTERNAL_WEBHOOK_TRIGGER_INSTANCES_ROUTE_PREFIX as aQ, type IntegrationTriggerBinding as aR, type InternalFileAccessData as aS, type InternalFileAccessIntent as aT, type JsonArray as aU, type ManualTriggerBinding as aV, type NodeCommon as aW, type Operand as aX, POLLING_TRIGGER_CONTEXT_ROUTE_SUBPATH as aY, POLLING_TRIGGER_EGRESS_GRANT_ROUTE_SUBPATH as aZ, POLLING_TRIGGER_HANDLER_BUNDLES_ROUTE_SUBPATH as a_, type FlowIrValidationIssue as aa, type FlowRunResultData as ab, type FlowRunResultRequestBody as ac, type FlowRuntimeCredentialBody as ad, HANDLER_BUNDLES_ROUTE_SUBPATH as ae, HANDSHAKE_CAPABILITY_MISSING as af, HANDSHAKE_CONTRACT_VERSION_MISMATCH as ag, HANDSHAKE_DISPATCH_NAMESPACE_MISMATCH as ah, HANDSHAKE_REQUEST_INVALID as ai, HANDSHAKE_SECRET_MISMATCH as aj, HANDSHAKE_SECRET_UNCONFIGURED as ak, HUMAN_INPUTS_ROUTE_SUBPATH as al, HUMAN_INPUT_ACKNOWLEDGE_ROUTE_SUBPATH as am, HUMAN_INPUT_EXPIRE_ROUTE_SUBPATH as an, HUMAN_INPUT_REQUEST_ROUTE_SUBPATH as ao, HUMAN_INPUT_RESOLVED_EVENT_PREFIX as ap, type HandlerBundle as aq, type HandlerBundleModule as ar, type HandlerBundlesData as as, type HandlerBundlesParseResult as at, type HumanChoiceInput as au, type HumanFormField as av, type HumanFormInput as aw, type HumanInputActor as ax, type HumanInputChoice as ay, type HumanInputDelivery as az, type JsonObject as b, type WebhookPublishEventsData as b$, POLLING_TRIGGER_TICK_EVENTS_ROUTE_SUBPATH as b0, type PackagePollingTriggerRuntimeDescriptor as b1, type PackageWebhookTriggerRuntimeDescriptor as b2, type ParsedFlowRunResultBody as b3, type PartiallyRenderedHumanInputDelivery as b4, type PartiallyRenderedMapping as b5, type PartiallyRenderedTemplatePart as b6, type PartiallyRenderedValue as b7, type PollingPublishBody as b8, type PollingPublishEvent as b9, TOOL_HANDLER_BUNDLES_ROUTE_SUBPATH as bA, TOOL_INVOCATION_EGRESS_GRANT_ROUTE_SUBPATH as bB, TOOL_INVOCATION_RUNTIME_CREDENTIAL_ROUTE_SUBPATH as bC, type TextExpression as bD, type ToolHandlerBundlesData as bE, type TriggerConnectionInfo as bF, type TriggerHandlerBundlesData as bG, type TriggerHandlerModule as bH, type ValueExpression as bI, WEBHOOK_PROTOCOL_ADAPTER_BUNDLE_ROUTE_SUBPATH as bJ, WEBHOOK_PROTOCOL_ADAPTER_MODULE as bK, WEBHOOK_TRIGGER_CONTEXT_ROUTE_SUBPATH as bL, WEBHOOK_TRIGGER_DELIVERY_ROUTE_SUBPATH as bM, WEBHOOK_TRIGGER_EGRESS_GRANT_ROUTE_SUBPATH as bN, WEBHOOK_TRIGGER_EVENTS_ROUTE_SUBPATH as bO, WEBHOOK_TRIGGER_HANDLER_BUNDLES_ROUTE_SUBPATH as bP, WEBHOOK_TRIGGER_REARM_ROUTE_SUBPATH as bQ, WEBHOOK_TRIGGER_RUNTIME_CREDENTIAL_ROUTE_SUBPATH as bR, WFP_USER_RUNTIME_MANIFEST_FORMAT_VERSION as bS, WFP_USER_RUNTIME_UNKNOWN_SOURCE_REVISION as bT, WORKSPACE_FILES_ROUTE_PREFIX as bU, type WaitEventNode as bV, type WebhookDelivery as bW, type WebhookProtocolAdapterBundleData as bX, type WebhookProtocolAdapterModule as bY, type WebhookPublishEvent as bZ, type WebhookPublishEventsBody as b_, type PollingRuntimeCredentialBody as ba, type PollingTriggerContext as bb, type PollingTriggerGrantBody as bc, type PresignedFileUrlData as bd, type PublishPollingTickEventResult as be, type PublishPollingTickEventsData as bf, RUNTIME_CREDENTIAL_SESSION_SCOPE_KINDS as bg, type RegisterFlowRunWaitBody as bh, type RegisterFlowRunWaitData as bi, type RenderedFlowComposition as bj, type RenderedHumanInputPrompt as bk, type RuntimeCredentialSession as bl, type RuntimeCredentialSessionNetwork as bm, type RuntimeCredentialSessionScopeKind as bn, type RuntimeNetwork as bo, type RuntimeNetworkModel as bp, SERVER_CONTRACT_VERSION as bq, STEP_RESULT_ROUTE_SUBPATH as br, type ScheduleTriggerBinding as bs, type ServerContractVersion as bt, type SingleToolGrantBody as bu, type SleepNode as bv, type StepRecordBody as bw, type StepRecordBodyParseResult as bx, type StepRecordData as by, type StepRecordResult as bz, type FlowCompositionSpec as c, parseRegisterFlowRunWaitData as c$, type WebhookRearmBody as c0, type WebhookRearmData as c1, type WebhookRuntimeCredentialBody as c2, type WebhookTriggerGrantBody as c3, type WebhookTriggerVerificationMethod as c4, type WebhookWatcherContext as c5, type WfpUserRuntimeManifest as c6, contractParseFail as c7, contractParseOk as c8, deploymentHandshakeProbePayload as c9, parseContextStateScope as cA, parseCreateHumanInputBody as cB, parseEgressGrantAuditBody as cC, parseEgressGrantConsumeBody as cD, parseEgressGrantConsumeData as cE, parseEgressGrantData as cF, parseExecutionContextData as cG, parseFileAccessData as cH, parseFileRefData as cI, parseFileRuntimeLimits as cJ, parseFileUploadSessionData as cK, parseFlowActionGrantBody as cL, parseFlowRunResultBody as cM, parseFlowRunResultData as cN, parseFlowRuntimeCredentialBody as cO, parseHandlerBundle as cP, parseHandlerBundlesData as cQ, parseHumanInputAcknowledgeData as cR, parseHumanInputCreateData as cS, parseHumanInputRequestViewData as cT, parseInternalFileAccessData as cU, parsePollingPublishBody as cV, parsePollingRuntimeCredentialBody as cW, parsePollingTriggerContext as cX, parsePollingTriggerGrantBody as cY, parsePublishPollingTickEventsData as cZ, parseRegisterFlowRunWaitBody as c_, deploymentHandshakeResponseProofPayload as ca, egressGrantAuditPath as cb, egressGrantConsumePath as cc, eventWaitPath as cd, executionContextPath as ce, flowRunEgressGrantPath as cf, flowRunResultPath as cg, flowRunRuntimeCredentialPath as ch, flowScriptProtocolAdapterModuleName as ci, handlerBundlesPath as cj, humanInputAcknowledgePath as ck, humanInputExpirePath as cl, humanInputRequestPath as cm, humanInputResolvedEventType as cn, humanInputsPath as co, internalFileAccessPath as cp, internalFileCompletePath as cq, internalFileContentPath as cr, internalFileStatPath as cs, internalFileUploadSessionPath as ct, internalFilesPath as cu, isJsonRecord as cv, isValidRequestDigest as cw, parseCompleteFlowRunWaitBody as cx, parseContextStateCleanupRequestBody as cy, parseContextStateCleanupResponseData as cz, type AblehiFailure as d, parseRuntimeCredentialSessionCredential as d0, parseRuntimeNetwork as d1, parseSingleToolGrantBody as d2, parseSingleToolRuntimeCredentialBody as d3, parseStepRecordBody as d4, parseStepRecordData as d5, parseToolHandlerBundlesData as d6, parseTriggerHandlerBundlesData as d7, parseWebhookDelivery as d8, parseWebhookPublishEventsBody as d9, workspaceFileMetadataPath as dA, workspaceFileUploadSessionPath as dB, parseWebhookRearmBody as da, parseWebhookRuntimeCredentialBody as db, parseWebhookTriggerGrantBody as dc, parseWebhookWatcherContext as dd, pollingTriggerContextPath as de, pollingTriggerEgressGrantPath as df, pollingTriggerHandlerBundlesPath as dg, pollingTriggerRuntimeCredentialPath as dh, pollingTriggerTickEventsPath as di, requestHasMultipartFileParts as dj, stepResultPath as dk, toolHandlerBundlesPath as dl, toolInvocationEgressGrantPath as dm, toolInvocationRuntimeCredentialPath as dn, webhookProtocolAdapterBundlePath as dp, webhookTriggerContextPath as dq, webhookTriggerDeliveryPath as dr, webhookTriggerEgressGrantPath as ds, webhookTriggerEventsPath as dt, webhookTriggerHandlerBundlesPath as du, webhookTriggerRearmPath as dv, webhookTriggerRuntimeCredentialPath as dw, wfpUserRuntimeManifestPath as dx, workspaceFileAccessPath as dy, workspaceFileCompletePath as dz, type AblehiSuccess as e, type ActionNode as f, type Collection as g, type CompleteFlowRunWaitBody as h, type CompleteFlowRunWaitData as i, type ContextStateCleanupRequestBody as j, type ContextStateCleanupResponseData as k, type ContextStateScope as l, type ContractParseResult as m, type CreateHumanInputRequestBody as n, DEPLOYMENT_HANDSHAKE_REQUIRED_CAPABILITIES as o, DEPLOYMENT_HANDSHAKE_ROUTE as p, type DeploymentHandshakeData as q, type DeploymentHandshakeRequestBody as r, type DeploymentHandshakeResponse as s, EGRESS_GRANT_CONSUME_ROUTE_SUBPATH as t, EGRESS_GRANT_SCOPE_KINDS as u, EVENT_WAIT_ROUTE_SUBPATH as v, EXECUTION_CONTEXT_ROUTE_SUBPATH as w, type EgressGrant as x, type EgressGrantAuditBody as y, type EgressGrantBodyParseResult as z };
|