UNPKG

@constructorfleet/ultimate-govee

Version:

Library for interacting with Govee devices written in Typescript.

28 lines 1.31 kB
import { Optional } from '../../../common'; import { BehaviorSubject } from 'rxjs'; import { DeviceModel } from '../devices.model'; import { DeviceOpState, DeviceState } from './device.state'; export declare const ModeStateName: 'mode'; export type ModeStateName = typeof ModeStateName; export type Modes<SubModes extends Record<string, DeviceState<string, object>>> = { active: DeviceState<string, object> | undefined; subModes: SubModes; }; export type ModeType = { state?: { mode?: number; }; }; export type ModeIdMap = (state: ModeState) => Optional<DeviceState<string, any>>; export declare const defaultModeIdMap: ModeIdMap; export declare class ModeState extends DeviceOpState<ModeStateName, Optional<DeviceState<string, unknown>>> { private readonly identifierMap; readonly activeIdentifier: BehaviorSubject<Optional<number[]>>; readonly modes: DeviceState<string, any>[]; protected readonly inline: boolean; get activeMode(): Optional<DeviceState<string, any>>; constructor(device: DeviceModel, modes: Optional<DeviceState<string, any>>[], opType?: number, identifier?: number[], inline?: boolean, identifierMap?: ModeIdMap); parseState(data: ModeType): void; parseOpCommand(opCommand: number[]): void; } //# sourceMappingURL=mode.state.d.ts.map