import type { BaseTelemetryEvent } from "./events.js"; type InspectorMode = "standalone" | "embedded" | "cloud"; export declare class Telemetry { private static instance; private readonly POSTHOG_PROXY_URL; private readonly SCARF_PROXY_URL; private readonly UNKNOWN_USER_ID; private _currUserId; private _posthogClient; private _scarfClient; private _source; private _mode; private constructor(); private isTelemetryDisabled; private getStoredSource; static getInstance(): Telemetry; /** * Set the source identifier for telemetry events. * This allows tracking usage from different applications. * @param source - The source identifier (e.g., "inspector-web", "inspector-standalone") */ setSource(source: string): void; /** * Get the current source identifier. */ getSource(): string; /** * Get the inspector's deployment mode (standalone CLI, embedded in mcp-use, * or cloud-hosted). Emitted with every telemetry event. */ getMode(): InspectorMode; get userId(): string; private generateUserId; capture(event: BaseTelemetryEvent): Promise; trackPackageDownload(properties?: Record): Promise; trackInspectorOpen(data: { serverUrl?: string; connectionCount?: number; }): Promise; } export {}; //# sourceMappingURL=telemetry.d.ts.map