/**
 * Router Coalgebra Implementation
 * Isomorphic router with Signal integration
 */
import { Router, RouterSignal, Route, RouteTree, RouteMatch, Option, NavigationEnv } from './types';
/**
 * Creates a router coalgebra that maintains isomorphism
 * between path strings and route states
 */
export declare const createRouter: <State>(routes: Route<State>[], env: NavigationEnv) => Router<State>;
/**
 * Creates a reactive router signal
 */
export declare const createRouterSignal: <A>(routes: Route<A>[], env: NavigationEnv) => RouterSignal<A>;
/**
 * Route Tree Matching - for nested routing
 */
export declare const matchRouteTree: <A>(tree: RouteTree<A>, path: string) => Option<RouteMatch<A>>;
/**
 * Route Tree Router - for complex nested routing
 */
export declare const createTreeRouter: <A>(tree: RouteTree<A>, env: NavigationEnv) => RouterSignal<A>;
/**
 * Router factory with environment detection
 */
export declare const router: <A>(routes: Route<A>[], env?: NavigationEnv) => RouterSignal<A>;
/**
 * Tree router factory with environment detection
 */
export declare const treeRouter: <A>(tree: RouteTree<A>, env?: NavigationEnv) => RouterSignal<A>;
