export interface IObservable { } export interface IObservableArray extends Array { replace(data: Array): Array; remove(data: T): Array; } interface IArrayBaseChange { object: IObservableArray; observableKind: "array"; debugObjectName: string; index: number; } export interface IArraySplice extends IArrayBaseChange { type: "splice"; added: T[]; addedCount: number; removed: T[]; removedCount: number; } export interface IArrayChange extends IArrayBaseChange { type: "change"; newValue: T; index: number; } export interface IReactionDisposer { (): void; } export {};