undux
Version:
Dead simple state management for React
24 lines (23 loc) • 699 B
TypeScript
import { Observable as ObservableType } from 'rxjs';
export type ALL = '__ALL__';
export declare class Emitter<Messages extends object> {
private isDevMode;
private state;
constructor(isDevMode?: boolean);
/**
* Emit an event (silently fails if no listeners are hooked up yet)
*/
emit<K extends keyof Messages>(key: K, value: Messages[K]): this;
/**
* Subscribe to an event
*/
on<K extends keyof Messages>(key: K): ObservableType<Messages[K]>;
/**
* Subscribe to all events
*/
all(): ObservableType<Messages[keyof Messages]>;
private createChannel;
private deleteChannel;
private emitOnChannel;
private hasChannel;
}