@teamkeel/functions-runtime 0.459.0 → 0.460.1

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/index.d.cts CHANGED
@@ -6,6 +6,46 @@ import { StandardSchemaV1 } from '@standard-schema/spec';
6
6
  import { LanguageModel } from 'ai';
7
7
  export { z } from 'zod';
8
8
 
9
+ interface RecipientUser {
10
+ id: string;
11
+ email?: string | null;
12
+ }
13
+ interface RecipientIdentity {
14
+ id: string;
15
+ email?: string | null;
16
+ }
17
+ interface EmailActionButton {
18
+ label: string;
19
+ url: string;
20
+ }
21
+ interface StructuredEmailContent {
22
+ title?: string;
23
+ body: string;
24
+ actions?: EmailActionButton[];
25
+ }
26
+ type EmailContent = string | StructuredEmailContent;
27
+ interface EmailRecipientGroup {
28
+ emails?: string | string[];
29
+ users?: string | RecipientUser | Array<string | RecipientUser>;
30
+ identities?: string | RecipientIdentity | Array<string | RecipientIdentity>;
31
+ teams?: string | string[];
32
+ }
33
+ interface EmailRecipients {
34
+ to: EmailRecipientGroup;
35
+ cc?: EmailRecipientGroup;
36
+ bcc?: EmailRecipientGroup;
37
+ }
38
+ interface EmailInput {
39
+ recipients: EmailRecipients;
40
+ subject: string;
41
+ content: EmailContent;
42
+ }
43
+
44
+ interface NotifyApi {
45
+ email(input: EmailInput): Promise<string>;
46
+ }
47
+ declare function createNotifier(): NotifyApi;
48
+
9
49
  declare namespace ErrorPresets {
10
50
  export { NotFoundError$1 as NotFound };
11
51
  export { BadRequestError as BadRequest };
@@ -169,13 +209,14 @@ declare class ModelAPI {
169
209
  * @param {Function} _ Used to be a function that returns the default values for a row in this table. No longer used.
170
210
  * @param {TableConfigMap} tableConfigMap
171
211
  */
172
- constructor(tableName: string, _: Function, tableConfigMap?: TableConfigMap);
212
+ constructor(tableName: string, _: Function, tableConfigMap?: TableConfigMap, fileFieldsMap?: {});
173
213
  _tableName: string;
174
214
  _tableConfigMap: {
175
215
  [x: string]: {
176
216
  [x: string]: RelationshipConfig;
177
217
  };
178
218
  };
219
+ _fileFields: any;
179
220
  _modelName: any;
180
221
  create(values: any): Promise<any>;
181
222
  findOne(where?: {}): Promise<any>;
@@ -183,6 +224,8 @@ declare class ModelAPI {
183
224
  update(where: any, values: any): Promise<any>;
184
225
  delete(where: any): Promise<any>;
185
226
  where(where: any): QueryBuilder;
227
+ _selectExistingFileValues(where: any, fileColumns: any): Promise<{}[]>;
228
+ _deferReplacedFiles(existingRows: any, fileColumns: any, newRow: any): void;
186
229
  }
187
230
 
188
231
  /**
@@ -449,6 +492,10 @@ declare class FlowRun$1 {
449
492
  cancel(): Promise<FlowRun$1>;
450
493
  }
451
494
 
495
+ declare function createIntegrationServer(name: any, identity: any): {
496
+ do: (request: any) => Promise<unknown>;
497
+ };
498
+
452
499
  interface RequestHeadersMap {
453
500
  [key: string]: string;
454
501
  }
@@ -564,7 +611,10 @@ declare class File extends InlineFile {
564
611
  get isPublic(): boolean;
565
612
  read(): Promise<Buffer>;
566
613
  store(expires?: Date | null): Promise<File>;
567
- getPresignedUrl(): Promise<URL>;
614
+ getPresignedUrl(options?: {
615
+ contentDisposition?: "inline" | "attachment";
616
+ filename?: string;
617
+ }): Promise<URL>;
568
618
  getPresignedUploadUrl(): Promise<URL>;
569
619
  toDbRecord(): FileDbRecord;
570
620
  toJSON(): FileDbRecord;
@@ -1468,6 +1518,22 @@ interface FlowContext<C extends FlowConfig, E, S, Id, I, H extends NullableHardw
1468
1518
  secrets: S;
1469
1519
  identity: Id;
1470
1520
  trace: TraceAPI;
1521
+ module(name: string): {
1522
+ secret(key: string): string;
1523
+ server: {
1524
+ do(request: {
1525
+ method?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
1526
+ path: string;
1527
+ query?: Record<string, string | string[]>;
1528
+ headers?: Record<string, string>;
1529
+ body?: unknown;
1530
+ }): Promise<{
1531
+ status: number;
1532
+ headers: Record<string, string[]>;
1533
+ body: unknown;
1534
+ }>;
1535
+ };
1536
+ };
1471
1537
  }
1472
1538
  type NullableHardware = Hardware | undefined;
1473
1539
  type Hardware = {
@@ -1476,9 +1542,13 @@ type Hardware = {
1476
1542
  interface Printer {
1477
1543
  name: string;
1478
1544
  }
1479
- type JsonSerializable = string | number | boolean | null | JsonSerializable[] | {
1480
- [key: string]: JsonSerializable;
1545
+ type JsonValue$1<T> = T extends string | number | boolean | null ? T : T extends (...args: any[]) => any ? never : T extends (infer E)[] ? JsonValue$1<E>[] : T extends object ? keyof T extends never ? never : {
1546
+ [K in keyof T]: JsonValue$1<T[K]>;
1547
+ } : never;
1548
+ type Serializable<T> = string | number | boolean | null | void | {
1549
+ [K in keyof T]: JsonValue$1<T[K]>;
1481
1550
  };
1551
+ type StepReturn<R> = [R] extends [JsonValue$1<R> | void] ? R : JsonValue$1<R>;
1482
1552
  type StepOptions<C extends FlowConfig> = {
1483
1553
  stage?: ExtractStageKeys<C>;
1484
1554
  /** Number of times to retry the step after it fails. Defaults to 4. */
@@ -1491,18 +1561,18 @@ type StepOptions<C extends FlowConfig> = {
1491
1561
  onFailure?: () => Promise<void> | void;
1492
1562
  };
1493
1563
  type Step<C extends FlowConfig> = {
1494
- <R extends JsonSerializable | void>(
1564
+ <R extends Serializable<R>>(
1495
1565
  /** The unique name of this step. */
1496
1566
  name: string,
1497
1567
  /** Configuration options for the step. */
1498
1568
  options: StepOptions<C>,
1499
1569
  /** The step function to execute. */
1500
- fn: StepFunction<C, R>): Promise<R>;
1501
- <R extends JsonSerializable | void>(
1570
+ fn: StepFunction<C, StepReturn<R>>): Promise<R>;
1571
+ <R extends Serializable<R>>(
1502
1572
  /** The unique name of this step. */
1503
1573
  name: string,
1504
1574
  /** The step function to execute. */
1505
- fn: StepFunction<C, R>): Promise<R>;
1575
+ fn: StepFunction<C, StepReturn<R>>): Promise<R>;
1506
1576
  };
1507
1577
  type StepArgs<C extends FlowConfig> = {
1508
1578
  attempt: number;
@@ -1540,6 +1610,7 @@ type StageConfigObject = {
1540
1610
  initiallyHidden?: boolean;
1541
1611
  };
1542
1612
  type StageConfig = string | StageConfigObject;
1613
+ declare function insertNewStep(db: Kysely<any>, runId: string, name: string, stage: string | undefined): Promise<void>;
1543
1614
  declare function createFlowContext<C extends FlowConfig, E, S, Id, I, H extends NullableHardware>(runId: string, data: any, action: string | null, callback: string | null, element: string | null, spanId: string, ctx: {
1544
1615
  env: E;
1545
1616
  now: () => Date;
@@ -1547,6 +1618,7 @@ declare function createFlowContext<C extends FlowConfig, E, S, Id, I, H extends
1547
1618
  identity: Id;
1548
1619
  trace: TraceAPI;
1549
1620
  engine?: TurnEngine;
1621
+ module: FlowContext<C, E, S, Id, I, H>["module"];
1550
1622
  }): FlowContext<C, E, S, Id, I, H>;
1551
1623
 
1552
1624
  type JsonValue = string | number | boolean | null | JsonValue[] | {
@@ -1677,6 +1749,8 @@ declare namespace experimental {
1677
1749
  declare const createTraceAPI: typeof createTraceAPI$1;
1678
1750
  declare function ksuid(): string;
1679
1751
 
1752
+ declare const notify: NotifyApi;
1753
+
1680
1754
  type IDWhereCondition = {
1681
1755
  equals?: string | null;
1682
1756
  notEquals?: string | null;
@@ -1929,4 +2003,4 @@ type SignedLinkResult = {
1929
2003
  };
1930
2004
  };
1931
2005
 
1932
- export { type BooleanArrayQueryWhereCondition, type BooleanArrayWhereCondition, type BooleanWhereCondition, type ContextAPI, type DateArrayQueryWhereCondition, type DateArrayWhereCondition, type DateQueryInput, type DateWhereCondition, Duration, type DurationString, type DurationWhereCondition, ErrorPresets, type Errors, type ExtractStageKeys, File, type FlowConfig, type FlowConfigAPI, type FlowContext, type FlowFunction, type FlowListOptions, type FlowListResult, type FlowRun, type FlowRunStatus, type FlowRunStep, FlowsAPI, type FuncWithConfig, type FunctionConfig, type Hardware, type IDWhereCondition, InlineFile, type ListResult, ModelAPI, NonRetriableError, type NullableHardware, type NumberArrayQueryWhereCondition, type NumberArrayWhereCondition, type NumberWhereCondition, PERMISSION_STATE, type PageInfo, type PartialPageInfo, Permissions, type Printer, type RelativeDateString, RequestHeaders, type Response, RetryBackoffExponential, RetryBackoffLinear, RetryConstant, STEP_STATUS, STEP_TYPE, Signature, type SignedLinkOptions, type SignedLinkResult, type SortDirection, type Step, type StringArrayQueryWhereCondition, type StringArrayWhereCondition, type StringWhereCondition, type Task, TaskAPI, type TaskCreateOptions, type TaskFlowFunction, type TaskStatus, type TimestampQueryInput, type TraceAPI, type TraceAttributeValue, type TraceAttributes, type UI, type UIApiResponses, checkBuiltInPermissions, createFlowContext, createTraceAPI, experimental, handleFlow, handleJob, handleRequest, handleRoute, handleSubscriber, ksuid, tracing, useDatabase };
2006
+ export { type BooleanArrayQueryWhereCondition, type BooleanArrayWhereCondition, type BooleanWhereCondition, type ContextAPI, type DateArrayQueryWhereCondition, type DateArrayWhereCondition, type DateQueryInput, type DateWhereCondition, Duration, type DurationString, type DurationWhereCondition, type EmailContent, type EmailInput, type EmailRecipientGroup, type EmailRecipients, ErrorPresets, type Errors, type ExtractStageKeys, File, type FlowConfig, type FlowConfigAPI, type FlowContext, type FlowFunction, type FlowListOptions, type FlowListResult, type FlowRun, type FlowRunStatus, type FlowRunStep, FlowsAPI, type FuncWithConfig, type FunctionConfig, type Hardware, type IDWhereCondition, InlineFile, type ListResult, ModelAPI, NonRetriableError, type NotifyApi, type NullableHardware, type NumberArrayQueryWhereCondition, type NumberArrayWhereCondition, type NumberWhereCondition, PERMISSION_STATE, type PageInfo, type PartialPageInfo, Permissions, type Printer, type RecipientIdentity, type RecipientUser, type RelativeDateString, RequestHeaders, type Response, RetryBackoffExponential, RetryBackoffLinear, RetryConstant, STEP_STATUS, STEP_TYPE, Signature, type SignedLinkOptions, type SignedLinkResult, type SortDirection, type Step, type StringArrayQueryWhereCondition, type StringArrayWhereCondition, type StringWhereCondition, type Task, TaskAPI, type TaskCreateOptions, type TaskFlowFunction, type TaskStatus, type TimestampQueryInput, type TraceAPI, type TraceAttributeValue, type TraceAttributes, type UI, type UIApiResponses, checkBuiltInPermissions, createFlowContext, createIntegrationServer, createNotifier, createTraceAPI, experimental, handleFlow, handleJob, handleRequest, handleRoute, handleSubscriber, insertNewStep, ksuid, notify, tracing, useDatabase };
package/dist/index.d.ts CHANGED
@@ -6,6 +6,46 @@ import { StandardSchemaV1 } from '@standard-schema/spec';
6
6
  import { LanguageModel } from 'ai';
7
7
  export { z } from 'zod';
8
8
 
9
+ interface RecipientUser {
10
+ id: string;
11
+ email?: string | null;
12
+ }
13
+ interface RecipientIdentity {
14
+ id: string;
15
+ email?: string | null;
16
+ }
17
+ interface EmailActionButton {
18
+ label: string;
19
+ url: string;
20
+ }
21
+ interface StructuredEmailContent {
22
+ title?: string;
23
+ body: string;
24
+ actions?: EmailActionButton[];
25
+ }
26
+ type EmailContent = string | StructuredEmailContent;
27
+ interface EmailRecipientGroup {
28
+ emails?: string | string[];
29
+ users?: string | RecipientUser | Array<string | RecipientUser>;
30
+ identities?: string | RecipientIdentity | Array<string | RecipientIdentity>;
31
+ teams?: string | string[];
32
+ }
33
+ interface EmailRecipients {
34
+ to: EmailRecipientGroup;
35
+ cc?: EmailRecipientGroup;
36
+ bcc?: EmailRecipientGroup;
37
+ }
38
+ interface EmailInput {
39
+ recipients: EmailRecipients;
40
+ subject: string;
41
+ content: EmailContent;
42
+ }
43
+
44
+ interface NotifyApi {
45
+ email(input: EmailInput): Promise<string>;
46
+ }
47
+ declare function createNotifier(): NotifyApi;
48
+
9
49
  declare namespace ErrorPresets {
10
50
  export { NotFoundError$1 as NotFound };
11
51
  export { BadRequestError as BadRequest };
@@ -169,13 +209,14 @@ declare class ModelAPI {
169
209
  * @param {Function} _ Used to be a function that returns the default values for a row in this table. No longer used.
170
210
  * @param {TableConfigMap} tableConfigMap
171
211
  */
172
- constructor(tableName: string, _: Function, tableConfigMap?: TableConfigMap);
212
+ constructor(tableName: string, _: Function, tableConfigMap?: TableConfigMap, fileFieldsMap?: {});
173
213
  _tableName: string;
174
214
  _tableConfigMap: {
175
215
  [x: string]: {
176
216
  [x: string]: RelationshipConfig;
177
217
  };
178
218
  };
219
+ _fileFields: any;
179
220
  _modelName: any;
180
221
  create(values: any): Promise<any>;
181
222
  findOne(where?: {}): Promise<any>;
@@ -183,6 +224,8 @@ declare class ModelAPI {
183
224
  update(where: any, values: any): Promise<any>;
184
225
  delete(where: any): Promise<any>;
185
226
  where(where: any): QueryBuilder;
227
+ _selectExistingFileValues(where: any, fileColumns: any): Promise<{}[]>;
228
+ _deferReplacedFiles(existingRows: any, fileColumns: any, newRow: any): void;
186
229
  }
187
230
 
188
231
  /**
@@ -449,6 +492,10 @@ declare class FlowRun$1 {
449
492
  cancel(): Promise<FlowRun$1>;
450
493
  }
451
494
 
495
+ declare function createIntegrationServer(name: any, identity: any): {
496
+ do: (request: any) => Promise<unknown>;
497
+ };
498
+
452
499
  interface RequestHeadersMap {
453
500
  [key: string]: string;
454
501
  }
@@ -564,7 +611,10 @@ declare class File extends InlineFile {
564
611
  get isPublic(): boolean;
565
612
  read(): Promise<Buffer>;
566
613
  store(expires?: Date | null): Promise<File>;
567
- getPresignedUrl(): Promise<URL>;
614
+ getPresignedUrl(options?: {
615
+ contentDisposition?: "inline" | "attachment";
616
+ filename?: string;
617
+ }): Promise<URL>;
568
618
  getPresignedUploadUrl(): Promise<URL>;
569
619
  toDbRecord(): FileDbRecord;
570
620
  toJSON(): FileDbRecord;
@@ -1468,6 +1518,22 @@ interface FlowContext<C extends FlowConfig, E, S, Id, I, H extends NullableHardw
1468
1518
  secrets: S;
1469
1519
  identity: Id;
1470
1520
  trace: TraceAPI;
1521
+ module(name: string): {
1522
+ secret(key: string): string;
1523
+ server: {
1524
+ do(request: {
1525
+ method?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
1526
+ path: string;
1527
+ query?: Record<string, string | string[]>;
1528
+ headers?: Record<string, string>;
1529
+ body?: unknown;
1530
+ }): Promise<{
1531
+ status: number;
1532
+ headers: Record<string, string[]>;
1533
+ body: unknown;
1534
+ }>;
1535
+ };
1536
+ };
1471
1537
  }
1472
1538
  type NullableHardware = Hardware | undefined;
1473
1539
  type Hardware = {
@@ -1476,9 +1542,13 @@ type Hardware = {
1476
1542
  interface Printer {
1477
1543
  name: string;
1478
1544
  }
1479
- type JsonSerializable = string | number | boolean | null | JsonSerializable[] | {
1480
- [key: string]: JsonSerializable;
1545
+ type JsonValue$1<T> = T extends string | number | boolean | null ? T : T extends (...args: any[]) => any ? never : T extends (infer E)[] ? JsonValue$1<E>[] : T extends object ? keyof T extends never ? never : {
1546
+ [K in keyof T]: JsonValue$1<T[K]>;
1547
+ } : never;
1548
+ type Serializable<T> = string | number | boolean | null | void | {
1549
+ [K in keyof T]: JsonValue$1<T[K]>;
1481
1550
  };
1551
+ type StepReturn<R> = [R] extends [JsonValue$1<R> | void] ? R : JsonValue$1<R>;
1482
1552
  type StepOptions<C extends FlowConfig> = {
1483
1553
  stage?: ExtractStageKeys<C>;
1484
1554
  /** Number of times to retry the step after it fails. Defaults to 4. */
@@ -1491,18 +1561,18 @@ type StepOptions<C extends FlowConfig> = {
1491
1561
  onFailure?: () => Promise<void> | void;
1492
1562
  };
1493
1563
  type Step<C extends FlowConfig> = {
1494
- <R extends JsonSerializable | void>(
1564
+ <R extends Serializable<R>>(
1495
1565
  /** The unique name of this step. */
1496
1566
  name: string,
1497
1567
  /** Configuration options for the step. */
1498
1568
  options: StepOptions<C>,
1499
1569
  /** The step function to execute. */
1500
- fn: StepFunction<C, R>): Promise<R>;
1501
- <R extends JsonSerializable | void>(
1570
+ fn: StepFunction<C, StepReturn<R>>): Promise<R>;
1571
+ <R extends Serializable<R>>(
1502
1572
  /** The unique name of this step. */
1503
1573
  name: string,
1504
1574
  /** The step function to execute. */
1505
- fn: StepFunction<C, R>): Promise<R>;
1575
+ fn: StepFunction<C, StepReturn<R>>): Promise<R>;
1506
1576
  };
1507
1577
  type StepArgs<C extends FlowConfig> = {
1508
1578
  attempt: number;
@@ -1540,6 +1610,7 @@ type StageConfigObject = {
1540
1610
  initiallyHidden?: boolean;
1541
1611
  };
1542
1612
  type StageConfig = string | StageConfigObject;
1613
+ declare function insertNewStep(db: Kysely<any>, runId: string, name: string, stage: string | undefined): Promise<void>;
1543
1614
  declare function createFlowContext<C extends FlowConfig, E, S, Id, I, H extends NullableHardware>(runId: string, data: any, action: string | null, callback: string | null, element: string | null, spanId: string, ctx: {
1544
1615
  env: E;
1545
1616
  now: () => Date;
@@ -1547,6 +1618,7 @@ declare function createFlowContext<C extends FlowConfig, E, S, Id, I, H extends
1547
1618
  identity: Id;
1548
1619
  trace: TraceAPI;
1549
1620
  engine?: TurnEngine;
1621
+ module: FlowContext<C, E, S, Id, I, H>["module"];
1550
1622
  }): FlowContext<C, E, S, Id, I, H>;
1551
1623
 
1552
1624
  type JsonValue = string | number | boolean | null | JsonValue[] | {
@@ -1677,6 +1749,8 @@ declare namespace experimental {
1677
1749
  declare const createTraceAPI: typeof createTraceAPI$1;
1678
1750
  declare function ksuid(): string;
1679
1751
 
1752
+ declare const notify: NotifyApi;
1753
+
1680
1754
  type IDWhereCondition = {
1681
1755
  equals?: string | null;
1682
1756
  notEquals?: string | null;
@@ -1929,4 +2003,4 @@ type SignedLinkResult = {
1929
2003
  };
1930
2004
  };
1931
2005
 
1932
- export { type BooleanArrayQueryWhereCondition, type BooleanArrayWhereCondition, type BooleanWhereCondition, type ContextAPI, type DateArrayQueryWhereCondition, type DateArrayWhereCondition, type DateQueryInput, type DateWhereCondition, Duration, type DurationString, type DurationWhereCondition, ErrorPresets, type Errors, type ExtractStageKeys, File, type FlowConfig, type FlowConfigAPI, type FlowContext, type FlowFunction, type FlowListOptions, type FlowListResult, type FlowRun, type FlowRunStatus, type FlowRunStep, FlowsAPI, type FuncWithConfig, type FunctionConfig, type Hardware, type IDWhereCondition, InlineFile, type ListResult, ModelAPI, NonRetriableError, type NullableHardware, type NumberArrayQueryWhereCondition, type NumberArrayWhereCondition, type NumberWhereCondition, PERMISSION_STATE, type PageInfo, type PartialPageInfo, Permissions, type Printer, type RelativeDateString, RequestHeaders, type Response, RetryBackoffExponential, RetryBackoffLinear, RetryConstant, STEP_STATUS, STEP_TYPE, Signature, type SignedLinkOptions, type SignedLinkResult, type SortDirection, type Step, type StringArrayQueryWhereCondition, type StringArrayWhereCondition, type StringWhereCondition, type Task, TaskAPI, type TaskCreateOptions, type TaskFlowFunction, type TaskStatus, type TimestampQueryInput, type TraceAPI, type TraceAttributeValue, type TraceAttributes, type UI, type UIApiResponses, checkBuiltInPermissions, createFlowContext, createTraceAPI, experimental, handleFlow, handleJob, handleRequest, handleRoute, handleSubscriber, ksuid, tracing, useDatabase };
2006
+ export { type BooleanArrayQueryWhereCondition, type BooleanArrayWhereCondition, type BooleanWhereCondition, type ContextAPI, type DateArrayQueryWhereCondition, type DateArrayWhereCondition, type DateQueryInput, type DateWhereCondition, Duration, type DurationString, type DurationWhereCondition, type EmailContent, type EmailInput, type EmailRecipientGroup, type EmailRecipients, ErrorPresets, type Errors, type ExtractStageKeys, File, type FlowConfig, type FlowConfigAPI, type FlowContext, type FlowFunction, type FlowListOptions, type FlowListResult, type FlowRun, type FlowRunStatus, type FlowRunStep, FlowsAPI, type FuncWithConfig, type FunctionConfig, type Hardware, type IDWhereCondition, InlineFile, type ListResult, ModelAPI, NonRetriableError, type NotifyApi, type NullableHardware, type NumberArrayQueryWhereCondition, type NumberArrayWhereCondition, type NumberWhereCondition, PERMISSION_STATE, type PageInfo, type PartialPageInfo, Permissions, type Printer, type RecipientIdentity, type RecipientUser, type RelativeDateString, RequestHeaders, type Response, RetryBackoffExponential, RetryBackoffLinear, RetryConstant, STEP_STATUS, STEP_TYPE, Signature, type SignedLinkOptions, type SignedLinkResult, type SortDirection, type Step, type StringArrayQueryWhereCondition, type StringArrayWhereCondition, type StringWhereCondition, type Task, TaskAPI, type TaskCreateOptions, type TaskFlowFunction, type TaskStatus, type TimestampQueryInput, type TraceAPI, type TraceAttributeValue, type TraceAttributes, type UI, type UIApiResponses, checkBuiltInPermissions, createFlowContext, createIntegrationServer, createNotifier, createTraceAPI, experimental, handleFlow, handleJob, handleRequest, handleRoute, handleSubscriber, insertNewStep, ksuid, notify, tracing, useDatabase };