UNPKG

lavva.exalushome

Version:

Library implementing communication and abstraction layers for ExalusHome system

60 lines (59 loc) 2.47 kB
import { IUpdatesProvider, ProviderType } from "./IUpdatesProvider"; import { IUpdateProviderService } from "./UpdateProviderServices/IUpdateProviderService"; export declare class UpdatesProvider implements IUpdatesProvider { static readonly ServiceName: string; private _services; private _runtimeInfo; private _hardwareInfo; private _semaphore; private _isRuntimeInfoInitialized; private _isHardwareInfoInitialized; GetServiceName(): string; RegisterUpdatesProvider(service: IUpdateProviderService): void; GetUpdatesProviderAsync<T extends IUpdateProviderService>(serviceName: string): Promise<T>; GetUpdatesProvidersAsync<T extends IUpdateProviderService>(updateProviderType: ProviderType): Promise<T[]>; GetUpdatesProvidersByProtocolAsync<T extends IUpdateProviderService>(protocolGuid: string, updateProviderType: ProviderType, apiVersion?: string | undefined): Promise<T[]>; GetUpdatesProvidersByExtensionAsync<T extends IUpdateProviderService>(extensionGuid: string, updateProviderType: ProviderType, apiVersion?: string | undefined): Promise<T[]>; GetSoftwareRuntimeInfoAsync(reloadCachedData?: boolean): Promise<SoftwareRuntimeInfo>; protected GetRuntimeControllerInfoAsync(): Promise<void>; GetHardwareInfoAsync(reloadCachedData?: boolean): Promise<HardwareInfo>; protected GetHardwareControllerInfoAsync(): Promise<void>; } export declare class SoftwareRuntimeInfo { BaseLinuxVersion: string; BaseMonoVersion: string; RuntimeVersion: string; UpdateChannel: string; SoftwareVersion: string; } export declare class HardwareInfo { GetControllerHardwareVersion: number; DevicePIN: string; GetControllerSerialNumber: string; HostnamePrefix: string; DefaultStaticIpAddress: string; GetAvailableHardware: Hardware[]; ControllerSecret: string; } export declare class Hardware { HardwareGUID: string; DevicePath: string; DisplayName: string; HardwareSerialNumber: string; HardwareVersion: number; SoftwareVersion: number; Configuration: string; ControllerSecret: string; } export declare class CannotGetRuntimeInfo extends Error { message: string; code: CannotGetRuntimeErrorCode; constructor(message: string, code: CannotGetRuntimeErrorCode); } export declare enum CannotGetRuntimeErrorCode { Unknown = 0, EmptyResponse = 1, NoDataInResponse = 2, WrongResponseStatus = 3, Timeout = 4 }