export interface PackageMetadata { name: string; version?: string; publishDate: number; productName: string; licensingDocsUrl: string; productCode?: string; redistributedBy?: string[]; productCodes?: string[]; } export interface CallToAction { link: string; message: string; } export interface LicenseInfo { severity: 'INFO'; message: string; notificationMessage?: string; notificationTitle?: string; notificationBody?: string; notificationIcon?: { name: string; content: string; }; callToAction?: CallToAction; productName: string; } export interface LicenseError { severity: 'WARN' | 'ERROR'; code: string; message: string; notificationMessage?: string; notificationTitle?: string; notificationBody?: string; notificationIcon?: { name: string; content: string; }; callToAction?: CallToAction; productName: string; } export type LicenseMessage = LicenseInfo | LicenseError; export interface LicenseStatus { isLicenseValid: boolean; licenseType?: string; licenseProductCode?: string; expiration?: Date; message?: LicenseMessage; } export declare function setScriptKey(key: string): void; export declare function validatePackage(meta: PackageMetadata): boolean; export declare function getLicenseStatus(meta: PackageMetadata): LicenseStatus; export declare function registerLicenseMessage( message: LicenseMessage, productCode: string, addMessageCallback: ({ message, productCode }: { message: LicenseMessage; productCode: string; }) => void, showMessageCallback: () => void ): () => void;