import { EventListener, EventListenerOptions, EventListenerRegister, Logger, ScryptedDevice, ScryptedInterfaceDescriptor, ScryptedNativeId, SystemDeviceState, SystemManager } from "@scrypted/types"; import { EventRegistry } from "../event-registry"; import { getPropertyInterfaces } from "./descriptor"; import { PluginAPI } from "./plugin-api"; export declare class SystemManagerImpl implements SystemManager { api: PluginAPI; state: { [id: string]: { [property: string]: SystemDeviceState; }; }; deviceProxies: { [id: string]: ScryptedDevice; }; log: Logger; events: EventRegistry; typesVersion: string; descriptors: { [scryptedInterface: string]: ScryptedInterfaceDescriptor; }; propertyInterfaces: ReturnType; getDeviceState(id: string): { [property: string]: SystemDeviceState; }; getSystemState(): { [id: string]: { [property: string]: SystemDeviceState; }; }; getDeviceById(idOrPluginId: string, nativeId?: ScryptedNativeId): any; getDeviceByName(name: string): any; listen(callback: EventListener): EventListenerRegister; listenDevice(id: string, options: string | EventListenerOptions, callback: EventListener): EventListenerRegister; removeDevice(id: string): Promise; getComponent(id: string): Promise; setScryptedInterfaceDescriptors(typesVersion: string, descriptors: { [scryptedInterface: string]: ScryptedInterfaceDescriptor; }): Promise; }