reset()->getList() instead. * * @see https://www.drupal.org/node/3413196 * @see \Drupal\Core\Extension\ThemeExtensionList::reset() * @see \Drupal\Core\Extension\ThemeExtensionList::getList() */ public function rebuildThemeData(); /** * Finds all the base themes for the specified theme. * * Themes can inherit templates and function implementations from earlier * themes. * * @param \Drupal\Core\Extension\Extension[] $themes * An array of available themes. * @param string $theme * The name of the theme whose base we are looking for. * * @return array * Returns an array of all of the theme's ancestors; the first element's * value will be NULL if an error occurred. * * @deprecated in drupal:10.3.0 and is removed from drupal:12.0.0. There * is no direct replacement. * * @see https://www.drupal.org/node/3413187 */ public function getBaseThemes(array $themes, $theme); /** * Gets the human readable name of a given theme. * * @param string $theme * The machine name of the theme which title should be shown. * * @return string * Returns the human readable name of the theme. * * @throws \Drupal\Core\Extension\Exception\UnknownExtensionException * When the specified theme does not exist. */ public function getName($theme); /** * Returns the default theme. * * @return string * The default theme. */ public function getDefault(); /** * Returns an array of directories for all installed themes. * * Useful for tasks such as finding a file that exists in all theme * directories. * * @return array */ public function getThemeDirectories(); /** * Determines whether a given theme is installed. * * @param string $theme * The name of the theme (without the .theme extension). * * @return bool * TRUE if the theme is installed. */ public function themeExists($theme); /** * Returns a theme extension object from the currently active theme list. * * @param string $name * The name of the theme to return. * * @return \Drupal\Core\Extension\Extension * An extension object. * * @throws \Drupal\Core\Extension\Exception\UnknownExtensionException * Thrown when the requested theme does not exist. */ public function getTheme($name); /** * Determines if a theme should be shown in the user interface. * * To be shown in the UI the theme has to be installed. If the theme is hidden * it will not be shown unless it is the default or admin theme. * * @param string $name * The name of the theme to check. * * @return bool * TRUE if the theme should be shown in the UI, FALSE if not. */ public function hasUi($name); }