murmuraba
Version:
Real-time audio noise reduction with advanced chunked processing for web applications
18 lines • 670 B
TypeScript
import { EngineState } from '../types';
import { EventEmitter } from './event-emitter';
interface StateEvents {
'state-change': (oldState: EngineState, newState: EngineState) => void;
[key: string]: (...args: any[]) => void;
}
export declare class StateManager extends EventEmitter<StateEvents> {
private currentState;
private allowedTransitions;
getState(): EngineState;
canTransitionTo(newState: EngineState): boolean;
transitionTo(newState: EngineState): boolean;
isInState(...states: EngineState[]): boolean;
requireState(...states: EngineState[]): void;
reset(): void;
}
export {};
//# sourceMappingURL=state-manager.d.ts.map