Skip to content

flowDefinitionSchema

const flowDefinitionSchema: ZodObject<{
description: ZodString;
gates: ZodOptional<ZodArray<ZodDiscriminatedUnion<[ZodObject<{
id: ZodString;
kind: ZodLiteral<"predicate">;
severity: ZodEnum<{
advisory: "advisory";
blocking: "blocking";
}>;
when: ZodType<Predicate, unknown, $ZodTypeInternals<Predicate, unknown>>;
}, $strict>, ZodObject<{
id: ZodString;
inputs: ZodArray<ZodString>;
kind: ZodLiteral<"judge">;
rubric: ZodOptional<ZodString>;
severity: ZodEnum<{
advisory: "advisory";
blocking: "blocking";
}>;
}, $strict>], "kind">>>;
inputSchema: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
name: ZodString;
nodes: ZodArray<ZodUnion<readonly [ZodObject<{
id: ZodString;
instructions: ZodOptional<ZodString>;
kind: ZodLiteral<"reply">;
next: ZodOptional<ZodUnion<readonly [ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodLiteral<...>]>>;
response: ZodObject<{
template: ZodString;
}, $strict>;
routes: ZodOptional<ZodArray<ZodObject<{
to: ...;
when: ...;
whenSource: ...;
}, $strict>>>;
}, $strict>, ZodObject<{
generate: ZodLiteral<true>;
id: ZodString;
instructions: ZodOptional<ZodString>;
kind: ZodLiteral<"reply">;
next: ZodOptional<ZodUnion<readonly [ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodLiteral<...>]>>;
routes: ZodOptional<ZodArray<ZodObject<{
to: ...;
when: ...;
whenSource: ...;
}, $strict>>>;
}, $strict>, ZodObject<{
ask: ZodOptional<ZodString>;
assign: ZodOptional<ZodRecord<ZodString, ZodString>>;
choices: ZodOptional<ZodArray<ZodObject<{
description: ...;
flow: ...;
id: ...;
label: ...;
url: ...;
}, $strict>>>;
id: ZodString;
instructions: ZodOptional<ZodString>;
kind: ZodLiteral<"collect">;
maxTurns: ZodOptional<ZodNumber>;
next: ZodOptional<ZodUnion<readonly [ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodLiteral<...>]>>;
required: ZodOptional<ZodArray<ZodString>>;
resolvers: ZodOptional<ZodArray<ZodDiscriminatedUnion<[..., ..., ...], "kind">>>;
schema: ZodRecord<ZodString, ZodUnknown>;
verbatimFields: ZodOptional<ZodArray<ZodString>>;
}, $strict>, ZodObject<{
approval: ZodOptional<ZodLiteral<true>>;
args: ZodOptional<ZodRecord<ZodString, ZodUnion<readonly [..., ..., ...]>>>;
bind: ZodOptional<ZodString>;
id: ZodString;
kind: ZodLiteral<"action">;
next: ZodOptional<ZodUnion<readonly [ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodLiteral<...>]>>;
routes: ZodOptional<ZodArray<ZodObject<{
to: ...;
when: ...;
whenSource: ...;
}, $strict>>>;
tool: ZodString;
}, $strict>, ZodObject<{
choices: ZodOptional<ZodArray<ZodObject<{
description: ...;
flow: ...;
id: ...;
label: ...;
url: ...;
}, $strict>>>;
confirmGate: ZodOptional<ZodObject<{
onAmbiguous: ZodOptional<...>;
onConfirm: ZodUnion<...>;
onDecline: ZodUnion<...>;
}, $strict>>;
id: ZodString;
instructions: ZodOptional<ZodString>;
kind: ZodLiteral<"decide">;
otherwise: ZodOptional<ZodUnion<readonly [ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodObject<..., ...>, ZodLiteral<...>]>>;
routes: ZodOptional<ZodArray<ZodObject<{
to: ...;
when: ...;
whenSource: ...;
}, $strict>>>;
schema: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
}, $strict>]>>;
outputSchema: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
start: ZodString;
}, $strict>;