import { Logger } from 'homebridge';
/**
 * AirPlay device
 */
export declare class AirPlayDevice {
    private readonly homepodId;
    private readonly logger;
    private readonly verboseMode;
    private readonly streamerName;
    private readonly streamMetadataUrl?;
    private readonly streamArtworkUrl?;
    private readonly STREAMING_RESTART_TIMEOUT;
    private readonly HEARTBEAT_TIMEOUT;
    private readonly LAST_SEEN_THRESHOLD_MS;
    private readonly DEFAULT_ARTWORK_URL;
    private streaming;
    private lastSeen;
    private heartbeat;
    private streamingRetries;
    private readonly debug;
    private readonly pluginPath;
    constructor(homepodId: string, logger: Logger, verboseMode: boolean, streamerName: string, streamMetadataUrl?: string | undefined, streamArtworkUrl?: string | undefined);
    private killProcess;
    getPlaybackTitle(): Promise<string>;
    setVolume(volume: number): Promise<void>;
    playFile(filePath: string, volume: number): Promise<boolean>;
    playStream(streamUrl: string, streamName: string, volume: number): Promise<boolean>;
    /**
     * Streaming crash monitoring/prevention
     */
    private handleHearbeat;
    private startStreaming;
    private endStreaming;
    stop(): Promise<boolean>;
    isPlaying(): boolean;
}
