import { LicenseService, LicenseResponse } from './licenseService';
import { ProductVariant } from '../config/products';
interface ValidationResult {
    validation: LicenseResponse;
    variant: ProductVariant;
}
interface ActivationResult {
    validation: LicenseResponse;
    activation: LicenseResponse;
    variant: ProductVariant;
}
export declare class LicenseValidator {
    private licenseService;
    constructor(licenseService: LicenseService);
    private validateLicenseFormat;
    validateLicenseForCommand(licenseKey: string, command: string): Promise<ValidationResult>;
    activateAndValidate(licenseKey: string, command: string): Promise<ActivationResult>;
    isLicenseValidForCommand(licenseKey: string, command: string): Promise<boolean>;
    getActiveLicenseInfo(licenseKey: string, command: string): Promise<{
        variant: ProductVariant;
        activationId?: string;
        expiresAt?: string;
        usageCount: number;
        activationLimit: number | null;
    } | null>;
}
export {};
