import type { AbortNavigationResult, CookieManager, MiddlewareContext, MiddlewareOptions, MiddlewareResult, NavigateToOptions, NavigateToResult, NavigationError, RouteLocation, RouteMiddlewareDefinition, RouteMiddlewareHandler, StorageManager } from './types'; // ============================================================================= // Navigation Helpers // ============================================================================= export declare function navigateTo(navPath: string, options?: NavigateToOptions): NavigateToResult; export declare function abortNavigation(error: string | NavigationError): AbortNavigationResult; // ============================================================================= // Middleware Definition // ============================================================================= export declare function defineMiddleware(handler: RouteMiddlewareHandler, options?: MiddlewareOptions): RouteMiddlewareDefinition; export declare function createServerCookieManager(request: Request, responseHeaders: Headers): CookieManager; export declare function createClientCookieManager(): CookieManager; // ============================================================================= // Storage Manager // ============================================================================= export declare function createStorageManager(): StorageManager; export declare function registerMiddleware(name: string, middleware: RouteMiddlewareDefinition): void; export declare function getMiddleware(name: string): RouteMiddlewareDefinition | undefined; export declare function hasMiddleware(name: string): boolean; export declare function clearMiddleware(): void; export declare function getMiddlewareNames(): string[]; // ============================================================================= // Middleware Loading // ============================================================================= export declare function loadMiddlewareFromDirectory(baseDir: string, middlewareDir?: string): Promise; export declare function createRouteLocation(pathname: string, params: Record, meta: Record, search?: string): RouteLocation; export declare function createMiddlewareContext(to: RouteLocation, from: RouteLocation | null, request?: Request): MiddlewareContext; export declare function runMiddleware(middlewareNames: string | string[], context: MiddlewareContext): Promise;