import type { DeviceItem, DeviceModelItem, DeviceRow, DeviceTypeItem, I18nText } from './types'; import type { StoredIotDevice } from './storage'; /** 型号选择页展示用分组:一个设备类型下包含多个可选型号。 */ export interface DeviceTypeGroup { type: DeviceTypeItem; models: DeviceModelItem[]; } /** 按 IoT endpoint 过滤型号,并丢弃没有可用型号的设备类型。 */ export declare const createDeviceTypeGroups: (types: DeviceTypeItem[] | undefined, iotEndpoint: string) => DeviceTypeGroup[]; /** 汇总型号详情和设备列表中的 profile 名称,供设备行展示使用。 */ export declare const createProfileNameMap: (modelDetail: DeviceModelItem | null | undefined, devices: DeviceItem[], translation: (val?: I18nText) => string) => Map; /** 设备行适配参数,包含原始设备、展示上下文和本地设备状态。 */ interface CreateDeviceRowsParams { devices: DeviceItem[]; search: string; storedIotDevice: StoredIotDevice; deviceTypeName: string; modelName: string; profileNameMap: Map; translation: (val?: I18nText) => string; } /** 将接口返回的 DeviceItem 转为列表展示用 DeviceRow,并应用客户端搜索。 */ export declare const createDeviceRows: ({ devices, search, storedIotDevice, deviceTypeName, modelName, profileNameMap, translation, }: CreateDeviceRowsParams) => DeviceRow[]; export {};