import type { CommandParameter } from "./types"; export declare function sanitizeArgs(commandName: string, args: CommandParameter[]): string[]; export interface CommandTraceContext { command: string; args: string[]; database: number; serverAddress: string; serverPort: number | undefined; } export interface BatchOperationContext { batchMode: "MULTI"; batchSize: number; database: number; serverAddress: string; serverPort: number | undefined; } export interface ConnectTraceContext { serverAddress: string; serverPort: number | undefined; connectionEpoch: number; } type CommandContext = CommandTraceContext; export declare function traceCommand(fn: () => Promise, contextFactory: () => CommandContext): Promise; export declare function traceBatch(fn: () => Promise, contextFactory: () => BatchOperationContext): Promise; export declare function traceConnect(fn: () => Promise, contextFactory: () => ConnectTraceContext): Promise; export {};