UNPKG

homebridge-config-ui-x

Version:

A web based management, configuration and control platform for Homebridge.

136 lines (135 loc) 4.45 kB
import type { FastifyRequest } from 'fastify'; import { Logger } from '../../core/logger/logger.service.js'; import { ChildBridgesService } from '../child-bridges/child-bridges.service.js'; import { HomebridgeMdnsSettingDto, HomebridgeNetworkInterfacesDto } from './server.dto.js'; import { ServerService } from './server.service.js'; export declare class ServerController { private readonly serverService; private readonly childBridgesService; private readonly logger; constructor(serverService: ServerService, childBridgesService: ChildBridgesService, logger: Logger); restartServer(): Promise<{ ok: boolean; command: string; restartingUI: boolean; }>; restartChildBridge(deviceId: string): { ok: boolean; }; stopChildBridge(deviceId: string): { ok: boolean; }; startChildBridge(deviceId: string): { ok: boolean; }; getBridgePairingInformation(): Promise<import("@nestjs/common").ServiceUnavailableException | { displayName: any; pincode: any; setupCode: string; isPaired: boolean; }>; resetHomebridgeAccessory(): Promise<void>; deleteAllCachedAccessories(): Promise<{ ok: boolean; }>; getCachedAccessories(): Promise<any[]>; deleteCachedAccessory(uuid: string, cacheFile?: string): Promise<{ ok: boolean; }>; deleteCachedAccessories(accessories?: { uuid: string; cacheFile: string; }[]): Promise<{ ok: boolean; }>; getMatterAccessories(): Promise<import("../../core/matter/matter.interfaces.js").StoredMatterAccessory[]>; deleteMatterAccessory(deviceId: string, uuid: string): Promise<{ ok: boolean; }>; deleteMatterAccessories(accessories?: { deviceId: string; uuid: string; }[]): Promise<{ ok: boolean; }>; getDevicePairings(): Promise<any[]>; getDevicePairingById(deviceId: string): Promise<any>; deleteDevicePairing(deviceId: string, resetPairingInfo?: string): Promise<{ ok: boolean; }>; deleteDeviceMatterConfig(deviceId: string): Promise<{ ok: boolean; }>; deleteDevicesPairings(bridges?: { id: string; resetPairingInfo: boolean; }[]): Promise<{ ok: boolean; }>; deleteDeviceAccessories(deviceId: string): Promise<void>; deleteDevicesAccessories(bridges?: { id: string; protocol?: 'hap' | 'matter' | 'both'; }[]): Promise<void>; getNetworkOverview(): Promise<{ entries: import("../../core/matter/matter.interfaces.js").NetworkOverviewEntry[]; conflicts: string[]; }>; lookupUnusedPort(): Promise<{ port: number; }>; lookupUnusedMatterPort(): Promise<{ port: number; }>; getSystemNetworkInterfaces(): Promise<import("systeminformation").Systeminformation.NetworkInterfacesData[]>; getHomebridgeNetworkInterfaces(): Promise<string[]>; setHomebridgeNetworkInterfaces(body: HomebridgeNetworkInterfacesDto): Promise<void>; getHomebridgeMdnsSetting(): Promise<HomebridgeMdnsSettingDto>; setHomebridgeMdnsSetting(body: HomebridgeMdnsSettingDto): Promise<void>; setHomebridgeName(body: { name: string; }): Promise<void>; getHomebridgePort(): Promise<{ port: number; }>; setHomebridgePort(body: { port: number; }): Promise<void>; getUsablePort(): Promise<{ start?: number; end?: number; }>; setUsablePorts(body: any): Promise<void>; uploadWallpaper(req: FastifyRequest): Promise<void>; uploadSslKeyCert(req: FastifyRequest): Promise<{ ok: boolean; type: "keycert"; keyPath: string; certPath: string; details?: string; }>; uploadSslPfx(req: FastifyRequest): Promise<{ ok: boolean; type: "pfx"; pfxPath: string; details?: string; }>; validateSsl(): Promise<{ ok: boolean; valid: boolean; type: "off" | "selfsigned" | "keycert" | "pfx"; details?: string; }>; generateSelfSigned(body: { hostnames?: string[]; mode?: 'selfsigned' | 'keycert'; }): Promise<{ ok: boolean; type: "generated"; mode: "keycert" | "selfsigned"; keyPath?: string; certPath?: string; details?: string; }>; deleteWallpaper(): Promise<void>; }