import type { ComponentLogger, PerformanceTimer } from '../types/logger';
/**
 * Vue 3 composable for component-level logging
 * Automatically detects component name and provides scoped logging methods
 */
export declare function useLogger(customComponentName?: string): ComponentLogger;
/**
 * Composable for method-level logging with automatic entry/exit logging
 */
export declare function useMethodLogger(methodName: string, componentName?: string): {
    /**
     * Wrap a method with automatic entry/exit logging
     */
    wrapMethod<T extends (...args: any[]) => any>(fn: T, customMethodName?: string): T;
    /**
     * Log method entry manually
     */
    enter(data?: any): PerformanceTimer;
    /**
     * Log method exit manually
     */
    exit(timer: PerformanceTimer, result?: any): void;
    debug: (message: string, data?: any) => void;
    info: (message: string, data?: any) => void;
    warn: (message: string, data?: any) => void;
    error: (message: string, error?: Error, data?: any) => void;
    time: (label?: string) => PerformanceTimer;
    group: (label: string) => void;
    groupEnd: () => void;
};
/**
 * Composable for logging user interactions
 */
export declare function useInteractionLogger(componentName?: string): {
    /**
     * Log user click events
     */
    logClick(element: string, data?: any): void;
    /**
     * Log form submissions
     */
    logFormSubmit(formName: string, data?: any): void;
    /**
     * Log file uploads
     */
    logFileUpload(fileName: string, fileSize: number, fileType: string): void;
    /**
     * Log navigation events
     */
    logNavigation(from: string, to: string): void;
    debug: (message: string, data?: any) => void;
    info: (message: string, data?: any) => void;
    warn: (message: string, data?: any) => void;
    error: (message: string, error?: Error, data?: any) => void;
    time: (label?: string) => PerformanceTimer;
    group: (label: string) => void;
    groupEnd: () => void;
};
//# sourceMappingURL=useLogger.d.ts.map