/**
 * Debug utilities for manifest inspection and comparison
 */
import type { EntryData } from "./server/context";
/**
 * Serialized entry for debug output
 */
export interface SerializedEntry {
    id: string;
    shortCode: string;
    type: string;
    parentShortCode: string | null;
    pattern?: string;
    hasLoader: boolean;
    hasMiddleware: boolean;
    hasErrorBoundary: boolean;
    parallelCount: number;
    interceptCount: number;
}
/**
 * Serialized manifest structure
 */
export interface SerializedManifest {
    routes: Record<string, SerializedEntry>;
    layouts: Record<string, SerializedEntry>;
    totalRoutes: number;
    totalLayouts: number;
}
/**
 * Serialize a manifest Map into a JSON-friendly structure
 */
export declare function serializeManifest(manifest: Map<string, EntryData>): SerializedManifest;
/**
 * Compare two manifests and return differences
 */
export declare function compareManifests(oldManifest: SerializedManifest, newManifest: SerializedManifest): {
    addedRoutes: string[];
    removedRoutes: string[];
    changedRoutes: Array<{
        key: string;
        field: string;
        old: any;
        new: any;
    }>;
    addedLayouts: string[];
    removedLayouts: string[];
    changedLayouts: Array<{
        key: string;
        field: string;
        old: any;
        new: any;
    }>;
};
/**
 * Format manifest diff as a human-readable string
 */
export declare function formatManifestDiff(diff: ReturnType<typeof compareManifests>): string;
//# sourceMappingURL=debug.d.ts.map