DesignConfigInterface.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Theme\Api\Data;
  7. use Magento\Framework\Api\ExtensibleDataInterface;
  8. /**
  9. * Interface DesignConfigInterface
  10. * @api
  11. * @since 100.1.0
  12. */
  13. interface DesignConfigInterface extends ExtensibleDataInterface
  14. {
  15. /**#@+
  16. * Constants for keys of data array. Identical to the name of the getter in snake case
  17. */
  18. const SCOPE = 'scope';
  19. const SCOPE_ID = 'scope_id';
  20. /**#@-*/
  21. /**
  22. * Return setting scope
  23. *
  24. * @return string
  25. * @since 100.1.0
  26. */
  27. public function getScope();
  28. /**
  29. * Return scope identifier
  30. *
  31. * @return string
  32. * @since 100.1.0
  33. */
  34. public function getScopeId();
  35. /**
  36. * @param string $scope
  37. * @return $this
  38. * @since 100.1.0
  39. */
  40. public function setScope($scope);
  41. /**
  42. * @param string $scopeId
  43. * @return $this
  44. * @since 100.1.0
  45. */
  46. public function setScopeId($scopeId);
  47. /**
  48. * Retrieve existing extension attributes object or create a new one.
  49. *
  50. * @return \Magento\Theme\Api\Data\DesignConfigExtensionInterface|null
  51. * @since 100.1.0
  52. */
  53. public function getExtensionAttributes();
  54. /**
  55. * Set an extension attributes object.
  56. *
  57. * @param \Magento\Theme\Api\Data\DesignConfigExtensionInterface $extensionAttributes
  58. * @return $this
  59. * @since 100.1.0
  60. */
  61. public function setExtensionAttributes(\Magento\Theme\Api\Data\DesignConfigExtensionInterface $extensionAttributes);
  62. }