/**
 * 🏎️ Framework Detection Lookup Implementation
 *
 * Ready-to-use TypeScript/JSON structure for instant framework detection
 * Import this directly into the .faf CLI for rapid framework identification
 */
export interface FrameworkSignature {
    framework: string;
    confidence: number;
    versionCheck?: string;
    additionalCheck?: string;
    requiresCombination?: string[];
    pattern?: boolean;
    ecosystem?: string;
    language?: string;
}
export interface DetectionResult {
    framework: string;
    confidence: number;
    version?: string;
    ecosystem?: string;
    language?: string;
    features: string[];
    deployment?: string;
    database?: string;
    testing?: string;
    monorepo?: string;
    detectedBy: 'unique' | 'directory' | 'combination' | 'package';
    detectionTime: number;
}
/**
 * TIER 1: Unique File Signatures
 * These files identify specific frameworks with 100% confidence
 */
export declare const UNIQUE_SIGNATURES: Record<string, FrameworkSignature>;
/**
 * TIER 2: Directory Pattern Signatures
 * Specific folder structures that strongly indicate frameworks
 */
export declare const DIRECTORY_PATTERNS: Record<string, FrameworkSignature>;
/**
 * TIER 3: File Combination Patterns
 * Multiple files that together indicate a specific framework/stack
 */
export declare const COMBINATION_PATTERNS: {
    't3-stack': {
        files: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
    'mean-stack': {
        files: string[];
        checks: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
    'mern-stack': {
        files: string[];
        checks: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
    'django-drf': {
        files: string[];
        checks: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
    'laravel-vue': {
        files: string[];
        checks: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
    fastapi: {
        files: string[];
        checks: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
    'nestjs-graphql': {
        files: string[];
        checks: string[];
        framework: string;
        confidence: number;
        features: string[];
        language: string;
    };
};
/**
 * TIER 4: Configuration File Indicators
 * Files that indicate specific tools, features, or deployment targets
 */
export declare const CONFIG_INDICATORS: {
    'jest.config.js': {
        feature: string;
        type: string;
    };
    'jest.config.ts': {
        feature: string;
        type: string;
    };
    'vitest.config.ts': {
        feature: string;
        type: string;
    };
    'cypress.config.js': {
        feature: string;
        type: string;
    };
    'playwright.config.ts': {
        feature: string;
        type: string;
    };
    '.eslintrc.js': {
        feature: string;
        type: string;
    };
    '.eslintrc.json': {
        feature: string;
        type: string;
    };
    '.prettierrc': {
        feature: string;
        type: string;
    };
    'biome.json': {
        feature: string;
        type: string;
    };
    '.github/workflows': {
        feature: string;
        type: string;
    };
    '.gitlab-ci.yml': {
        feature: string;
        type: string;
    };
    Jenkinsfile: {
        feature: string;
        type: string;
    };
    '.circleci/config.yml': {
        feature: string;
        type: string;
    };
    'vercel.json': {
        feature: string;
        type: string;
    };
    'netlify.toml': {
        feature: string;
        type: string;
    };
    'render.yaml': {
        feature: string;
        type: string;
    };
    'fly.toml': {
        feature: string;
        type: string;
    };
    'railway.json': {
        feature: string;
        type: string;
    };
    Dockerfile: {
        feature: string;
        type: string;
    };
    'docker-compose.yml': {
        feature: string;
        type: string;
    };
    'prisma/schema.prisma': {
        feature: string;
        type: string;
    };
    'drizzle.config.ts': {
        feature: string;
        type: string;
    };
    'ormconfig.js': {
        feature: string;
        type: string;
    };
    'knexfile.js': {
        feature: string;
        type: string;
    };
    'nx.json': {
        feature: string;
        type: string;
    };
    'turbo.json': {
        feature: string;
        type: string;
    };
    'lerna.json': {
        feature: string;
        type: string;
    };
    'rush.json': {
        feature: string;
        type: string;
    };
    'pnpm-workspace.yaml': {
        feature: string;
        type: string;
    };
};
/**
 * TIER 5: Package Manager Indicators
 * Lock files that indicate the package manager being used
 */
export declare const PACKAGE_MANAGERS: {
    'package-lock.json': string;
    'yarn.lock': string;
    'pnpm-lock.yaml': string;
    'bun.lockb': string;
    'Gemfile.lock': string;
    'Pipfile.lock': string;
    'poetry.lock': string;
    'composer.lock': string;
    'Cargo.lock': string;
    'go.sum': string;
    'Package.resolved': string;
    'Podfile.lock': string;
};
/**
 * Main Detection Class
 */
export declare class FrameworkDetector {
    private projectPath;
    private detectionStartTime;
    constructor(projectPath: string);
    /**
     * Run the complete detection pipeline
     */
    detect(): Promise<DetectionResult>;
    /**
     * Check for unique file signatures
     */
    private checkUniqueSignatures;
    /**
     * Check directory patterns
     */
    private checkDirectoryPatterns;
    /**
     * Check file combinations
     */
    private checkCombinations;
    /**
     * Analyze package.json as fallback
     */
    private analyzePackages;
    /**
     * Helper: Read package.json
     */
    private readPackageJson;
    /**
     * Helper: Get version from package.json
     */
    private getVersionFromPackageJson;
    /**
     * Create final detection result
     */
    private createResult;
}
/**
 * Export a simple detection function for CLI usage
 */
export declare function detectFramework(projectPath?: string): Promise<DetectionResult>;
//# sourceMappingURL=framework-detector.d.ts.map