import { IObservable } from "../observable"; import { ArrayCollection } from "../array-collection"; import { CoreEvent } from "@tandem/common/messages"; import { IDispatcher } from "@tandem/mesh"; export declare class ObservableCollection extends ArrayCollection implements IObservable { private _observable; private _itemObserver; protected constructor(...items: T[]); observe(actor: IDispatcher): void; unobserve(actor: IDispatcher): void; notify(message: CoreEvent): any; push(...items: Array): number; unshift(...items: Array): number; shift(): T; pop(): T; splice(start: number, deleteCount?: number, ...newItems: T[]): T[]; private _watchItems(newItems); }