export interface CommandResult {
    command: string;
    args: string[];
    exitCode: number;
}
export interface DevPreflightRunner {
    run(command: string, args: string[], label: string): Promise<CommandResult>;
}
export interface DevPreflightOutput {
    write(text: string): void;
    error(text: string): void;
}
export interface DevPreflightOptions {
    cwd?: string;
    baseRef?: string;
    runner?: DevPreflightRunner;
    output?: DevPreflightOutput;
    capabilityPrefixes?: Set<string>;
    diffProvider?: () => string;
}
export interface RouteWarning {
    prefix: string;
    routes: string[];
}
export interface DevPreflightSummary {
    lintExitCode: number;
    discoverabilityExitCode: number;
    routeWarnings: RouteWarning[];
    heuristicUnavailable?: string;
}
export declare class SpawnDevPreflightRunner implements DevPreflightRunner {
    private readonly cwd;
    constructor(cwd: string);
    run(command: string, args: string[], label: string): Promise<CommandResult>;
}
export declare function extractAddedRoutePrefixes(diff: string): Map<string, string[]>;
export declare function findMissingCapabilityPrefixes(diff: string, capabilityPrefixes: Set<string>): RouteWarning[];
export declare function aggregateExitCode(summary: DevPreflightSummary): number;
export declare function defaultCapabilityPrefixes(): Set<string>;
export declare function runDevPreflight(options?: DevPreflightOptions): Promise<number>;
//# sourceMappingURL=devPreflight.d.ts.map