import { type AccessAddons, type AccessContext, type AccessManager, type AccessProvider } from '../access';
import type { NavigateFunction } from '../bridge';
import type { AccessBuilder } from './builder';
import { AccessContextBuilder } from './context';
import { AccessManagerBuilder } from './manager';
/**
 * 访问守护器构建器
 */
export declare class AccessGuarderBuilder implements AccessBuilder<AccessProvider> {
    /**
     * 上下文
     * @private
     */
    private _context?;
    /**
     * 管理器
     * @private
     */
    private _manager?;
    /**
     * 插件集合
     * @private
     */
    private readonly _addons;
    /**
     * 导航函数
     * @private
     */
    private _navigate?;
    /**
     * 设置上下文
     * @param context 上下文
     */
    context(context: AccessContext | ((builder: AccessContextBuilder) => AccessContext)): AccessGuarderBuilder;
    /**
     * 设置管理器
     * @param manager 管理器
     */
    manager(manager: AccessManager | ((builder: AccessManagerBuilder) => AccessManager)): AccessGuarderBuilder;
    /**
     * 设置插件集合
     * @param addons 插件集合
     */
    addons(...addons: AccessAddons): AccessGuarderBuilder;
    /**
     * 设置导航函数
     * @param navigate 导航函数
     */
    navigate(navigate: NavigateFunction): AccessGuarderBuilder;
    /**
     * 构建
     */
    build(): AccessProvider;
}
