import type { RouteOptions, Router as TRouter } from '@ray-js/types';
import type { RouterScheduler } from './RouterScheduler';
export declare class Router implements TRouter {
    /**
     * 页面路由调度器
     */
    scheduler: RouterScheduler;
    /**
     * 当前环境地址栏
     */
    $href: string;
    constructor(options: {
        scheduler: RouterScheduler;
    });
    private normalizeRoute;
    /**
     * 跳转到指定路由
     * @param to - routes.config.ts 中配置的路由地址
     * @param options
     * @param options.subpackage - 分包名
     *
     * @example
     * router.push('/cat', { subpackage: 'packageA' });
     */
    push(to: string, options?: RouteOptions): void;
    /**
     * 替换当前路由
     * @param to - routes.config.ts 中配置的路由地址
     * @param options
     * @param options.subpackage - 分包名
     *
     * @example
     * router.replace('/cat', { subpackage: 'packageA' });
     */
    replace(to: string, options?: RouteOptions): void;
    go(delta: number): void;
    back(): void;
    reload(to: string): void;
    get href(): string;
}
