PackageLifeCycleInterface.php

<?php

namespace LiaisonInterface;

/**
 * Responds to Package's LifeCycle 
 */
interface PackageLifeCycle  {
    // public function onAllPackagesReady();
    // public function onCreate();
    // public function onReady();

    
    /**
     * After all components are loaded into the package, but BEFORE everything else is finished (views, routes, and other items may not be available, but apis will be)
     * @tag lifecycle, featured
     */
    public function onComponentsLoaded();
    /**
     * For a parent class to do setup immediately before onPackageReady()
     * subclasses should override onPackageReady()
     *
     */
    public function onPrePackageReady();
    /**
     * After the package is completely ready. All routes, views, componenets, configs, etc have been loaded.
     * @tag lifecycle, featured
     */
    public function onPackageReady();

}