import { Observable } from "rxjs"; import Transport from "@ledgerhq/hw-transport"; import type { FinalFirmware, OsuFirmware, DeviceInfo } from "@ledgerhq/types-live"; import { UnresponsiveCmdEvent } from "../core"; export type InstallFirmwareCommandRequest = { targetId: DeviceInfo["targetId"]; firmware: OsuFirmware | FinalFirmware; }; export type InstallFirmwareCommandEvent = { type: "progress"; progress: number; } | { type: "allowSecureChannelRequested"; } | { type: "firmwareInstallPermissionRequested"; } | { type: "firmwareInstallPermissionGranted"; } | UnresponsiveCmdEvent; /** * Creates a scriptrunner connection with the /install API endpoint of the HSM in order to install (upload) * an OSU (operating system updater). * This is the same endpoint that is used to install applications, however the parameters that are * passed are different. Besides that, the emitted events are semantically different. This is why * this is a dedicated command to OSU installations. * * @param transport The transport object to contact the device * @param param1 The firmware details to be installed * @returns An observable that emits the events according to the progression of the firmware installation */ export declare function installFirmwareCommand(transport: Transport, { targetId, firmware }: InstallFirmwareCommandRequest): Observable; //# sourceMappingURL=installFirmware.d.ts.map