%PDF- %PDF-
Direktori : /proc/thread-self/root/www/varak.net/nextcloud.varak.net/apps/dav/lib/DAV/Sharing/ |
Current File : //proc/thread-self/root/www/varak.net/nextcloud.varak.net/apps/dav/lib/DAV/Sharing/IShareable.php |
<?php /** * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors * SPDX-FileCopyrightText: 2016 ownCloud, Inc. * SPDX-License-Identifier: AGPL-3.0-only */ namespace OCA\DAV\DAV\Sharing; use Sabre\DAV\INode; /** * This interface represents a dav resource that can be shared with other users. * */ interface IShareable extends INode { /** * Updates the list of shares. * * The first array is a list of people that are to be added to the * resource. * * Every element in the add array has the following properties: * * href - A url. Usually a mailto: address * * commonName - Usually a first and last name, or false * * readOnly - A boolean value * * Every element in the remove array is just the address string. * * @param list<array{href: string, commonName: string, readOnly: bool}> $add * @param list<string> $remove */ public function updateShares(array $add, array $remove): void; /** * Returns the list of people whom this resource is shared with. * * Every element in this array should have the following properties: * * href - Often a mailto: address * * commonName - Optional, for example a first + last name * * status - See the Sabre\CalDAV\SharingPlugin::STATUS_ constants. * * readOnly - boolean * * @return list<array{href: string, commonName: string, status: int, readOnly: bool, '{http://owncloud.org/ns}principal': string, '{http://owncloud.org/ns}group-share': bool}> */ public function getShares(): array; public function getResourceId(): int; /** * @return ?string */ public function getOwner(); }