UNPKG

lavva.exalushome

Version:

Library implementing communication and abstraction layers for ExalusHome system

15 lines (14 loc) 1.26 kB
import { Status } from "../../../DataFrame"; import { IDevice } from "../../Devices/IDevice"; import { ResponseResult } from "../../FieldChangeResult"; import { ICustomUpdateActions } from "../CustomUpdateActions/ICustomUpdateActions"; import { UpdateInfo } from "../IUpdatesProvider"; import { BulkUpdateResult, UpdateAction, UpdateErrorCode, UpdateProgress } from "../IUpdatesService"; import { IUpdateProviderService } from "./IUpdateProviderService"; export interface IDeviceUpdateProviderService extends IUpdateProviderService { GetAvailableUpdateAsync(device: IDevice): Promise<UpdateInfo | ResponseResult<UpdateErrorCode>>; InstallUpdateAsync<T extends ICustomUpdateActions>(update: UpdateInfo, updateProgress: UpdateProgress, updateAction?: UpdateAction<T>, force?: boolean): Promise<Status.OK | ResponseResult<UpdateErrorCode>>; GetSoftwareVersionAsync(device: IDevice): Promise<string | ResponseResult<UpdateErrorCode>>; CheckUpdateBulkAsync(reloadCache?: boolean): Promise<UpdateInfo[] | ResponseResult<UpdateErrorCode>>; InstalUpdateBulkAsync<T extends ICustomUpdateActions>(deviceGuids: string[], updateProgress: UpdateProgress, updateAction?: UpdateAction<T>): Promise<BulkUpdateResult | ResponseResult<UpdateErrorCode>>; }