export declare enum LicenseLevel { FREE = "free", BASIC = "basic", PREMIUM = "premium" } export interface LicenseFeatures { allowedCategories: string[]; maxRequests: number; n8nIntegration: boolean; smartleadApiAccess: boolean; } export interface LicenseValidationResult { valid: boolean; level: LicenseLevel; features: LicenseFeatures; message: string; usageCount: number; } export interface FeatureRequestToken { token: string; expires: number; } /** * Validate a license key * @param licenseKey Optional: license key to validate (primarily uses env var) * @returns License validation result */ export declare function validateLicense(): Promise; /** * Get a token for server-side feature validation * This adds security since critical operations will need server validation */ export declare function getFeatureToken(): Promise; /** * Track usage for a license * @param licenseKey The license key * @param toolName The tool being used */ export declare function trackUsage(licenseKey?: string, toolName?: string): Promise; /** * Check if a feature is available in the current license * @param feature The feature to check * @returns Whether the feature is available */ export declare function isFeatureEnabled(feature: keyof LicenseFeatures): Promise; /** * Check if a category is available in the current license * @param category The category to check * @returns Whether the category is available */ export declare function isCategoryEnabled(category: string): Promise; /** * Get the current license information * @returns Current license information */ export declare function getLicenseInfo(): Promise; /** * Print a summary of the current license status to the console * This is useful for displaying on server startup */ export declare function printLicenseStatus(): Promise;