import { LoxonePlatform } from '../../LoxonePlatform';
import { CameraController, CameraStreamingDelegate, PrepareStreamCallback, PrepareStreamRequest, SnapshotRequest, SnapshotRequestCallback, StreamingRequest, StreamRequestCallback, CameraRecordingDelegate } from 'homebridge';
import { StreamingDelegate as FfmpegStreamingDelegate } from './FfmpegStreamingProcess';
export declare class streamingDelegate implements CameraStreamingDelegate, FfmpegStreamingDelegate {
    private readonly platform;
    readonly controller: CameraController;
    readonly recordingDelegate: CameraRecordingDelegate;
    private readonly streamUrl;
    private readonly ip;
    private readonly base64auth;
    private pendingSessions;
    private ongoingSessions;
    private readonly hap;
    constructor(platform: LoxonePlatform, streamUrl: string, base64auth?: string);
    stopStream(sessionId: string): void;
    forceStopStream(sessionId: string): void;
    handleSnapshotRequest(request: SnapshotRequest, callback: SnapshotRequestCallback): Promise<void>;
    prepareStream(request: PrepareStreamRequest, callback: PrepareStreamCallback): Promise<void>;
    handleStreamRequest(request: StreamingRequest, callback: StreamRequestCallback): Promise<void>;
    private startStream;
}
//# sourceMappingURL=StreamingDelegate.d.ts.map