UNPKG

@angular-extensions/model

Version:

Angular Model - Simple state management with minimalistic API, one way data flow, multiple model support and immutable data exposed as RxJS Observable.

23 lines (22 loc) 739 B
import { Observable } from 'rxjs'; export declare class Model<T> { private immutable; private clone?; private _data; data$: Observable<T>; constructor(initialData: any, immutable: boolean, sharedSubscription: boolean, clone?: (data: T) => T); get(): T; set(data: T): void; } export declare class ModelFactory<T> { create(initialData: T): Model<T>; createMutable(initialData: T): Model<T>; createMutableWithSharedSubscription(initialData: T): Model<T>; createWithCustomClone(initialData: T, clone: (data: T) => T): Model<T>; createWithConfig(config: { initialData: T; immutable: boolean; sharedSubscription: boolean; clone: (data: T) => T; }): Model<T>; }