import { McpTelemetryClient } from "./client.js"; export declare function getTelemetry(): McpTelemetryClient; /** Reset helper — tests only. */ export declare function __resetTelemetry(): void; /** Replace the singleton with a pre-built instance. Tests only. */ export declare function __installTelemetry(client: McpTelemetryClient): void; export declare function drainTelemetry(): Promise; export type ToolOutcome = "success" | "error" | "validation_failed"; export declare function emitToolCalled(params: { toolName: string; durationMs: number; outcome: ToolOutcome; }): void; /** Fired once per install. Caller must have already claimed via claimFirstRun(). */ export declare function emitInstalled(params: { mcpVersion: string; npmVersion?: string | null; os: string; arch: string; agentHint?: string | null; }): void; export declare function emitConsentAccepted(policyVersion: string): void; export declare function emitConsentDeclined(policyVersion: string): void; export declare function emitSessionCreated(params: { glasses: string; recordingEnabled: boolean; platform: "android" | "ios"; tier?: string | null; }): void; export type LoginInitiatedTrigger = "cli_explicit" | "account_required" | "meter_exhausted"; export declare function emitLoginInitiated(trigger: LoginInitiatedTrigger): void; export type LoginCompletedOutcome = "success" | "code_expired" | "user_denied" | "network_error" | "polling_aborted"; export declare function emitLoginCompleted(params: { outcome: LoginCompletedOutcome; durationMs: number; }): void; /** Fires once when the install transitions from anonymous to linked. */ export declare function emitAccountLinked(): void; export declare function emitLoggedOut(sessionLifetimeDays: number | null): void; /** * Emit `mcp.installed` iff this is the first run on this machine. Uses the * install registry's `claimFirstRun()` flag so repeated invocations are safe. * Returns true if the event fired. */ export declare function emitInstalledOnce(params: { mcpVersion: string; npmVersion?: string | null; agentHint?: string | null; }): boolean; /** * Best-effort detection of the host MCP client. Reads env vars that known * clients set, falling back to `null`. Purely a heuristic — the telemetry * spec only calls for a "detected agent" hint. */ export declare function detectAgentHint(): string | null; //# sourceMappingURL=index.d.ts.map