/**
 * 客户端运行时执行器
 * 处理守卫、中间件和认证的执行逻辑
 */
import type { AuthOptions, GuardOptions, MiddlewareOptions } from './types';
/**
 * 路由运行时上下文
 */
export interface RouteRuntimeContext {
    path: string;
    params: Record<string, string>;
    query: Record<string, string>;
    user?: any;
    permissions?: string[];
    roles?: string[];
    data: Record<string, any>;
    headers?: Record<string, string>;
}
/**
 * 执行结果
 */
export interface ExecutionResult {
    success: boolean;
    allowed: boolean;
    redirectTo?: string;
    errorMessage?: string;
    error?: string;
}
/**
 * 守卫执行结果
 */
export interface GuardResult extends ExecutionResult {
    guardName: string;
}
/**
 * 运行时执行器
 */
export declare class RuntimeExecutor {
    /**
     * 执行认证守卫
     */
    static executeAuth(authConfig: AuthOptions, context: RouteRuntimeContext): Promise<ExecutionResult>;
    /**
     * 执行路由守卫
     */
    static executeGuard(guardConfig: GuardOptions, context: RouteRuntimeContext): Promise<GuardResult>;
    /**
     * 执行中间件
     */
    static executeMiddleware(middlewareConfig: MiddlewareOptions, context: RouteRuntimeContext, next: () => Promise<void> | void): Promise<void>;
    /**
     * 执行中间件链
     */
    static executeMiddlewareChain(middlewares: MiddlewareOptions[], context: RouteRuntimeContext, finalHandler: () => Promise<void> | void): Promise<void>;
    /**
     * 执行守卫链
     */
    static executeGuardChain(guards: (AuthOptions | GuardOptions)[], context: RouteRuntimeContext): Promise<ExecutionResult>;
    /**
     * 清理缓存
     */
    static clearCache(): void;
    /**
     * 获取性能统计
     */
    static getPerformanceStats(): Record<string, any>;
}
/**
 * 创建运行时上下文
 */
export declare function createRuntimeContext(path: string, params?: Record<string, string>, query?: Record<string, string>, user?: any, additionalData?: Record<string, any>): RouteRuntimeContext;
export default RuntimeExecutor;
//# sourceMappingURL=runtime.d.ts.map