homebridge-kodi
Version:
Kodi plugin for Homebridge
51 lines • 3.1 kB
TypeScript
import { API, DynamicPlatformPlugin, Logger, PlatformAccessory, PlatformConfig, Service, Characteristic, WithUUID } from 'homebridge';
import { KodiLogger, TelevisionAccessoryType, KodiSwitchAccessoryInterface, KodiTelevisionAccessoryInterface, KodiCommandSwitchAccessoryInterface } from './internal';
import setIntervalPlus = require('setinterval-plus');
export declare class KodiPlatform implements DynamicPlatformPlugin {
readonly config: PlatformConfig;
readonly api: API;
readonly Service: typeof Service;
readonly Characteristic: typeof Characteristic;
customCharacteristics: {
[key: string]: WithUUID<new () => Characteristic>;
};
readonly accessories: PlatformAccessory[];
readonly shownAccessories: PlatformAccessory[];
subscribed: boolean;
closedByPlugin: boolean;
intervalKodiSubscriptions: setIntervalPlus;
intervalKodiStatus: setIntervalPlus;
intervalKodiUpdate: setIntervalPlus;
powerSwitchService: Service | undefined;
televisionControlsService: Service | undefined;
televisionControlsSpeakerService: Service | undefined;
televisionChannelsService: Service | undefined;
televisionChannelsSpeakerService: Service | undefined;
playerLightbulbService: Service | undefined;
playerPlaySwitchService: Service | undefined;
playerPauseSwitchService: Service | undefined;
playerStopSwitchService: Service | undefined;
applicationVolumeLightbulbService: Service | undefined;
videoLibraryScanSwitchService: Service | undefined;
videoLibraryCleanSwitchService: Service | undefined;
audioLibraryScanSwitchService: Service | undefined;
audioLibraryCleanSwitchService: Service | undefined;
log: KodiLogger;
constructor(log: Logger, config: PlatformConfig, api: API);
configureAccessory(accessory: PlatformAccessory): void;
discoverDevices(): void;
addAccessory(name: string, configCheck: boolean, KodiAccessory: KodiSwitchAccessoryInterface): PlatformAccessory | undefined;
addCommandAccessory(name: string, interval: number, sequence: string, KodiCommandAccessory: KodiCommandSwitchAccessoryInterface): void;
addTelevisionAccessory(name: string, type: TelevisionAccessoryType, inputNames: string[], inputIdentifiers: number[], KodiTelevisionAccessory: KodiTelevisionAccessoryInterface): PlatformAccessory | undefined;
getAccessory(name: string): PlatformAccessory | undefined;
removeAllAccessoriesNotNeededAnymore(): void;
checkKodiStatus: (this: KodiPlatform) => Promise<void>;
subscribeToKodiNotifications: (this: KodiPlatform, api: API) => Promise<void>;
onSubscribe: (this: KodiPlatform) => void;
onUnsubscribe: (this: KodiPlatform) => void;
updateKodiPlayer: (this: KodiPlatform, onplay: boolean) => Promise<void>;
resetAllCharacteristics: (this: KodiPlatform, completely: boolean) => void;
updateApplicationVolumeService: (this: KodiPlatform) => void;
updateTelevisionChannelsService: (this: KodiPlatform) => void;
}
//# sourceMappingURL=platform.d.ts.map