import { OtelClient } from './otel'; import type { EventType, EventPayload, GetEventData, CloudEventBaseData, TelemetryConfig, AllMessages } from './types'; import { Context } from '@opentelemetry/api'; import { TraceStep } from './otel/trace-step'; import { type WithOptionalTail } from './page-resource'; type SendDataFor = Extract, readonly unknown[]> extends infer U ? U extends readonly unknown[] ? WithOptionalTail : GetEventData : GetEventData; export declare class Telemetry { private config; private initialized; private useCloudEventData; otelClient: OtelClient; tracer: { traceStep: (event: T, data?: EventPayload) => TraceStep | undefined; }; constructor(); updateCloudEventData: (useCloudEventData: () => CloudEventBaseData) => void; send(message: AllMessages): void; send(event: T, data?: EventPayload, baseData?: Partial): void; init(config: TelemetryConfig): void; startSpan(event: T, data?: EventPayload, parentCtx?: Context): import("./otel").OtelClientSpan | undefined; private constructCloudEvent; private sendToOtelService; forceFlush(): Promise; shutdown(): Promise; sendViewedMessage(data: GetEventData<'com.redocly.page.viewed'>, baseData?: Partial): void; sendPerformanceMetricsMessage(data: GetEventData<'com.redocly.performanceMetrics.collected'>, baseData?: Partial): void; sendDownloadDefinitionClickedMessage(data: SendDataFor<'com.redocly.downloadDefinition.clicked'>, baseData?: Partial): void; sendCopyCodeSnippetClickedMessage(data: SendDataFor<'com.redocly.copyCodeSnippet.clicked'>, baseData?: Partial): void; sendReferencedInClickedMessage(data: SendDataFor<'com.redocly.referencedIn.clicked'>, baseData?: Partial): void; sendSelectLanguageClickedMessage(data: SendDataFor<'com.redocly.selectLanguage.clicked'>, baseData?: Partial): void; sendExpandCollapseAllClickedMessage(data: SendDataFor<'com.redocly.expandCollapseAll.clicked'>, baseData?: Partial): void; sendExamplesSwitcherClickedMessage(data: SendDataFor<'com.redocly.examplesSwitcher.clicked'>, baseData?: Partial): void; sendSwitchServersClickedMessage(data: SendDataFor<'com.redocly.switchServers.clicked'>, baseData?: Partial): void; sendTryItOpenedMessage(data: SendDataFor<'com.redocly.tryIt.opened'>, baseData?: Partial): void; sendChangeLayoutClickedMessage(data: SendDataFor<'com.redocly.changeLayout.clicked'>, baseData?: Partial): void; sendViewSecurityDetailsClickedMessage(data: SendDataFor<'com.redocly.viewSecurityDetails.clicked'>, baseData?: Partial): void; sendViewSecurityDetailsClosedMessage(data: SendDataFor<'com.redocly.viewSecurityDetails.closed'>, baseData?: Partial): void; sendSearchOpenedMessage(data: SendDataFor<'com.redocly.search.opened'>, baseData?: Partial): void; sendSearchResultClickedMessage(data: SendDataFor<'com.redocly.searchResult.clicked'>, baseData?: Partial): void; sendSearchInputResetClickedMessage(data: SendDataFor<'com.redocly.searchInputReset.clicked'>, baseData?: Partial): void; sendSwitchMessageClickedMessage(data: SendDataFor<'com.redocly.switchMessage.clicked'>, baseData?: Partial): void; sendSwitchExampleClickedMessage(data: SendDataFor<'com.redocly.switchExample.clicked'>, baseData?: Partial): void; sendMessageClickedMessage(data: SendDataFor<'com.redocly.message.clicked'>, baseData?: Partial): void; sendServerModalOpenedMessage(data: SendDataFor<'com.redocly.serverModal.opened'>, baseData?: Partial): void; sendRequiredScopesModalOpenedMessage(data: SendDataFor<'com.redocly.requiredScopesModal.opened'>, baseData?: Partial): void; sendInitialMessage(data: GetEventData<'com.redocly.redoc.initialized'>, baseData?: Partial): void; sendErrorMessage(data: GetEventData<'com.redocly.error.occurred'>, baseData?: Partial): void; } export {};