Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / web / core / lib / Drupal / Core / Layout / LayoutPluginManagerInterface.php
1 <?php
2
3 namespace Drupal\Core\Layout;
4
5 use Drupal\Component\Plugin\CategorizingPluginManagerInterface;
6 use Drupal\Core\Plugin\FilteredPluginManagerInterface;
7
8 /**
9  * Provides the interface for a plugin manager of layouts.
10  */
11 interface LayoutPluginManagerInterface extends CategorizingPluginManagerInterface, FilteredPluginManagerInterface {
12
13   /**
14    * Gets theme implementations for layouts.
15    *
16    * @return array
17    *   An associative array of the same format as returned by hook_theme().
18    *
19    * @see hook_theme()
20    */
21   public function getThemeImplementations();
22
23   /**
24    * {@inheritdoc}
25    *
26    * @return \Drupal\Core\Layout\LayoutInterface
27    */
28   public function createInstance($plugin_id, array $configuration = []);
29
30   /**
31    * {@inheritdoc}
32    *
33    * @return \Drupal\Core\Layout\LayoutDefinition|null
34    */
35   public function getDefinition($plugin_id, $exception_on_invalid = TRUE);
36
37   /**
38    * {@inheritdoc}
39    *
40    * @return \Drupal\Core\Layout\LayoutDefinition[]
41    */
42   public function getDefinitions();
43
44   /**
45    * {@inheritdoc}
46    *
47    * @return \Drupal\Core\Layout\LayoutDefinition[]
48    */
49   public function getSortedDefinitions(array $definitions = NULL);
50
51   /**
52    * {@inheritdoc}
53    *
54    * @return \Drupal\Core\Layout\LayoutDefinition[][]
55    */
56   public function getGroupedDefinitions(array $definitions = NULL);
57
58   /**
59    * Returns an array of layout labels grouped by category.
60    *
61    * @return string[][]
62    *   A nested array of labels suitable for #options.
63    */
64   public function getLayoutOptions();
65
66 }