import type { OtelConfig, OtelSpan } from "./otel-types.js";
/**
 * AgBashTracer provides optional OpenTelemetry integration.
 * If @opentelemetry/api is not installed, all operations are no-ops (zero overhead).
 */
export declare class AgBashTracer {
    private tracer;
    private readonly config;
    private initialized;
    constructor(config?: OtelConfig);
    /** Attempt to initialize OTel. Call once at startup. Safe to call multiple times. */
    initialize(): Promise<void>;
    /** Create a span for a bash execution call */
    startExecSpan(script: string): OtelSpan;
    /** Create a span for a tool call */
    startToolSpan(toolName: string, args: Record<string, unknown>): OtelSpan;
    /** Create a span for a statement (only if statementLevel is enabled) */
    startStatementSpan(type: string, line?: number): OtelSpan;
    /** Check if the tracer is active (OTel was loaded successfully) */
    get isActive(): boolean;
}
