declare function isDisabled(telemetryDisabled: boolean): boolean; /** Stable, non-PII fallback id (only used if the config write fails). */ declare function anonMachineId(): string; /** * Read (or lazily create + persist) the anonymous install id: a random UUID * stored in the CLI config. Not derived from any machine identifier. Falls * back to a stable hashed id only if the config can't be written. */ declare function getOrCreateInstallId(currentInstallId?: string): string; /** * Initialize telemetry. Call once at process start (init hook). Safe to call * when disabled — it just no-ops everything downstream. */ export declare function initTelemetry(): void; /** * The one-time transparency notice text (issue #96). Printed to stderr by the * init hook so it never pollutes stdout / piped output. */ export declare const FIRST_RUN_NOTICE: string; /** * True once per install: telemetry is enabled and the notice hasn't been shown * yet. The init hook prints the notice and then calls markFirstRunNoticeShown(). */ export declare function shouldShowFirstRunNotice(): boolean; /** Persist that the transparency notice has been shown. Best-effort. */ export declare function markFirstRunNoticeShown(): void; /** Emit a PostHog event. No-op when disabled. */ export declare function track(event: string, properties?: Record): void; /** Report an exception to Sentry. No-op when disabled. */ export declare function captureException(err: unknown, context?: Record): void; /** Milliseconds since the process (CLI invocation) started. */ export declare function elapsedMs(): number; /** Flush + close both clients. Call before the process exits. */ export declare function shutdownTelemetry(): Promise; export declare const __testing: { isDisabled: typeof isDisabled; anonMachineId: typeof anonMachineId; getOrCreateInstallId: typeof getOrCreateInstallId; }; export {};