import { ActivateSymbol, DeactivateSymbol, SetStateSymbol } from './const'; import type { DisposeFn } from './types'; export type OrchModelEventMap = { change: (state: Readonly, oldState: Readonly) => void; activate: () => void; deactivate: () => void; }; export type OrchModelEventListenerMap = { [K in keyof OrchModelEventMap]: Set[K]>; }; export type OrchModelEventListenFnMap = { [K in keyof OrchModelEventMap]: (fn: OrchModelEventMap[K]) => DisposeFn; }; export type OrchModelStatus = 'initialized' | 'active' | 'inactive'; export declare class OrchModel { #private; readonly on: OrchModelEventListenFnMap; constructor(state: State); get status(): OrchModelStatus; getState(): Readonly; protected setState: (newState: State) => void; [DeactivateSymbol](): void; [ActivateSymbol](): void; [SetStateSymbol](newState: State): void; } export declare function activate>(model: M): void; export declare function deactivate>(model: M): void; //# sourceMappingURL=model.d.ts.map