import { type Logger } from 'winston'; import type TelemetryMetadata from './TelemetryMetadata'; type MaybePromise = T | Promise; export default abstract class TelemetrySender { readonly INSTRUMENTATION_KEY = "4b8b1a39-37c7-479e-a684-d4763c7c647c"; logger?: Logger; setLogger: (logger: Logger) => void; isTelemetryAllowedForCurrentApp: boolean; allowTelemetryForCurrentApp: () => void; getIsSendingTelemetry: () => boolean; sendAgreementEvent(): Promise; sendDisagreementEvent(): void; setUsersAgreedToTelemetry(hasAgreed: boolean): Promise; setUsersWithdrewTelemetryAgreement(): void; sendMinimalEvent(action: string): void; abstract sendEvent(action: string, metadata?: TelemetryMetadata): MaybePromise; abstract sendPageView(pageName: string): MaybePromise; abstract sendMetric(name: string, average: number): MaybePromise; abstract sendTrace(message: string): MaybePromise; abstract sendErrorReport(error: Error): MaybePromise; abstract flush(): MaybePromise; abstract stop(): void; } export {}; //# sourceMappingURL=TelemetrySender.d.ts.map