58 lines
1.2 KiB
PHP
58 lines
1.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/**
|
|
* SPDX-FileCopyrightText: Sebastian Krupinski <krupinski01@gmail.com>
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
*/
|
|
|
|
namespace KTXF\Resource\Provider;
|
|
|
|
use KTXF\Json\JsonDeserializable;
|
|
|
|
/**
|
|
* Resource Service Configurable Interface
|
|
*
|
|
* Extends base service interface with setter methods for mutable properties.
|
|
* Used for service configuration and updates.
|
|
*
|
|
* @since 2025.05.01
|
|
*/
|
|
interface ResourceServiceMutateInterface extends ResourceServiceBaseInterface, JsonDeserializable {
|
|
|
|
/**
|
|
* Sets the localized human-friendly name of this service (e.g. ACME Company Mail Service)
|
|
*
|
|
* @since 2025.05.01
|
|
*
|
|
* @param string $value Service label
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setLabel(string $value): self;
|
|
|
|
/**
|
|
* Sets the active status of this service
|
|
*
|
|
* @since 2025.05.01
|
|
*
|
|
* @param bool $value True to enable, false to disable
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setEnabled(bool $value): self;
|
|
|
|
/**
|
|
* Sets the auxiliary information of this service
|
|
*
|
|
* @since 2025.05.01
|
|
*
|
|
* @param array $value Arbitrary key-value pairs for additional service info
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setAuxiliary(array $value): self;
|
|
|
|
}
|