/** Per-call telemetry emitted from the single tool-registration chokepoint (O1). */
export interface ToolTelemetryEvent {
    tool: string;
    outcome: 'success' | 'error';
    durationMs: number;
    /** Constructor name of a thrown error, when the handler threw. */
    errorClass?: string;
    /** Account the call ran against (env-configured or the per-request account). */
    accountId?: string;
    /** Self-reported agent intent from the optional `reason` arg, when provided (truncated). */
    reason?: string;
    /** Sanitized, allowlisted summary of the call inputs (redacted J1QL, IDs, limits, names). */
    input?: Record<string, unknown>;
    /** Result metadata derived from structuredContent (resultCount, hasNextPage, status, isError). */
    result?: Record<string, unknown>;
}
/** Sink for tool telemetry. The remote injects a request-scoped logger that ships to New Relic. */
export type ToolTelemetry = (event: ToolTelemetryEvent) => void;
/**
 * Default sink for stdio deployments. Writes to stderr only — stdout is owned by the MCP
 * stdio transport, so anything written there corrupts the protocol stream.
 */
export declare const stderrTelemetry: ToolTelemetry;
//# sourceMappingURL=telemetry.d.ts.map