import { TraceLog, TraceOptions } from '../types';
/**
 * Wraps a function with tracing functionality.
 * @param name The name of the trace.
 * @param fn The function to wrap.
 * @param options Additional options for the trace.
 * @returns The wrapped function.
 */
export declare function trace<T extends (...args: any[]) => any>(name: string, fn: T, options?: TraceOptions): (...args: Parameters<T>) => ReturnType<T>;
/**
 * Inserts data into the current trace log or a specified trace log.
 * @param data The data to insert into the trace log.
 * @param traceId Optional trace ID to insert data into. If not provided, uses the current trace.
 */
export declare function traceInsert(data: Partial<TraceLog>, traceId?: string): void;
/**
 * Retrieves the ID of the current trace.
 * @returns The current trace ID or undefined if no trace is active.
 */
export declare function getCurrentTraceId(): string | undefined;
