UNPKG

@nlabs/arkhamjs

Version:

Javascript Flux Library

43 lines (42 loc) 1.73 kB
import { EventEmitter } from 'events'; import type { FluxAction, FluxMiddlewareType, FluxOptions, FluxStore } from './Flux.types'; export declare class FluxFramework extends EventEmitter { static initFlux: boolean; isInit: boolean; readonly pluginTypes: readonly string[]; private state; private storeActions; private readonly defaultOptions; private middleware; private options; private stateCache; private stateChanged; constructor(); addMiddleware(middleware: FluxMiddlewareType[]): void; clearAppData(): Promise<boolean>; clearMiddleware(): boolean; removeStores(storeNames: string[]): void; dispatch(action: FluxAction, silent?: boolean): Promise<FluxAction>; getOptions(): FluxOptions; getState<T = unknown>(path?: string | string[], defaultValue?: T): T; getStore(name?: string): FluxStore | undefined; init(options?: FluxOptions, reset?: boolean): Promise<FluxFramework>; onInit(listener: (...args: any[]) => void): void; offInit(listener: (...args: any[]) => void): void; off(eventType: string, listener: (...args: any[]) => void): this; on(eventType: string, listener: (...args: any[]) => void): this; addStores(stores: FluxStore[]): Promise<FluxStore[]>; removeMiddleware(names: string[]): void; reset(clearStorage?: boolean): Promise<void>; setState(path: string | string[] | undefined, value: unknown): Promise<boolean>; private processMiddleware; private updateStorage; private updateStoresState; private getCachedStack; private addPlugin; private deregister; private register; private removePlugin; private useStorage; } export declare const Flux: FluxFramework;