import { CameraController, CameraStreamingDelegate, HAP, Logging, PrepareStreamCallback, PrepareStreamRequest, SnapshotRequest, SnapshotRequestCallback, StreamingRequest, StreamRequestCallback } from 'homebridge';
import { DeviceData } from '../types/data.js';
export declare class StreamingDelegate implements CameraStreamingDelegate {
    private readonly hap;
    private readonly log;
    private videoProcessor;
    private ffmpegInstalled;
    private ffmpegSupportsLibfdk_acc;
    private deviceData;
    private cameraConfig;
    controller?: CameraController;
    private pendingSessions;
    private ongoingSessions;
    constructor(hap: HAP, deviceData: DeviceData, log: Logging);
    private getOfflineImage;
    private getRtspUrl;
    handleSnapshotRequest(request: SnapshotRequest, callback: SnapshotRequestCallback): void;
    prepareStream(request: PrepareStreamRequest, callback: PrepareStreamCallback): Promise<void>;
    private getCommand;
    handleStreamRequest(request: StreamingRequest, callback: StreamRequestCallback): void;
    stopStream(sessionId: string): void;
}
