import { CameraController, CameraRecordingConfiguration, CameraRecordingDelegate, HDSProtocolSpecificErrorReason, PlatformAccessory, RecordingPacket } from 'homebridge';
import { StreamingDelegate } from './streamingDelegate';
export declare class RecordingDelegate implements CameraRecordingDelegate {
    private streamingDelegate;
    private accessory;
    private configuration?;
    private forceStopTimeout?;
    private closeReason?;
    private handlingStreamingRequest;
    private platform;
    private camera;
    private cameraName;
    private cameraConfig;
    private localLivestreamManager;
    private log;
    private controller?;
    private session?;
    constructor(streamingDelegate: StreamingDelegate, accessory: PlatformAccessory);
    setController(controller: CameraController): void;
    isRecording(): boolean;
    handleRecordingStreamRequest(streamId: number): AsyncGenerator<RecordingPacket>;
    updateRecordingActive(active: boolean): void;
    updateRecordingConfiguration(configuration: CameraRecordingConfiguration | undefined): void;
    closeRecordingStream(streamId: number, reason: HDSProtocolSpecificErrorReason | undefined): void;
    acknowledgeStream(streamId: any): void;
}
//# sourceMappingURL=recordingDelegate.d.ts.map