Added missing modules, including some as submodules.
[yaffs-website] / web / modules / contrib / embed / src / EmbedButtonInterface.php
1 <?php
2
3 namespace Drupal\embed;
4
5 use Drupal\Core\Config\Entity\ConfigEntityInterface;
6
7 /**
8  * Provides an interface defining a embed button entity.
9  */
10 interface EmbedButtonInterface extends ConfigEntityInterface {
11
12   /**
13    * Returns the associated embed type.
14    *
15    * @return string
16    *   Machine name of the embed type.
17    */
18   public function getTypeId();
19
20   /**
21    * Returns the label of the associated embed type.
22    *
23    * @return string
24    *   Human readable label of the embed type.
25    */
26   public function getTypeLabel();
27
28   /**
29    * Returns the plugin of the associated embed type.
30    *
31    * @return \Drupal\embed\EmbedType\EmbedTypeInterface
32    *   The plugin of the embed type.
33    */
34   public function getTypePlugin();
35
36   /**
37    * Gets the value of an embed type setting.
38    *
39    * @param string $key
40    *   The setting name.
41    * @param mixed $default
42    *   The default value.
43    *
44    * @return mixed
45    *   The value.
46    */
47   public function getTypeSetting($key, $default = NULL);
48
49   /**
50    * Gets all embed type settings.
51    *
52    * @return array
53    *   An array of key-value pairs.
54    */
55   public function getTypeSettings();
56
57   /**
58    * Returns the button's icon file.
59    *
60    * @return \Drupal\file\FileInterface
61    *   The file entity of the button icon.
62    */
63   public function getIconFile();
64
65   /**
66    * Returns the URL of the button's icon.
67    *
68    * If no icon file is associated with this Embed Button entity, the embed type
69    * plugin's default icon is used.
70    *
71    * @return string
72    *   The URL of the button icon.
73    */
74   public function getIconUrl();
75
76 }