import type { InstrumentationBase } from '@opentelemetry/instrumentation'; import type { SpanProcessor } from '@opentelemetry/sdk-trace-web'; export type { BaseEvent, CloudEvent, CloudEventBaseData, AllMessages, EventType, EventPayload, GetEventData, } from '../cloudEvents'; export type OtelConfig = { serviceVersion: string; version: string; isProd: boolean; collectorUrl?: string; collectorTraceUrl?: string; serviceName: string; tracerName: string; instrumentations?: InstrumentationBase[]; spanProcessors?: SpanProcessor[]; delayMillis?: number; enableErrorInstrumentation?: boolean; }; export type TelemetryConfig = { otel: OtelConfig; disabled?: boolean; verbose?: boolean; gtm?: { gtmId?: string; options?: Record; }; };