/**
 * Types for workspace discovery.
 *
 * @module discovery/types
 */
/**
 * Identifies the type of B2C Commerce project.
 *
 * Simplified to 3 workspace types:
 * - cartridges: Any project with cartridges (detected via .project files)
 * - pwa-kit-v3: PWA Kit v3 storefront
 * - storefront-next: Storefront Next (Odyssey)
 */
export type ProjectType = 'cartridges' | 'pwa-kit-v3' | 'storefront-next';
/**
 * Detection pattern definition.
 */
export interface DetectionPattern {
    /** Unique pattern identifier */
    name: string;
    /** Project type this pattern detects */
    projectType: ProjectType;
    /** Detection function */
    detect: (workspacePath: string) => Promise<boolean>;
}
/**
 * Result of workspace detection.
 */
export interface DetectionResult {
    /** All detected project types (from matched patterns) */
    projectTypes: ProjectType[];
    /** All patterns that matched */
    matchedPatterns: string[];
    /** Whether auto-discovery was performed */
    autoDiscovered: boolean;
}
/**
 * Options for workspace detection.
 */
export interface DetectOptions {
    /** Custom patterns to use (replaces defaults) */
    patterns?: DetectionPattern[];
    /** Additional patterns to include */
    additionalPatterns?: DetectionPattern[];
    /** Patterns to exclude by name */
    excludePatterns?: string[];
}
