selvedge
Version:
A type-safe, declarative DSL for building robust, composable LLM prompts and programs in TypeScript. Selvedge simplifies prompt engineering, structured output, and multi-model orchestration.
45 lines • 2.03 kB
TypeScript
import { FlowPipeline, FlowStep, FlowContextStep, FlowContextPipeline } from './types';
/**
* Create a flow pipeline from a series of steps
* @param steps Steps to include in the pipeline
* @returns A flow pipeline
*/
export declare function flow<TInput, TOutput>(...steps: Array<FlowStep<any, any>>): FlowPipeline<TInput, TOutput>;
/**
* Create a flow pipeline that maintains context between steps
* @param steps Steps to include in the pipeline
* @returns A flow pipeline with context
*/
export declare function flowWithContext<TInput, TOutput>(...steps: Array<FlowContextStep<any, any>>): FlowContextPipeline<TInput, TOutput>;
/**
* Create a validation step
* @param validator Function to validate the input
* @returns A flow step that validates input
*/
export declare function validate<T>(validator: (input: T) => T | Promise<T>): FlowStep<T, T>;
/**
* Create a filter step
* @param predicate Function to determine if input should be filtered
* @returns A flow step that filters input
*/
export declare function filter<T>(predicate: (input: T) => boolean | Promise<boolean>): FlowStep<T, T>;
/**
* Create a parallel execution step
* @param operations Map of operations to execute in parallel
* @returns A flow step that executes operations in parallel
*/
export declare function parallel<TInput, TOutput extends Record<string, any>>(operations: Record<string, (input: TInput) => any>): FlowStep<TInput, TOutput>;
/**
* Create a transformation step
* @param transformer Function to transform the input
* @returns A flow step that transforms input
*/
export declare function transform<TInput, TOutput>(transformer: (input: TInput) => TOutput | Promise<TOutput>): FlowStep<TInput, TOutput>;
/**
* Load a flow from storage
* @param name Name of the flow to load
* @param version Optional version to load
* @returns The loaded flow pipeline
*/
export declare function loadFlow<TInput, TOutput>(name: string, version?: string): Promise<FlowPipeline<TInput, TOutput>>;
//# sourceMappingURL=index.d.ts.map