@just-every/ensemble
Version:
LLM provider abstraction layer with unified streaming interface
16 lines • 888 B
TypeScript
import { ProviderStreamEvent } from '../types/types.js';
export interface StreamHandlerOptions {
pauseCheckInterval?: number;
abortSignal?: AbortSignal;
providerName?: string;
modelName?: string;
}
export declare class StreamHandler<TEvent> {
private options;
constructor(options?: StreamHandlerOptions);
handleStream(stream: AsyncIterable<TEvent>, transformer: (chunk: TEvent) => ProviderStreamEvent | ProviderStreamEvent[] | null): AsyncGenerator<ProviderStreamEvent>;
}
export declare function createStreamHandler<TEvent>(options?: StreamHandlerOptions): StreamHandler<TEvent>;
export declare function createMessageDeltaTransformer(messageId: string): (content: string) => ProviderStreamEvent;
export declare function createMessageCompleteTransformer(messageId: string): (content: string) => ProviderStreamEvent;
//# sourceMappingURL=stream_handler.d.ts.map