UNPKG

@hivetechs/hive-ai

Version:

Real-time streaming AI consensus platform with HTTP+SSE MCP integration for Claude Code, VS Code, Cursor, and Windsurf - powered by OpenRouter's unified API

123 lines 3.7 kB
/** * Interactive License Configuration Tool * * Restores the license gate functionality that was accidentally removed during OpenRouter simplification. * Provides interactive prompts for license key input, validation, and tier detection. */ import { z } from 'zod'; import * as readline from 'readline'; import { FeatureTier } from '../../core/license-gate.js'; export declare const licenseConfigurationToolName = "license_configuration"; export declare const licenseConfigurationToolDescription = "Interactive license key configuration and validation"; export declare const LicenseConfigurationSchema: z.ZodObject<{ force_reconfigure: z.ZodDefault<z.ZodBoolean>; license_key: z.ZodOptional<z.ZodString>; use_modern_gate: z.ZodDefault<z.ZodBoolean>; skip_validation: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { force_reconfigure: boolean; use_modern_gate: boolean; skip_validation: boolean; license_key?: string | undefined; }, { license_key?: string | undefined; force_reconfigure?: boolean | undefined; use_modern_gate?: boolean | undefined; skip_validation?: boolean | undefined; }>; interface LicenseConfigResult { success: boolean; tier: FeatureTier; message: string; features: string[]; daily_limit?: number; user_id?: string; error?: string; } export declare class LicenseConfigurationWizard { private rl; private useModernGate; private externalReadline; constructor(useModernGate?: boolean, existingReadline?: readline.Interface); private initializeReadline; private prompt; /** * Main interactive license configuration flow */ configureInteractively(forceReconfigure?: boolean): Promise<LicenseConfigResult>; /** * Non-interactive license validation */ validateLicenseKey(licenseKey: string, skipValidation?: boolean): Promise<LicenseConfigResult>; /** * Check if license key already exists */ private checkExistingLicense; /** * Check for modern encrypted license file */ private checkModernLicenseFile; /** * Check for legacy license files */ private checkLegacyLicenseFiles; /** * Validate existing license without prompting */ private validateExistingLicense; /** * Show license information and pricing */ private showLicenseInformation; /** * Interactive prompt for license key input with full validation */ private promptForLicenseKey; /** * Validate license with D1 backend and store locally */ private validateAndStoreLicense; /** * Store license key securely */ private storeLicenseKey; /** * Get appropriate license gate instance */ private getLicenseGate; close(): void; } export declare function runLicenseConfigurationTool(args: z.infer<typeof LicenseConfigurationSchema>): Promise<{ success: boolean; tier: FeatureTier; message: string; features: string[]; daily_limit: number | undefined; user_id: string | undefined; error: string | undefined; } | { success: boolean; tier: FeatureTier; message: string; features: never[]; error: string; daily_limit?: undefined; user_id?: undefined; }>; /** * Quick license status check */ export declare function checkLicenseStatus(): Promise<{ hasLicense: boolean; isValid: boolean; tier: FeatureTier; message: string; email?: string; version?: string; }>; /** * CLI helper for license configuration */ export declare function configureLicenseFromCLI(): Promise<void>; export {}; //# sourceMappingURL=license-configuration.d.ts.map