interface CommandState {
    command: string;
    startTime: number;
    tokenCount?: number;
    promptTokens?: number;
    completionTokens?: number;
    provider?: string;
    model?: string;
    fileProvider?: string;
    fileModel?: string;
    thinkingProvider?: string;
    thinkingModel?: string;
    options?: Record<string, any>;
    error?: any;
}
export declare const TELEMETRY_DATA_DESCRIPTION = "\nVibe-Tools collects anonymous usage data to improve the tool.\n\nWe track:\n  - Command executed (e.g., repo, web), duration, success/failure, flags used.\n  - General error types (e.g., API key missing, network error).\n  - Features used (e.g., --save-to, --debug, --video).\n  - Installation choices (IDE, config location).\n\nWe DO NOT track:\n  - Queries, prompts, file contents, code, or any personal data.\n  - API keys or other secrets.\n\nThis helps us fix bugs and prioritize features. Telemetry can be disabled via the VIBE_TOOLS_NO_TELEMETRY=1 environment variable.\n";
export declare function setTelemetryStatus(enabled: boolean): void;
export declare function isTelemetryEnabled(): boolean | null;
export declare function startCommand(command: string, options?: Record<string, any>): void;
export declare function updateCommandState(update: Partial<Omit<CommandState, 'command' | 'startTime'>>): void;
export declare function recordError(error: any): void;
export declare function endCommand(debug?: boolean): Promise<void>;
export declare function trackEvent(eventName: string, properties: Record<string, any>, debug?: boolean): Promise<void>;
export {};
