/**
 * Multi-Spec Detector
 *
 * Detects ALL specs referenced in an increment, supporting:
 * - Single-spec increments (backend OR frontend)
 * - Multi-spec increments (backend AND frontend AND mobile)
 * - Parent coordination specs (_parent project)
 */
import { SpecIdentifier } from '../types/spec-identifier.js';
export interface DetectedSpec {
    /** Spec identifier */
    identifier: SpecIdentifier;
    /** Project this spec belongs to */
    project: string;
    /** Path to spec file */
    path: string;
    /** Whether this spec should be synced to GitHub */
    syncEnabled: boolean;
}
export interface MultiSpecDetectionResult {
    /** All detected specs */
    specs: DetectedSpec[];
    /** Primary spec (if single-spec increment) */
    primary?: DetectedSpec;
    /** Whether this is a multi-spec increment */
    isMultiSpec: boolean;
    /** Projects involved */
    projects: string[];
}
/**
 * Detect all specs referenced in an increment
 *
 * CRITICAL ARCHITECTURE (v0.24.0+):
 * - Increments NEVER reference other increments
 * - Flow: INCREMENT (feature_id) → FEATURE → USER STORIES
 * - Detection: Read increment metadata.json → Find feature_id → Find all user stories with that feature
 */
export declare function detectSpecsInIncrement(incrementPath: string, config?: any): Promise<MultiSpecDetectionResult>;
/**
 * Project detection result with confidence score
 */
export interface ProjectDetectionResult {
    project: string;
    confidence: number;
    matchedKeywords: string[];
}
/**
 * Detect project from increment name or description with confidence scoring
 */
export declare function detectProjectFromIncrementWithConfidence(incrementName: string, description?: string, config?: any): ProjectDetectionResult;
/**
 * Detect project from increment name or description (simple version)
 */
export declare function detectProjectFromIncrement(incrementName: string, description?: string, config?: any): string;
/**
 * Check if spec should be synced to GitHub
 */
export declare function shouldSyncSpec(spec: DetectedSpec, config?: any): boolean;
//# sourceMappingURL=spec-detector.d.ts.map