import RegistryEntry from "./RegistryEntry"; import AreaRegistry from "./AreaRegistry"; export interface IViewModelRegistrySetter { master(entry: RegistryEntry): AreaRegistry; index(entry: RegistryEntry): AreaRegistry; notFound(entry: RegistryEntry): AreaRegistry; add(entry: RegistryEntry): IViewModelRegistrySetter; forArea(area: string): AreaRegistry; } export interface IViewModelRegistryGetter { getArea(areaId: string): AreaRegistry; getAreas(): AreaRegistry[]; getEntry(area: string, id: string): { area: string; viewmodel: RegistryEntry; }; getEntry(construct: Function): { area: string; viewmodel: RegistryEntry; }; } export interface IViewModelRegistry extends IViewModelRegistryGetter, IViewModelRegistrySetter { }