<?php

abstract class Class_instant_popup_builder_license
{

    /**
     * license array
     *
     */
    protected static $licenses = [];

    /**
     * Summary of registerLicense
     * @param mixed $license
     * @return void
     */
    public static function registerLicense($license)
    {

        self::$licenses[] = $license;
    }

    /**
     * Get all licenses
     */
    public static function getLicense()
    {

        return self::$licenses;
    }

    /**
     * Get the product unique ID for this license (for update checks, API calls).
     * Subclasses may define $unique_id as public or protected.
     *
     * @return string
     */
    public function get_unique_id() {
        return isset( $this->unique_id ) ? (string) $this->unique_id : '';
    }

    /**
     * Abscract method to render html of all the license popups
     */
    abstract function render_license_html();
}
