import type { TelemetryOptions } from 'ai'; import type { BuiltMemory, BuiltTelemetry } from '../../types'; import type { ExecutionOptions } from '../../types/sdk/agent'; import type { OpaqueSpanLink } from '../../types/telemetry'; import type { JSONValue } from '../../types/utils/json'; import type { AgentRuntimeConfig } from '../loop/agent-runtime'; export type MemoryOperation = 'created' | 'deleted' | 'pruned' | 'query_memory'; export type MemoryScopeType = 'session' | 'task' | 'action' | 'agent' | 'team' | 'organization' | 'external'; export type MemoryStoreType = 'vector_db' | 'kv_store' | 'document_db' | 'graph_db' | 'file_system' | 'in_memory' | 'rdbms'; export interface MemorySpanAttributes { ids?: string[]; descriptions?: string[]; operations?: MemoryOperation[]; types?: MemoryScopeType[]; owners?: string[]; storeTypes?: MemoryStoreType[]; storeNames?: string[]; } export declare function inferMemoryStoreAttributes(memory: BuiltMemory): Pick; export declare function withMemorySpan(kind: 'query_memory' | 'save_memory', agentName: string, telemetry: BuiltTelemetry | undefined, buildInitialAttributes: () => MemorySpanAttributes, fn: () => Promise<{ result: T; attributes?: MemorySpanAttributes; }>): Promise; export declare class RuntimeTelemetry { private readonly config; constructor(config: AgentRuntimeConfig); resolve(options?: ExecutionOptions): BuiltTelemetry | undefined; flush(options?: ExecutionOptions): Promise; buildTelemetryOptions(options?: ExecutionOptions): { telemetry?: TelemetryOptions; }; withRootSpan(operation: 'generate' | 'stream', options: ExecutionOptions | undefined, runId: string, fn: () => Promise, links?: OpaqueSpanLink[]): Promise; withToolSpan(toolCallId: string, toolName: string, input: JSONValue, t: BuiltTelemetry | undefined, fn: () => Promise): Promise; private buildTelemetryRootAttributes; private buildTelemetryMetadataAttributes; private buildAiSdkOperationAttributes; }