UNPKG

gpt-research

Version:

Autonomous AI research agent that conducts comprehensive research on any topic and generates detailed reports with citations

108 lines 3.08 kB
/** * Streaming utilities for handling real-time data */ /** * Parse Server-Sent Events stream */ export declare function parseSSEStream(data: string): string[]; /** * Stream processor for handling chunked data */ export declare class StreamProcessor { private buffer; private decoder; /** * Process a chunk of data */ processChunk(chunk: Uint8Array): string[]; /** * Get any remaining buffered data */ flush(): string[]; /** * Reset the processor */ reset(): void; } /** * Create a readable stream from async generator */ export declare function createReadableStream<T>(generator: AsyncGenerator<T>): ReadableStream<T>; /** * Convert async iterator to array */ export declare function iteratorToArray<T>(iterator: AsyncIterator<T>): Promise<T[]>; /** * Merge multiple async iterators */ export declare function mergeAsyncIterators<T>(...iterators: AsyncIterator<T>[]): AsyncGenerator<T>; /** * Transform stream with backpressure support */ export declare class TransformStream<T, R> { private transformer; constructor(transformer: (value: T) => Promise<R> | R); transform(source: AsyncIterable<T>): AsyncGenerator<R>; } /** * Batch stream items */ export declare function batchStream<T>(source: AsyncIterable<T>, batchSize: number): AsyncGenerator<T[]>; /** * Rate limit stream */ export declare function rateLimitStream<T>(source: AsyncIterable<T>, itemsPerSecond: number): AsyncGenerator<T>; /** * Filter stream */ export declare function filterStream<T>(source: AsyncIterable<T>, predicate: (value: T) => boolean | Promise<boolean>): AsyncGenerator<T>; /** * Map stream */ export declare function mapStream<T, R>(source: AsyncIterable<T>, mapper: (value: T) => R | Promise<R>): AsyncGenerator<R>; /** * Reduce stream */ export declare function reduceStream<T, R>(source: AsyncIterable<T>, reducer: (acc: R, value: T) => R | Promise<R>, initialValue: R): Promise<R>; /** * Timeout for async iterators */ export declare function timeoutStream<T>(source: AsyncIterable<T>, timeout: number): AsyncGenerator<T>; /** * Buffer stream items */ export declare class StreamBuffer<T> { private buffer; private maxSize; constructor(maxSize?: number); push(item: T): void; getAll(): T[]; getLast(n: number): T[]; clear(): void; get size(): number; } /** * Progress tracking for long-running operations */ export interface ProgressInfo { current: number; total: number; percentage: number; message?: string; eta?: number; } export declare class ProgressTracker { private current; private total; private startTime; private lastUpdate; private onProgress?; constructor(total: number, onProgress?: (progress: ProgressInfo) => void); update(current: number, message?: string): void; updateProgress(percentage: number, message?: string): void; increment(message?: string): void; reset(): void; getProgress(): ProgressInfo; getLastUpdate(): number; } //# sourceMappingURL=stream.d.ts.map