homebridge-config-ui-x
Version:
A web based management, configuration and control platform for Homebridge.
110 lines (109 loc) • 3.65 kB
TypeScript
import type { Systeminformation } from 'systeminformation';
import { HttpService } from '@nestjs/axios';
import { ConfigService } from '../../core/config/config.service';
import { HomebridgeIpcService } from '../../core/homebridge-ipc/homebridge-ipc.service';
import { Logger } from '../../core/logger/logger.service';
import { PluginsService } from '../plugins/plugins.service';
import { ServerService } from '../server/server.service';
export declare enum HomebridgeStatus {
OK = "ok",
UP = "up",
DOWN = "down"
}
export interface HomebridgeStatusUpdate {
status: HomebridgeStatus;
paired?: null | boolean;
setupUri?: null | string;
name?: string;
username?: string;
pin?: string;
}
export declare class StatusService {
private httpService;
private logger;
private configService;
private pluginsService;
private serverService;
private homebridgeIpcService;
private statusCache;
private dashboardLayout;
private homebridgeStatus;
private homebridgeStatusChange;
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>;
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;
}>;
getHomebridgeStatus(): Promise<{
status: HomebridgeStatus;
consolePort: number;
name: string;
port: number;
pin: string;
setupUri: string;
packageVersion: any;
paired: boolean;
}>;
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;
homebridgeServiceMode: boolean;
nodeVersion: string;
os: Systeminformation.OsData;
glibcVersion: string;
time: Systeminformation.TimeData;
network: {};
}>;
getHomebridgeVersion(): Promise<import("../plugins/types").HomebridgePlugin>;
getNodeJsVersionInfo(): Promise<unknown>;
getRaspberryPiThrottledStatus(): Promise<{}>;
}