/** * Log streaming implementation using AsyncIterable. * * Features: * - Real-time log streaming with polling * - Automatic completion when build finishes * - Natural backpressure via async iteration * - Configurable polling interval */ import type { Logger } from 'pino'; import type { LogEntry } from '../types/logs.js'; import type { LogStreamOptions, LogFetcher } from './types.js'; export declare class LogStream implements AsyncIterable { private readonly buildId; private readonly fetcher; private readonly pollingIntervalMs; private readonly logger; private offset; private isComplete; constructor(buildId: string, fetcher: LogFetcher, logger: Logger, options?: LogStreamOptions); [Symbol.asyncIterator](): AsyncIterator; private fetchNextChunk; private checkBuildCompletion; } /** * Create a log stream for a build. */ export declare function createLogStream(buildId: string, fetcher: LogFetcher, logger: Logger, options?: LogStreamOptions): AsyncIterable; /** * Collect all log entries from a stream. * Useful for testing or when you need all logs at once. */ export declare function collectLogs(stream: AsyncIterable): Promise; //# sourceMappingURL=log-stream.d.ts.map