export interface IKeyValue { key: string; value: { stringValue?: string; intValue?: string | number; doubleValue?: number; boolValue?: boolean; arrayValue?: { values: IKeyValue['value'][]; }; kvlistValue?: { values: IKeyValue[]; }; bytesValue?: string; }; } interface IEvent { timeUnixNano: string; name: string; attributes?: IKeyValue[]; droppedAttributesCount?: number; } interface ILink { traceId: string; spanId: string; traceState?: string; attributes?: IKeyValue[]; droppedAttributesCount?: number; } interface IStatus { message?: string; code?: number; } interface ISpan { traceId: string; spanId: string; traceState?: string; parentSpanId?: string; name: string; kind: number; startTimeUnixNano: string; endTimeUnixNano: string; attributes?: IKeyValue[]; droppedAttributesCount?: number; events?: IEvent[]; droppedEventsCount?: number; links?: ILink[]; droppedLinksCount?: number; status?: IStatus; } interface IInstrumentationScope { name?: string; version?: string; attributes?: IKeyValue[]; droppedAttributesCount?: number; } interface IScopeSpans { scope?: IInstrumentationScope; spans: ISpan[]; schemaUrl?: string; } interface IResource { attributes?: IKeyValue[]; droppedAttributesCount?: number; } interface IResourceSpans { resource?: IResource; scopeSpans?: IScopeSpans[]; schemaUrl?: string; } export interface IExportTraceServiceRequest { resourceSpans: IResourceSpans[]; } interface ILogRecord { timeUnixNano: string; observedTimeUnixNano?: string; severityNumber?: number; severityText?: string; body?: { stringValue?: string; intValue?: string | number; doubleValue?: number; boolValue?: boolean; arrayValue?: { values: unknown[]; }; kvlistValue?: { values: IKeyValue[]; }; bytesValue?: string; }; attributes?: IKeyValue[]; droppedAttributesCount?: number; traceId?: string; spanId?: string; } interface IScopeLogs { scope?: IInstrumentationScope; logRecords: ILogRecord[]; schemaUrl?: string; } interface IResourceLogs { resource?: IResource; scopeLogs?: IScopeLogs[]; schemaUrl?: string; } export interface IExportLogsServiceRequest { resourceLogs: IResourceLogs[]; } export interface Trace { trace_id: string; service_name: string; operation_name: string; start_time: number; end_time: number; duration: number; status_code: number; status_message: string | null; } export interface Span { span_id: string; trace_id: string; parent_span_id: string | null; name: string; kind: number; start_time: number; end_time: number; duration: number; status_code: number; status_message: string | null; attributes: Record; events: Array<{ time: number; name: string; attributes: Record; }>; links: Array<{ traceId: string; spanId: string; traceState?: string; attributes: Record; }>; } export interface Log { log_id: string; timestamp: number; trace_id: string | null; span_id: string | null; severity_number: number; severity_text: string | null; body: string; service_name: string; attributes: Record; } export interface ParsedLogsResult { logs: Log[]; } export interface TraceResult { traces: Trace[]; spans: Span[]; } export declare function parseOTLPTrace(otlpData: IExportTraceServiceRequest): TraceResult; export declare function parseOTLPLog(otlpData: IExportLogsServiceRequest): { logs: Log[]; }; export {};