import { Observable } from "rx"; import ViewModelContext from "../registry/ViewModelContext"; export interface IModelController { refresh(parameters?: object): any; updates?(): Observable; } export interface ObservableController extends IModelController { model: Observable; } export interface ObservableControllerFactory { (context: ViewModelContext): ObservableController; } export interface ControllableViewModel { onControllerReceived(controller: IModelController): any; } export declare function controllerFromObservable(observable: Observable): ObservableController;