ICalendarProvider.php 636 B

12345678910111213141516171819202122232425
  1. <?php
  2. declare(strict_types=1);
  3. /**
  4. * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors
  5. * SPDX-License-Identifier: AGPL-3.0-or-later
  6. */
  7. namespace OCP\Calendar;
  8. /**
  9. * This interface defines a lazy loading mechanism for
  10. * calendars for Public Consumption
  11. *
  12. * @since 23.0.0
  13. */
  14. interface ICalendarProvider {
  15. /**
  16. * @param string $principalUri URI of the principal
  17. * @param string[] $calendarUris optionally specify which calendars to load, or all if this array is empty
  18. * @return ICalendar[]
  19. * @since 23.0.0
  20. */
  21. public function getCalendars(string $principalUri, array $calendarUris = []): array;
  22. }