UNPKG

react-query-external-sync

Version:

A tool for syncing React Query state to an external Dev Tools

61 lines (60 loc) 1.93 kB
/** * 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 {};