import { type Device } from "./schemas.js"; export interface DaemonRequester { request(op: string, args: Record, opts?: { signal?: AbortSignal; timeoutMs?: number; }): Promise; } /** devices.list {} → parsed Device rows, in daemon order. */ export declare function listHilDevices(daemon: DaemonRequester, signal?: AbortSignal): Promise; /** True when the device has an ESP-side port (cdc or bootloader) — devices.py select(). */ export declare function espSide(d: Device): boolean; /** Every serial port this device owns, tagged with its role. */ export declare function portPaths(d: Device): Array<{ role: "cdc" | "console" | "bootloader"; path: string; }>; /** Which role a path plays on this device, or null when it is not one of its ports. */ export declare function roleOfPort(d: Device, path: string): "cdc" | "console" | "bootloader" | null; /** * devices.py select(): no argument → the single device with an ESP side; * an argument → the device with that id, or the device owning that port path. */ export declare function pickDevice(devices: Device[], device?: string): Device;