Skip to main content

Interface: WhenConfig<TInput, TOutput>

Defined in: packages/core/src/pipeline/types.ts:42

Configuration for conditional branching step.

Example

const config: WhenConfig<BlogPost, EnrichedPost> = {
condition: isHighQuality,
onPass: publishPost,
onFail: flagForReview
};

Type Parameters

TInput

TInput

Input type for the condition and branches

TOutput

TOutput

Output type from both branches

Properties

condition

condition: string | Processable<TInput, boolean> | ((input) => boolean | Promise<boolean>)

Defined in: packages/core/src/pipeline/types.ts:49

Condition to evaluate. Can be:

  • String: Natural language condition (auto-creates BaleybotConditional)
  • Function: Evaluates to boolean
  • Processable<TInput, boolean>: Returns boolean result

onFail?

optional onFail?: Processable<TInput, TOutput> | ((input) => TOutput | Promise<TOutput>)

Defined in: packages/core/src/pipeline/types.ts:55

Optional processor to execute when condition is false. If not provided, input passes through unchanged.


onPass

onPass: Processable<TInput, TOutput> | ((input) => TOutput | Promise<TOutput>)

Defined in: packages/core/src/pipeline/types.ts:52

Processor to execute when condition is true