/**
 * Cross-repo impact (Phase 1 local walk + Phase 2 bridge fan-out).
 * All bridge Cypher for this feature lives in this module.
 */
import type { GroupImpactResult } from './types.js';
import type { GroupToolPort } from './service.js';
/** Cross-boundary hops beyond this value are clamped (multi-hop reserved for future work). */
export declare const MAX_SUPPORTED_CROSS_DEPTH = 1;
/** Default wall-clock budget for the Phase 1 `impact` leg when callers omit `timeoutMs`. */
export declare const DEFAULT_LOCAL_IMPACT_TIMEOUT_MS = 30000;
export interface RunGroupImpactDeps {
    port: GroupToolPort;
    codragraphDir: string;
}
export declare function validateGroupImpactParams(params: Record<string, unknown>): {
    ok: true;
    name: string;
    repoPath: string;
    target: string;
    direction: 'upstream' | 'downstream';
    maxDepth: number;
    crossDepth: number;
    crossDepthWarning?: string;
    relationTypes?: string[];
    includeTests: boolean;
    minConfidence: number;
    service?: string;
    subgroup?: string;
    timeoutMs: number;
} | {
    ok: false;
    error: string;
};
export declare function collectImpactSymbolUids(local: unknown, servicePrefix: string | undefined): {
    uids: string[];
    targetFilePath?: string;
};
export declare function runGroupImpact(deps: RunGroupImpactDeps, params: Record<string, unknown>): Promise<GroupImpactResult | {
    error: string;
}>;
export { normalizeServicePrefix, fileMatchesServicePrefix } from './group-path-utils.js';
