UNPKG

@llamaindex/core

Version:
52 lines (48 loc) 1.78 kB
declare class WorkflowEvent<T extends Record<string, any> = any> { data: T; constructor(data: T); toString(): string; } type EventTypes<T extends Record<string, any> = any> = new (data: T) => WorkflowEvent<T>; declare class StartEvent<T = string> extends WorkflowEvent<{ input: T; }> { } declare class StopEvent<T = string> extends WorkflowEvent<{ result: T; }> { } type StepFunction<T extends WorkflowEvent = WorkflowEvent> = (context: Context, ev: T) => Promise<WorkflowEvent | void>; type EventTypeParam = EventTypes | EventTypes[]; declare class Workflow { #private; constructor(params?: { verbose?: boolean; timeout?: number; validate?: boolean; ignoreDeprecatedWarning?: boolean; }); addStep<T extends WorkflowEvent>(eventType: EventTypeParam, method: StepFunction<T>, params?: { outputs?: EventTypeParam; }): void; hasStep(step: StepFunction<any>): boolean; streamEvents(): AsyncGenerator<WorkflowEvent, void>; validate(): void; run<T = string>(event: StartEvent<T> | string): Promise<StopEvent>; } declare class Context { #private; running: boolean; constructor(params: { workflow: Workflow; verbose?: boolean; }); set(key: string, value: any): void; get(key: string, defaultValue?: any): any; collectEvents(event: WorkflowEvent, expected: EventTypes[]): WorkflowEvent[] | null; sendEvent(message: WorkflowEvent, step?: StepFunction): void; getNextEvent(step: StepFunction): WorkflowEvent | undefined; writeEventToStream(event: WorkflowEvent): void; streamEvents(): AsyncGenerator<WorkflowEvent, void, void>; } export { Context, type EventTypes, StartEvent, type StepFunction, StopEvent, Workflow, WorkflowEvent };