UNPKG

homebridge-config-ui-x

Version:

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

149 lines (148 loc) 5.4 kB
import type { Systeminformation } from 'systeminformation'; import type { HomebridgeStatusMatterUpdate } from '../../core/matter/matter.interfaces.js'; import { HttpService } from '@nestjs/axios'; import { ConfigService } from '../../core/config/config.service.js'; import { HomebridgeIpcService } from '../../core/homebridge-ipc/homebridge-ipc.service.js'; import { Logger } from '../../core/logger/logger.service.js'; import { DockerRelease, DockerReleaseInfo } from '../platform-tools/docker/docker.interfaces.js'; import { PluginsService } from '../plugins/plugins.service.js'; import { ServerService } from '../server/server.service.js'; import { HomebridgeStatus } from './status.interfaces.js'; export declare class StatusService { private readonly httpService; private readonly logger; private readonly configService; private readonly pluginsService; private readonly serverService; private readonly homebridgeIpcService; private statusCache; private dashboardLayout; private homebridgeStatus; private homebridgeStatusChange; private matterInfo; private cpuLoadHistory; private memoryUsageHistory; private memoryInfo; private rpiGetThrottledMapping; constructor(httpService: HttpService, logger: Logger, configService: ConfigService, pluginsService: PluginsService, serverService: ServerService, homebridgeIpcService: HomebridgeIpcService); private getCpuLoadPoint; private getMemoryUsagePoint; private getCpuLoadPointAlt; private getCpuTemp; private getCpuTempLegacy; private getCpuTempAlt; getCurrentNetworkUsage(netInterfaces?: string[]): Promise<{ net: Systeminformation.NetworkStatsData; point: number; }>; getDashboardLayout(): Promise<any>; getDashboardInit(): Promise<{ layout: any; rpiThrottled?: Record<string, boolean>; }>; setDashboardLayout(layout: any): Promise<{ status: string; }>; getServerCpuInfo(): Promise<{ cpuTemperature: { main: number; cores: any[]; max: number; }; currentLoad: number; cpuLoadHistory: number[]; }>; getServerMemoryInfo(): Promise<{ mem: Systeminformation.MemData; memoryUsageHistory: number[]; }>; getServerUptimeInfo(): Promise<{ time: Systeminformation.TimeData; processUptime: number; }>; getHomebridgePairingPin(): Promise<{ pin: string; setupUri: string; paired: boolean; hap: { enabled: boolean; externalsOnly: boolean; }; matter: HomebridgeStatusMatterUpdate; }>; private getHapInfo; getHomebridgeStatus(): Promise<{ status: HomebridgeStatus; consolePort: number; name: string; port: number; pin: string; setupUri: string; packageVersion: any; paired: boolean; hap: { enabled: boolean; externalsOnly: boolean; }; matter: HomebridgeStatusMatterUpdate; }>; watchStats(client: any): Promise<void>; private getHomebridgeStats; checkHomebridgeStatus(): Promise<HomebridgeStatus>; private getDefaultInterface; private getOsInfo; private getGlibcVersion; getHomebridgeServerInfo(): Promise<{ serviceUser: string; homebridgeConfigJsonPath: string; homebridgeStoragePath: string; homebridgeInsecureMode: boolean; homebridgeCustomPluginPath: string; homebridgePluginPath: string; homebridgeRunningInDocker: boolean; homebridgeRunningInSynologyPackage: boolean; homebridgeRunningInPackageMode: boolean; nodeVersion: string; os: Systeminformation.OsData; time: Systeminformation.TimeData; network: {}; }>; getHomebridgeVersion(): Promise<import("../plugins/plugins.interfaces.js").HomebridgePlugin>; getVersionOverview(): Promise<{ serverInfo: { serviceUser: string; homebridgeConfigJsonPath: string; homebridgeStoragePath: string; homebridgeInsecureMode: boolean; homebridgeCustomPluginPath: string; homebridgePluginPath: string; homebridgeRunningInDocker: boolean; homebridgeRunningInSynologyPackage: boolean; homebridgeRunningInPackageMode: boolean; nodeVersion: string; os: Systeminformation.OsData; time: Systeminformation.TimeData; network: {}; }; node: unknown; homebridge: import("../plugins/plugins.interfaces.js").HomebridgePlugin; homebridgeUi: import("../plugins/plugins.interfaces.js").HomebridgePlugin; outOfDatePlugins: import("../plugins/plugins.interfaces.js").HomebridgePlugin[]; docker: any; hbV2Ready: boolean; }>; clearNodeJsVersionCache(): void; getNodeVersionInfo(): Promise<unknown>; getRaspberryPiThrottledStatus(): Promise<{}>; getDockerDetails(): Promise<{ currentVersion: string; latestVersion: string; latestReleaseBody: string; updateAvailable: boolean; }>; private readonly DOCKER_GITHUB_API_URL; getRecentReleases(): Promise<{ releases: DockerReleaseInfo[]; rawReleases: DockerRelease[]; }>; }