/// import { RingCamera, SipSession } from '../api'; import { HAP } from './hap'; import Service = HAP.Service; interface HapRtpConfig { port: number; proxy_rtp: number; proxy_rtcp: number; srtp_key: Buffer; srtp_salt: Buffer; } interface PrepareStreamRequest { sessionID: Buffer; targetAddress: string; video: HapRtpConfig; audio: HapRtpConfig; } interface HandleStreamRequest { sessionID: Buffer; type: 'start' | 'stop' | 'reconfigure'; video: { profile: number; level: number; width: number; height: number; fps: number; ssrc: number; pt: number; max_bit_rate: number; rtcp_interval: number; mtu: number; }; audio: { codec: 'AAC-eld' | string; channel: number; bit_rate: number; sample_rate: number; packet_time: number; pt: number; ssrc: number; max_bit_rate: number; rtcp_interval: number; comfort_pt: number; }; } export declare class CameraSource { private ringCamera; private logger; services: Service[]; streamControllers: any[]; sessions: { [sessionKey: string]: SipSession; }; constructor(ringCamera: RingCamera, logger: HAP.Log); handleSnapshotRequest(request: { width: number; height: number; }, callback: (err?: Error, snapshot?: Buffer) => void): Promise; handleCloseConnection(connectionID: any): void; prepareStream(request: PrepareStreamRequest, callback: (response: any) => void): Promise; handleStreamRequest(request: HandleStreamRequest): void; } export {};