UNPKG

1.99 kBTypeScriptView Raw
1import { Observable } from 'rxjs';
2import { t } from '../common';
3declare type O = Record<string, unknown>;
4declare type Event = t.Event<O>;
5declare type N = t.ITreeNode;
6export declare class TreeState<T extends N = N, A extends Event = any> implements t.ITreeState<T, A> {
7 static create<T extends N = N, A extends Event = any>(args?: t.ITreeStateArgs<T>): t.ITreeState<T, A>;
8 static identity: t.TreeIdentity;
9 static props: <P>(of: t.INode<Record<string, unknown>>, fn?: ((props: P) => void) | undefined) => P;
10 static children: <T_1 extends t.ITreeNode<Record<string, unknown>>>(of: T_1, fn?: ((children: T_1[]) => void) | undefined) => T_1[];
11 static isInstance: (input: any) => boolean;
12 private constructor();
13 dispose(): void;
14 private _store;
15 private _children;
16 private _kind;
17 readonly key: string;
18 readonly namespace: string;
19 readonly parent: string | undefined;
20 private _dispose$;
21 readonly dispose$: Observable<void>;
22 private _event$;
23 readonly event: t.ITreeStateEvents<T, A>;
24 get isDisposed(): boolean;
25 get readonly(): t.ITreeStateReadonly<T, A>;
26 get state(): T;
27 get id(): string;
28 get children(): t.ITreeState<any, any>[];
29 get query(): t.ITreeQuery<T>;
30 get path(): t.ITreeStatePath<T, A>;
31 change: t.TreeStateChange<T, A>;
32 private _change;
33 add: <C extends t.ITreeNode<Record<string, unknown>> = t.ITreeNode<Record<string, unknown>>>(args: t.ITreeState<C, any> | {
34 parent?: string | undefined;
35 root: string | C | t.ITreeState<C, any>;
36 }) => t.ITreeState<C, any>;
37 remove: (input: string | t.ITreeState) => t.ITreeState<any, any>;
38 clear: () => t.ITreeState<T>;
39 contains: t.TreeStateContains<T, A>;
40 find: t.TreeStateFind<T, A>;
41 walkDown: t.TreeStateWalkDown<T, A>;
42 syncFrom: t.TreeStateSyncFrom;
43 private fire;
44 private ctx;
45 private child;
46 private childExists;
47 private getOrCreateInstance;
48 private listen;
49}
50export {};