homebridge-soundtouch-platform
Version:
Homebridge SoundTouch platform
38 lines • 1.61 kB
TypeScript
import { AccessoryConfig, GlobalConfig, VolumeMode } from './accessory-config';
import { API } from 'soundtouch-api';
import { Logging } from "homebridge";
import { BaseDevice } from "homebridge-base-platform";
export interface SoundTouchPreset {
readonly name: string;
readonly index: number;
}
export interface SoundTouchSource {
readonly name: string;
readonly source: string;
readonly account?: string;
readonly enabled: boolean;
}
export interface SoundTouchVolumeSettings {
readonly onValue: number;
readonly maxValue: number;
readonly unmuteValue: number;
readonly mode: VolumeMode;
}
export interface SoundTouchDevice extends BaseDevice {
readonly api: API;
readonly model: string;
readonly verbose: boolean;
readonly pollingInterval?: number;
readonly version?: string;
readonly volumeSettings: SoundTouchVolumeSettings;
readonly presets: SoundTouchPreset[];
readonly sources: SoundTouchSource[];
}
export declare function searchAllDevices(globalConfig: GlobalConfig, accessoryConfigs: AccessoryConfig[], log: Logging): Promise<SoundTouchDevice[]>;
export declare function deviceFromConfig(globalConfig: GlobalConfig, accessoryConfig: AccessoryConfig, log: Logging): Promise<SoundTouchDevice>;
export interface DeviceOnOffListener {
deviceDidTurnOff(updateOn?: boolean, updateVolume?: boolean): Promise<boolean>;
deviceDidTurnOn(updateOn?: boolean, updateVolume?: boolean): Promise<boolean>;
}
export declare function deviceIsOn(device: SoundTouchDevice): Promise<boolean>;
//# sourceMappingURL=sound-touch-device.d.ts.map