/** * Base class for layout components in JQHTML Router v2 */ import { Jqhtml_Component } from '@jqhtml/core'; import type { RouteInfo } from './types.js'; declare module '@jqhtml/core' { interface Jqhtml_Component { _is_layout?: boolean; } } export declare class Jqhtml_Layout extends Jqhtml_Component { static layout?: string; _is_layout: boolean; constructor(options?: any); /** * Called when the route changes within the same layout * Override this to update layout state (e.g., active navigation items) */ on_route_change(old_route: RouteInfo | null, new_route: RouteInfo): Promise; /** * Called before dispatching to a new route * Can cancel navigation by returning false or redirect by returning a URL */ pre_dispatch(route_info: RouteInfo): Promise; /** * Called after a route has fully loaded * Can trigger redirects for post-load logic */ post_dispatch(route_info: RouteInfo): Promise; /** * Get the content container where routes render * Must contain an element with $sid="content" */ $content(): JQuery; /** * Internal method to render a route into this layout * Called by the router during dispatch */ _render_route(route_component: any): Promise; /** * Override on_render for custom layout rendering * By default does nothing - layouts should override this or use templates */ on_render(): Promise; /** * Layouts should never re-render after initial load * They persist across route changes */ should_rerender(): boolean; } //# sourceMappingURL=layout.d.ts.map