. */ namespace SP\Domain\Core; use SP\Domain\Core\Exceptions\CheckException; /** * Class PhpExtensionCheckerInterface * * @method checkCurl(bool $exception = false): bool * @method checkLdap(bool $exception = false): bool * @method checkPhar(bool $exception = false): bool * @method checkGd(bool $exception = false): bool */ interface PhpExtensionCheckerInterface { /** * Checks if the extension is installed * * @param string $extension * @param bool $exception Throws an exception if the extension is not available * * @return bool * @throws CheckException */ public function checkIsAvailable(string $extension, bool $exception = false): bool; /** * @throws CheckException */ public function checkMandatory(): void; /** * Returns missing extensions */ public function getMissing(): array; }