UNPKG

@constructorfleet/ultimate-govee

Version:

Library for interacting with Govee devices written in Typescript.

47 lines 2.63 kB
import { CommandBus, EventBus } from '@nestjs/cqrs'; import { Device } from '../../../device'; import { DeviceFactory } from '../../../device.factory'; import { DeviceModel } from '../../../devices.model'; import { IceMakerNuggetSizeState, NuggetSizeStateName } from './ice-maker.nugget-size'; import { BasketFullStateName, IceMakerBasketFull } from './ice-maker.basket-full'; import { IceMakerStatusState, IceMakerStatusStateName } from './ice-maker.status'; import { IceMakerScheduledStart, ScheduledStartStateName } from './ice-maker.scheduled-start'; import { ActiveState, ActiveStateName, ConnectedState, ConnectedStateName, PowerState, PowerStateName, TemperatureState, TemperatureStateName } from '../../../states'; import { IceMakerMakingIceState, MakingIceStateName } from './ice-maker.make-ice'; import { Optional } from '../../../../../common/types'; import { NuggetSize } from './types'; export declare const IceMakerType: 'ice-maker'; export type IceMakerType = typeof IceMakerType; export declare class IceMakerDevice extends Device<IceMakerStates> implements IceMaker { static readonly deviceType: IceMakerType; get deviceType(): string; get NuggetSize(): typeof NuggetSize; constructor(device: DeviceModel, eventBus: EventBus, commandBus: CommandBus); get [BasketFullStateName](): Optional<IceMakerBasketFull>; get [MakingIceStateName](): Optional<IceMakerMakingIceState>; get [NuggetSizeStateName](): Optional<IceMakerNuggetSizeState>; get [ScheduledStartStateName](): Optional<IceMakerScheduledStart>; get [IceMakerStatusStateName](): Optional<IceMakerStatusState>; get [PowerStateName](): Optional<PowerState>; get [ConnectedStateName](): Optional<ConnectedState>; get [ActiveStateName](): Optional<ActiveState>; get [TemperatureStateName](): Optional<TemperatureState>; } export declare class IceMakerFactory extends DeviceFactory<IceMakerDevice, Omit<IceMaker, 'NuggetSize'>> { constructor(); } export type IceMakerStates = { [BasketFullStateName]: Optional<IceMakerBasketFull>; [MakingIceStateName]: Optional<IceMakerMakingIceState>; [NuggetSizeStateName]: Optional<IceMakerNuggetSizeState>; [ScheduledStartStateName]: Optional<IceMakerScheduledStart>; [IceMakerStatusStateName]: Optional<IceMakerStatusState>; [PowerStateName]: Optional<PowerState>; [ConnectedStateName]: Optional<ConnectedState>; [ActiveStateName]: Optional<ActiveState>; [TemperatureStateName]: Optional<TemperatureState>; }; export type IceMaker = { NuggetSize: typeof NuggetSize; } & IceMakerStates; //# sourceMappingURL=ice-maker.d.ts.map