lavva.exalushome.extalife
Version:
Library implementing communication and abstraction layers for ExtaLife API in ExalusHome system
55 lines (54 loc) • 2.93 kB
TypeScript
import { IDeviceUpdateProviderService } from 'lavva.exalushome/build/js/Services/Updates/UpdateProviderServices/IDeviceUpdateProviderService';
import { ExtensionInfo } from 'lavva.exalushome/build/js/Services/Controller/ControllerExtensionsService';
import { SoftwareRuntimeInfo } from 'lavva.exalushome/build/js/Services/Updates/UpdatesProvider';
import { Status } from 'lavva.exalushome/build/js/DataFrame';
import { ProviderType, UpdateInfo } from 'lavva.exalushome/build/js/Services/Updates/IUpdatesProvider';
import { ResponseResult } from 'lavva.exalushome/build/js/Services/FieldChangeResult';
import { IDevice } from 'lavva.exalushome/build/js/Services/Devices/IDevice';
import { BulkUpdateResult, UpdateAction, UpdateErrorCode, UpdateProgress } from 'lavva.exalushome/build/js/Services/Updates/IUpdatesService';
import { ICustomUpdateActions } from 'lavva.exalushome/build/js/Services/Updates/CustomUpdateActions/ICustomUpdateActions';
export declare class ExtaLifeDevicesUpdatesProvider implements IDeviceUpdateProviderService {
static readonly ProviderName = "ExtaLifeDeviceUpdateProvider";
private _apiVersion;
private _extenstionVersion;
private _protocolExtGuid;
private _runtimeInfo;
private _logger;
private _connection;
private _devices;
private _updateProvider;
constructor(extInfo: ExtensionInfo, runtimeInfo: SoftwareRuntimeInfo);
get ProtocolGuid(): string;
get ExtensionGuid(): string;
get AvailableApiVersion(): string;
get AvailableExtensionVersion(): string;
get ProviderType(): ProviderType;
GetUpdateProviderName(): string;
GetAvailableUpdateAsync(device: IDevice): Promise<UpdateInfo | ResponseResult<UpdateErrorCode>>;
CheckUpdateBulkAsync(reloadCache?: boolean): Promise<UpdateInfo[] | ResponseResult<UpdateErrorCode>>;
GetSoftwareVersionAsync(device: IDevice): Promise<string | ResponseResult<UpdateErrorCode>>;
protected GetFirmwareVersionAsync(device: IDevice): Promise<FirmwareVersion | ResponseResult<UpdateErrorCode>>;
InstallUpdateAsync<T extends ICustomUpdateActions>(update: UpdateInfo, updateProgress: UpdateProgress, updateAction?: UpdateAction<T> | undefined, force?: boolean): Promise<Status.OK | ResponseResult<UpdateErrorCode>>;
InstalUpdateBulkAsync<T extends ICustomUpdateActions>(deviceGuids: string[], updateProgress: UpdateProgress, updateAction?: UpdateAction<T>): Promise<BulkUpdateResult | ResponseResult<UpdateErrorCode>>;
}
declare class FirmwareVersion {
Revision: number;
Build: number;
Minor: number;
Major: number;
}
export declare class FirmwareUpdate {
UpdateGuid: string;
Branch: string;
Version: FirmwareVersion;
RequiredMinimumControllerSoftwareVersion: FirmwareVersion;
DownloadUri: string;
Name: {
[key: string]: string;
};
Description: {
[key: string]: string;
};
PublicationDateTime: string;
}
export {};