/**
 * Log types supported by the logger
 */
export type LogType = "log" | "warn" | "error";
/**
 * Helper function for controlled logging
 * Only shows logs when enableLogs is true
 * Always shows warnings and errors regardless of enableLogs setting
 */
export declare function log(message: string, enableLogs: boolean, type?: LogType): void;
/**
 * Context for sync operations
 */
interface SyncContext {
    deviceName: string;
    deviceId: string;
    platform: string;
    requestId: string;
    timestamp: number;
}
/**
 * Sync logger for external sync operations
 * Provides clean, grouped logging similar to API route logging
 */
declare class ExternalSyncLogger {
    private operations;
    /**
     * Start a new sync operation
     */
    startOperation(type: "connection" | "query-action" | "storage-update" | "sync-session", context: Partial<SyncContext>, enableLogs?: boolean): string;
    /**
     * Log a storage update
     */
    logStorageUpdate(requestId: string, storageType: "mmkv" | "asyncStorage" | "secureStore", key: string, currentValue: unknown, newValue: unknown): void;
    /**
     * Log a query action
     */
    logQueryAction(requestId: string, action: string, queryHash: string, success?: boolean): void;
    /**
     * Log a connection event
     */
    logConnectionEvent(requestId: string, event: "connect" | "disconnect" | "reconnect", details?: string): void;
    /**
     * Log an error
     */
    logError(requestId: string, type: string, message: string, error?: Error): void;
    /**
     * Complete and log the operation summary
     */
    completeOperation(requestId: string, success?: boolean): void;
    private generateRequestId;
    private getOperationIcon;
    private getOperationTitle;
    private getStorageIcon;
    private getActionIcon;
    private getActionDisplayName;
    private formatDuration;
}
export declare const syncLogger: ExternalSyncLogger;
export {};
