export type LicenseCheckState = 'unavailable' | 'invalid' | 'valid' | 'expired' ; export enum LICENSE_TYPE { basic = 10 , standard = 20 , gold = 30 , platinum = 40 , enterprise = 50 , trial = 60 } public export type LicenseType = keyof typeof LICENSE_TYPE ; public export type LicenseStatus = 'active' | 'invalid' | 'expired' ; public export interface LicenseFeature { isAvailable : boolean ; isEnabled : boolean ; } public export interface PublicLicense { /**
     * UID for license.
     */ uid : string ; /**
     * The validity status of the license.
     */ status : LicenseStatus ; /**
     * Unix epoch of the expiration date of the license.
     */ expiryDateInMillis : number ; /**
     * The license type, being usually one of basic, standard, gold, platinum, or trial.
     */ type : LicenseType ; deprecated mode : LicenseType ; } public export type PublicFeatures = Record < string , LicenseFeature > ; public export interface PublicLicenseJSON { license ? : PublicLicense ; features ? : PublicFeatures ; signature : string ; } public export interface LicenseCheck { /**
     * The state of checking the results of a license type meeting the license minimum.
     */ state : LicenseCheckState ; /**
     * A message containing the reason for a license type not being valid.
     */ message ? : string ; } public export interface ILicense { /**
     * UID for license.
     */ uid ? : string ; /**
     * The validity status of the license.
     */ status ? : LicenseStatus ; /**
     * Determine if the status of the license is active.
     */ isActive : boolean ; /**
     * Unix epoch of the expiration date of the license.
     */ expiryDateInMillis ? : number ; /**
     * The license type, being usually one of basic, standard, gold, platinum, or trial.
     */ type ? : LicenseType ; deprecated mode ? : LicenseType ; /**
     * Signature of the license content.
     */ signature : string ; /**
     * Determine if the license container has information.
     */ isAvailable : boolean ; /**
     * Returns
     */ toJSON : ( ) => PublicLicenseJSON ; /**
     * A potential error denoting the failure of the license from being retrieved.
     */ error ? : string ; /**
     * If the license is not available, provides a string or Error containing the reason.
     */ getUnavailableReason : ( ) => string | undefined ; param minimumLicenseRequired hasAtLeast ( minimumLicenseRequired ) : boolean ; param pluginName param minimumLicenseRequired check ( pluginName , minimumLicenseRequired ) : LicenseCheck ; param name getFeature ( name ) : LicenseFeature ; }