declare let systemDictionary: Record>; declare let load: ( settings: Record, onChange: (hasChanges: boolean) => void, ) => void; declare let save: ( callback: (settings: Record) => void, ) => void; // make load and save exist on the window object interface Window { load: typeof load; save: typeof save; } declare const instance: number; declare const adapter: string; /** * Translates text * * @param text - The text to translate */ declare function _(text: string): string; declare const socket: ioBrokerSocket; declare function sendTo( instance: null, command: string, message: any, callback: (result: SendToResult) => void | Promise, ): void; interface SendToResult { error?: string | Error; result?: any; } // tslint:disable-next-line:class-name interface ioBrokerSocket { emit( command: "subscribeObjects", pattern: string, callback?: (err?: string) => void | Promise, ): void; emit( command: "subscribeStates", pattern: string, callback?: (err?: string) => void | Promise, ): void; emit( command: "unsubscribeObjects", pattern: string, callback?: (err?: string) => void | Promise, ): void; emit( command: "unsubscribeStates", pattern: string, callback?: (err?: string) => void | Promise, ): void; emit( event: "getObjectView", view: "system", type: "device", options: ioBroker.GetObjectViewParams, callback: (err: string | undefined, result?: any) => void | Promise, ): void; emit( event: "getStates", callback: (err: string | undefined, result?: Record) => void, ): void; emit( event: "getState", id: string, callback: (err: string | undefined, result?: ioBroker.State) => void, ): void; emit( event: "setState", id: string, state: unknown, callback: (err: string | undefined, result?: any) => void, ): void; on(event: "objectChange", handler: ioBroker.ObjectChangeHandler): void; on(event: "stateChange", handler: ioBroker.StateChangeHandler): void; removeEventHandler( event: "objectChange", handler: ioBroker.ObjectChangeHandler, ): void; removeEventHandler( event: "stateChange", handler: ioBroker.StateChangeHandler, ): void; // TODO: other events }