import type { Service } from "homebridge";
import type { ProtectEventPacket } from "unifi-protect";
import { ProtectCamera } from "./protect-camera.js";
interface MessageInterface {
    duration: number;
    text: string;
    type: string;
}
export interface MessageSwitchInterface extends MessageInterface {
    service: Service;
    state: boolean;
}
export declare class ProtectDoorbell extends ProtectCamera {
    private chimeDigitalDuration;
    private contactAuthTimer?;
    private defaultMessageDuration;
    private isMessagesEnabled;
    private isMessagesFromControllerEnabled;
    protected configureDevice(): boolean;
    cleanup(): void;
    private configureDoorbellLcdSwitch;
    private configurePackageCamera;
    private configurePhysicalChimes;
    private configureProtectChimeLightbulb;
    private configureAuthSensor;
    protected configureMqtt(): boolean;
    updateDevice(): boolean;
    private getPhysicalChimeDuration;
    private getMessages;
    private validateMessageSwitches;
    private updateLcdSwitch;
    private setMessage;
    protected eventHandler(packet: ProtectEventPacket): void;
    protected addEventHandler(packet: ProtectEventPacket): void;
    private nvrEventHandler;
    private chimeEventHandler;
    private get chimeVolume();
    private setChimeVolume;
}
export {};
