import type { IntercomHandsetData, PushNotification } from './ring-types.ts'; import type { RingRestClient } from './rest-client.ts'; import { BehaviorSubject, Subject } from 'rxjs'; export declare class RingIntercom { id: number; deviceType: "intercom_handset_audio" | "intercom_handset_video"; onData: BehaviorSubject; onRequestUpdate: Subject; onBatteryLevel: import("rxjs").Observable; onDing: Subject; onUnlocked: Subject; private initialData; private restClient; constructor(initialData: IntercomHandsetData, restClient: RingRestClient); updateData(update: IntercomHandsetData): void; requestUpdate(): void; get data(): IntercomHandsetData; get name(): string; get isOffline(): boolean; get batteryLevel(): number | null; unlock(): Promise; private doorbotUrl; subscribeToDingEvents(): Promise; unsubscribeFromDingEvents(): Promise; processPushNotification(notification: PushNotification): void; }