/** * Le ViewStore est une classe servant d'intermédiaire entre le routeur et le reste de l'application. * La propriété `currentView` est une observable en bijection avec l'URL. Son type est à spécifier en tant que paramètre de type de la classe. */ export declare class ViewStore { /** Représente l'état courant de l'URL. */ currentView: V; readonly paramNames: (keyof V)[]; readonly prefix?: N; /** * Construit un nouveau ViewStore. * @param paramNames Le nom des paramètres de l'URL, dans l'ordre. Ils doivent correspondre avec les clés de `currentView`. * @param prefix Le préfixe éventuel des URLs de ce ViewStore (obligatoire pour avoir plusieurs stores). */ constructor(paramNames: V, prefix?: N); /** Calcule l'URL en fonction de l'état courant. */ readonly currentPath: string; /** * Récupère l'URL pour la vue donnée. * @param view La vue à récupérer. */ getUrl(view: Partial): string; /** * Met à jour la vue courante avec les paramètres donnés. * Utile pour mettre à jour plusieurs paramètres à la fois. * @param view Les paramètres. */ setView(view: Partial): void; /** * Calcule l'état en fonction de l'URL courante. * @param prefix Le préfixe de l'URL courante. * @param params Les paramètres de l'URL. */ updateView(prefix?: string, params?: string[]): void; private getUrlFromView(view); }