import { Page, Pages, RouterScheduler as IRouterScheduler, Routes, TabBar, SubPackages } from '@ray-js/types';
type EventMembers = 'routeChange';
/**
 * web 环境下的路由协调器
 */
export declare class RouterScheduler extends IRouterScheduler<Page> {
    private $currentRoute;
    private $listeners;
    $entityMap: Page[];
    basename: string;
    /**
     * 当前调度器的 route 地址
     */
    get currentRoute(): string;
    set currentRoute(val: string);
    on(event: EventMembers, fn: Function): () => void;
    emit(event: EventMembers, ...args: any[]): void;
    /**
     * 初始化路由，注册应用声明的路由，并处理映射关系
     */
    registryPages(params: {
        routes: Routes;
        pages: Pages;
        tabBar: TabBar;
        subpackages?: SubPackages;
    }): void;
    getMatchedPage(pathname: string): Page & {
        params: object;
        pathname: string;
    };
    addPage(page: Page): void;
}
export {};
