/**
 * trace_middleware_chain — middleware chain introspection.
 *
 * Three query modes (mutually exclusive):
 *   1. Route mode     — path + optional method → ordered chain effective for that route
 *   2. Scope mode     — scope literal (e.g. "/posts/*") → chain of that specific app.use
 *   3. App-wide mode  — no path, no scope → flattened entries from every chain
 *
 * Any mode supports `only_conditional: true` to filter entries down to those
 * whose `applied_when` field is populated (Phase 2 T4 conditional middleware
 * detection). This absorbs the former standalone `trace_conditional_middleware`
 * tool — a scope-filtered or app-wide query with only_conditional=true is
 * equivalent to the old tool's output.
 *
 * Spec: docs/specs/2026-04-10-hono-framework-intelligence-spec.md (Task 16) +
 *       docs/specs/2026-04-11-hono-phase-2-plan.md (T7 consolidation)
 */
import type { MiddlewareEntry } from "../parser/extractors/hono-model.js";
export interface MiddlewareChainOptions {
    /** Filter to a specific middleware scope literal (e.g. "/posts/*"). */
    scope?: string;
    /** Return only entries whose applied_when field is populated. */
    only_conditional?: boolean;
}
export interface MiddlewareChainResult {
    /** Present only in route mode — describes the route that was looked up. */
    route?: {
        method: string;
        path: string;
        file: string;
        line: number;
    };
    /** Present only in scope / app-wide modes — the middleware scope(s) walked. */
    scopes?: string[];
    chain: MiddlewareEntry[];
    total: number;
    error?: string;
}
export declare function traceMiddlewareChain(repo: string, path?: string, method?: string, options?: MiddlewareChainOptions): Promise<MiddlewareChainResult>;
//# sourceMappingURL=hono-middleware-chain.d.ts.map