///
///
import { ChildProcess } from 'child_process';
import { Interface } from 'readline';
import { Observable, Subject, Subscription } from 'rxjs';
import { LogDb, LogRecord } from './logdb';
export declare class LogStream = LogStream.Source, K = T extends LogStream.Source ? U : never> {
buffer: string[];
logdb: LogDb;
source: T;
logsObservable: Observable;
logsSubject: Subject;
constructor(source: T);
static fromProcess(execPath: string, params?: string[]): LogStream;
static fromObservable(name: string, observable: Observable): LogStream, T>;
dumpToFile(path: string): Observable;
}
export declare namespace LogStream {
type Source = Source.ObservableSource | Source.Process;
namespace Source {
interface ObservableSource {
sType: 'observable';
name: string;
observable: Observable;
subscription?: Subscription;
}
interface Process {
sType: 'process';
process: ChildProcess;
running: boolean;
stdoutInterface: Interface;
stderrInterface: Interface;
}
}
}
//# sourceMappingURL=logstream.d.ts.map