import type { ActionResult, Alarm, Archive, ArchiveChannel, ArchiveListOptions, Device, DeviceChannel, DeviceEvent, DeviceFilter, DeviceHistory, FirmwareInfo, MinMaxReading, ThermoworksConfig } from "../types.js"; export type FixtureDemoMode = "normal" | "high" | "low"; type FixtureDeviceType = "node" | "signals" | "smoke"; export type FixtureFirmwareState = "up-to-date" | "update-available"; type FixtureSerial = "DEMO-NODE-1CH" | "DEMO-OFFLINE-NODE" | "DEMO-SIGNALS-4CH" | "DEMO-SMOKE-2CH"; export interface FixtureFirmwareScenario { readonly state: FixtureFirmwareState; readonly deviceType: string; readonly installedVersion: string; readonly latest: FirmwareInfo; } export interface FakeThermoworksCloudOptions { readonly devices?: readonly Device[]; readonly channels?: Readonly>; readonly archives?: Readonly>; readonly events?: readonly DeviceEvent[]; readonly firmware?: Readonly>; } export declare const FIXTURE_LATEST_FIRMWARE: Record; export declare const FIXTURE_FIRMWARE: Record; export declare const FIXTURE_FIRMWARE_SCENARIOS: Record; export declare function makeAlarm(overrides?: Partial): Alarm; export declare function makeMinMaxReading(overrides?: Partial): MinMaxReading; export declare function makeChannel(overrides?: Partial): DeviceChannel; export declare function makeDevice(overrides: Partial & { serial: string; }): Device; export declare function makeArchiveChannel(overrides?: Partial): ArchiveChannel; export declare function makeArchive(overrides?: Partial & { id?: string; }): Archive; export declare const FIXTURE_DEVICES: Device[]; export declare function getFixtureChannels(serial: string, mode?: FixtureDemoMode): DeviceChannel[]; export declare const FIXTURE_CHANNELS: Record>; export declare const FIXTURE_ARCHIVES: Record; export declare const HIGH_ALARM_CHANNEL: DeviceChannel; export declare const LOW_ALARM_CHANNEL: DeviceChannel; export declare const OFFLINE_DEVICE: Device; export declare class FakeThermoworksCloud { private readonly devices; private readonly channels; private readonly archives; private readonly events; private readonly firmware; readonly config: ThermoworksConfig | null; closed: boolean; constructor(config?: ThermoworksConfig | null, options?: FakeThermoworksCloudOptions); getDevices(filter?: DeviceFilter): Promise; getDevice(serial: string): Promise; getAllDeviceChannels(serial: string): Promise; getDeviceChannel(serial: string, channel: number): Promise; getAverageTemperature(serial: string): Promise<{ value: number; units: string; } | null>; getArchives(serial: string, options?: ArchiveListOptions): Promise; getArchive(serial: string, archiveId: string): Promise; getEvents(filter?: { deviceId?: string; limit?: number; }): Promise; getFirmwareInfo(deviceType: string): Promise; getHistory(serial: string): Promise; startSession(serial: string, label?: string): Promise; endSession(serial: string): Promise; setAlarm(serial: string, channelNumber: number, config: { high?: { value: number; units?: string; enabled?: boolean; muted?: boolean; }; low?: { value: number; units?: string; enabled?: boolean; muted?: boolean; }; }): Promise; close(): void; } export declare function getFixtureAlarmState(channel: DeviceChannel): "none" | "high" | "low"; export {}; //# sourceMappingURL=index.d.ts.map