homebridge-unifi-protect
Version:
Homebridge UniFi Protect plugin providing complete HomeKit integration for the entire UniFi Protect ecosystem with full support for most features including HomeKit Secure Video, multiple controllers, blazing fast performance, and much more.
30 lines • 1.47 kB
TypeScript
import type { CameraController, Resolution, SnapshotRequest, SnapshotRequestCallback } from "homebridge";
import type { FfmpegOptions, Nullable } from "homebridge-plugin-utils";
import { AudioStreamingSamplerate } from "homebridge-plugin-utils";
import type { ProtectCameraHost } from "./camera-host.ts";
import type { ProtectRecordingDelegate } from "./record.ts";
import type { ProtectTimeshiftSupervisor } from "./timeshift-supervisor.ts";
export interface AudioOptionsIdentity {
readonly isDoorbell: boolean;
readonly twoWayAudio: boolean;
}
export declare function audioCapabilityAppeared(built: AudioOptionsIdentity, current: AudioOptionsIdentity): boolean;
export declare function streamingSamplerates(input: {
isDoorbell: boolean;
usesTimeshiftLivestream: boolean;
}): AudioStreamingSamplerate | AudioStreamingSamplerate[];
export interface StreamingDelegate {
readonly builtFor: AudioOptionsIdentity;
controller: CameraController;
readonly ffmpegOptions: FfmpegOptions;
handleSnapshotRequest(request?: SnapshotRequest, callback?: SnapshotRequestCallback): void;
hksv: Nullable<ProtectRecordingDelegate>;
readonly probesize: number;
resetProbesizeOverride(): void;
shutdown(): void;
timeshift: Nullable<ProtectTimeshiftSupervisor>;
}
export interface StreamingDelegateFactory {
create(camera: ProtectCameraHost, resolutions: Resolution[]): StreamingDelegate;
}
//# sourceMappingURL=stream-delegate.d.ts.map