1
0

IDelegatedSettings.php 899 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. /**
  3. * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
  4. * SPDX-License-Identifier: AGPL-3.0-or-later
  5. */
  6. namespace OCP\Settings;
  7. /**
  8. * Special cases of settings that can be allowed to use by member of special
  9. * groups.
  10. * @since 23.0.0
  11. */
  12. interface IDelegatedSettings extends ISettings {
  13. /**
  14. * Get the name of the settings to differentiate settings inside a section or
  15. * null if only the section name should be displayed.
  16. * @since 23.0.0
  17. */
  18. public function getName(): ?string;
  19. /**
  20. * Get a list of authorized app config that this setting is allowed to modify.
  21. * The format of the array is the following:
  22. * ```php
  23. * <?php
  24. * [
  25. * 'app_name' => [
  26. * '/simple_key/', # value
  27. * '/s[a-z]*ldap/', # regex
  28. * ],
  29. * 'another_app_name => [ ... ],
  30. * ]
  31. * ```
  32. * @since 23.0.0
  33. */
  34. public function getAuthorizedAppConfig(): array;
  35. }