/**
 * 📊 FAF CLI Analytics & Telemetry System
 * F1-inspired performance monitoring and user analytics
 */
interface UsageStats {
    totalCommands: number;
    favoriteCommands: Record<string, number>;
    averageExecutionTime: number;
    errorRate: number;
    lastUsed: string;
    projectTypes: Record<string, number>;
}
/**
 * Core Analytics Engine
 */
export declare class FafAnalytics {
    private static instance;
    private events;
    private statsPath;
    private constructor();
    static getInstance(): FafAnalytics;
    /**
     * Track command execution
     */
    trackCommand(command: string, args: string[], duration: number, success: boolean): Promise<void>;
    /**
     * Track errors with context
     */
    trackError(error: Error, command?: string, args?: string[]): Promise<void>;
    /**
     * Track performance milestones
     */
    trackPerformance(milestone: string, duration: number, metadata?: Record<string, any>): Promise<void>;
    /**
     * Track feature usage
     */
    trackFeatureUsage(feature: string, context?: Record<string, any>): Promise<void>;
    /**
     * Get usage statistics
     */
    getUsageStats(): Promise<UsageStats>;
    /**
     * Display championship-style analytics summary
     */
    showAnalyticsSummary(): Promise<void>;
    /**
     * Privacy controls
     */
    disableTelemetry(): Promise<void>;
    enableTelemetry(): Promise<void>;
    private recordEvent;
    private flushEvents;
    private updateUsageStats;
    private saveUsageStats;
    private getVersion;
    private getPlatformInfo;
    private getCpuInfo;
    private detectProjectType;
    private formatErrorRate;
}
/**
 * Convenience functions for analytics tracking
 */
export declare const analytics: FafAnalytics;
export declare function trackCommand(command: string, args: string[], duration: number, success: boolean): Promise<void>;
export declare function trackError(error: Error, command?: string, args?: string[]): Promise<void>;
export declare function trackPerformance(milestone: string, duration: number, metadata?: Record<string, any>): Promise<void>;
export declare function trackFeatureUsage(feature: string, context?: Record<string, any>): Promise<void>;
/**
 * Performance monitoring decorator
 */
export declare function withPerformanceTracking<T extends (...args: any[]) => Promise<any>>(fn: T, name: string): T;
export {};
//# sourceMappingURL=analytics.d.ts.map