1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- /**
- * SPDX-FileCopyrightText: 2019 ownCloud GmbH
- * SPDX-License-Identifier: AGPL-3.0-only
- */
- namespace OCP\Share;
- /**
- * Interface IAttributes
- *
- * @package OCP\Share
- * @since 25.0.0
- */
- interface IAttributes {
- /**
- * Sets an attribute. If the key did not exist before it will be created.
- *
- * @param string $scope scope
- * @param string $key key
- * @param bool|string|array|null $value value
- * @return IAttributes The modified object
- * @since 25.0.0
- */
- public function setAttribute(string $scope, string $key, mixed $value): IAttributes;
- /**
- * Returns the attribute for given scope id and key.
- * If attribute does not exist, returns null
- *
- * @param string $scope scope
- * @param string $key key
- * @return bool|string|array|null
- * @since 25.0.0
- */
- public function getAttribute(string $scope, string $key): mixed;
- /**
- * Formats the IAttributes object to array with the following format:
- * [
- * 0 => [
- * "scope" => <string>,
- * "key" => <string>,
- * "value" => <bool|string|array|null>,
- * ],
- * ...
- * ]
- *
- * @return array formatted IAttributes
- * @since 25.0.0
- * @since 30.0.0, `enabled` was renamed to `value`
- */
- public function toArray(): array;
- }
|