/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
import { ChildProcess } from 'child_process';
import EventEmitter from 'events';
import { Server } from 'net';
import { MP4Atom } from './RecordingDelegate';
interface PrebufferFmp4 {
    atom: MP4Atom;
    time: number;
}
export interface Mp4Session {
    server: Server;
    process: ChildProcess;
}
export declare class PreBuffer {
    prebufferFmp4: PrebufferFmp4[];
    events: EventEmitter;
    released: boolean;
    ftyp: any;
    moov: any;
    idrInterval: number;
    prevIdr: number;
    private ffmpegInput;
    private readonly cameraName;
    private readonly ffmpegPath;
    constructor(ffmpegInput: string, cameraName: string, videoProcessor: string);
    startPreBuffer(): Promise<Mp4Session>;
    getVideo(requestedPrebuffer: number): Promise<string[]>;
}
export {};
//# sourceMappingURL=prebuffer.d.ts.map