@constructorfleet/ultimate-govee
Version:
Library for interacting with Govee devices written in Typescript.
24 lines • 1.15 kB
TypeScript
import { Logger, OnModuleDestroy, OnModuleInit } from '@nestjs/common';
import { EventBus } from '@nestjs/cqrs';
import { Subscription } from 'rxjs';
export declare abstract class ChannelService<TConfig extends object, Togglable extends boolean = false> implements OnModuleInit, OnModuleDestroy {
protected readonly eventBus: EventBus;
private readonly initialState?;
private readonly initialConfig?;
abstract readonly togglable: Togglable;
abstract readonly name: string;
protected readonly subscriptions: Subscription[];
protected logger: Logger;
private readonly state;
protected readonly onEnabledChanged$: import("rxjs").Observable<boolean>;
protected readonly onConfigChanged$: import("rxjs").Observable<TConfig>;
constructor(eventBus: EventBus, initialState?: boolean | undefined, initialConfig?: TConfig | undefined);
onModuleInit(): void;
onModuleDestroy(): void;
getConfig(): TConfig | undefined;
setConfig(config: TConfig): void;
setEnabled(enabled: boolean): void;
get isEnabled(): boolean;
closeSubscriptions(): void;
}
//# sourceMappingURL=channel.service.d.ts.map