@constructorfleet/ultimate-govee
Version:
Library for interacting with Govee devices written in Typescript.
39 lines • 2.1 kB
TypeScript
import { DeviceModel } from '../../../devices.model';
import { DeviceOpState } from '../../../states/device.state';
import { StateCommandAndStatus } from '../../../states/states.types';
import { PresenceState, PresenceStateTypeName } from '../../../states/presence.state';
import { Duration, Optional, Distance } from '../../../../../common';
export declare const MMWavePresenceStateName: PresenceStateTypeName<'mmWave'>;
export type MMWavePresenceStateName = typeof MMWavePresenceStateName;
export declare const BiologicalPresenceStateName: PresenceStateTypeName<'biological'>;
export type BiologicalPresenceStateName = typeof BiologicalPresenceStateName;
export declare class MMWavePresenceState extends PresenceState<'mmWave'> {
constructor(device: DeviceModel);
}
export declare class BiologicalPresenceState extends PresenceState<'biological'> {
constructor(device: DeviceModel);
}
export declare const EnablePresenceStateName: 'enablePresence';
export type EnablePresenceStateName = typeof EnablePresenceStateName;
export type EnablePresenceFlags = {
mmWaveEnabled?: boolean;
biologicalEnabled?: boolean;
};
export declare class EnablePresenceState extends DeviceOpState<EnablePresenceStateName, EnablePresenceFlags> {
constructor(device: DeviceModel, defaultState?: EnablePresenceFlags);
parseOpCommand(opCommand: number[]): void;
protected readonly stateToCommand: (state: EnablePresenceFlags) => Optional<StateCommandAndStatus>;
}
export declare const DetectionSettingsStateName: 'detectionSettings';
export type DetectionSettingsStateName = typeof DetectionSettingsStateName;
export type DetectionSettings = {
reportDetection?: Duration;
absenceDuration?: Duration;
detectionDistance?: Distance;
};
export declare class DetectionSettingsState extends DeviceOpState<DetectionSettingsStateName, DetectionSettings> {
constructor(device: DeviceModel);
parseOpCommand(opCommand: number[]): void;
protected readonly stateToCommand: (state: DetectionSettings) => Optional<StateCommandAndStatus>;
}
//# sourceMappingURL=presence.states.d.ts.map