import { DeviceModelId } from "@ledgerhq/devices"; import type { DeviceInfo } from "@ledgerhq/types-live"; const deviceInfos: Record< string, { modelId: DeviceModelId; deviceInfo: DeviceInfo; } > = { NanoS120: { modelId: DeviceModelId.nanoS, deviceInfo: { version: "1.2", mcuVersion: "1.0", majMin: "1.2", providerName: null, targetId: 823132162, isOSU: false, isBootloader: false, managerAllowed: false, pinValidated: false, seFlags: Buffer.alloc(0), }, }, NanoS142: { modelId: DeviceModelId.nanoS, deviceInfo: { version: "1.4.2", isBootloader: false, isOSU: false, managerAllowed: false, mcuVersion: "1.6", pinValidated: true, providerName: null, majMin: "1.4", targetId: 823132163, seFlags: Buffer.alloc(0), }, }, NanoS155: { modelId: DeviceModelId.nanoS, deviceInfo: { version: "1.5.5", isBootloader: false, isOSU: false, managerAllowed: false, mcuVersion: "1.7", pinValidated: false, providerName: null, majMin: "1.5", targetId: 823132164, seFlags: Buffer.alloc(0), }, }, NanoX1242rc5: { modelId: DeviceModelId.nanoX, deviceInfo: { version: "1.2.4-2-rc5", mcuVersion: "2.9-rc1", majMin: "1.2", providerName: null, targetId: 855638020, isOSU: false, isBootloader: false, managerAllowed: true, pinValidated: true, seFlags: Buffer.alloc(0), }, }, Blue211: { modelId: DeviceModelId.blue, deviceInfo: { version: "2.1.1", mcuVersion: "3.4-hw15", majMin: "2.1", providerName: null, targetId: 822149124, isOSU: false, isBootloader: false, managerAllowed: false, pinValidated: true, seFlags: Buffer.alloc(0), }, }, }; export function lenseDevice(id: keyof typeof deviceInfos): { deviceInfo: DeviceInfo; modelId: DeviceModelId; } { return deviceInfos[id]; } export function lenseDevices(ids: Array): Array<{ deviceInfo: DeviceInfo; modelId: DeviceModelId; }> { return ids.map(id => deviceInfos[id]); }