import { invoke } from "@tauri-apps/api/core"; export type Edition = "free" | "base" | "premium"; export interface LicenseInfo { edition: Edition; email: string; features: string[]; machine_limit: number; issued_at: number; expires_at: number; } export async function validateLicenseKey(key: string): Promise { return invoke("validate_license_key", { key }); } export async function storeLicense(key: string): Promise { return invoke("store_license", { key }); } export async function readLicense(): Promise { return invoke("read_license"); } export async function getEdition(): Promise { return invoke("get_edition"); } export async function getMachineId(): Promise { return invoke("get_machine_id"); } export async function checkEntitlement(feature: string): Promise { return invoke("check_entitlement", { feature }); }