lib/Phpfastcache/Config/ConfigurationOptionInterface.php
<?php /** * * This file is part of Phpfastcache. * * @license MIT License (MIT) * * For full copyright and license information, please see the docs/CREDITS.txt and LICENCE files. * * @author Georges.L (Geolim4) <contact@geolim4.com> * @author Contributors https://github.com/PHPSocialNetwork/phpfastcache/graphs/contributors */ declare(strict_types=1); namespace Phpfastcache\Config; use Phpfastcache\Exceptions\PhpfastcacheInvalidArgumentException;use Phpfastcache\Exceptions\PhpfastcacheInvalidConfigurationException;use Phpfastcache\Exceptions\PhpfastcacheLogicException; interface ConfigurationOptionInterface extends LockableConfigurationInterface{ /** * @param array<string, mixed> $parameters * ConfigurationOptionInterface constructor. */ public function __construct(array $parameters = []); /** * @return array<string, mixed> */ public function toArray(): array; /** * @param mixed $val * @return bool */ public function isValueSerializable(mixed $val): bool; /** * @param string $optionName * @return bool */ public function isValidOption(string $optionName): bool; /** * @return bool */ public function isItemDetailedDate(): bool; /** * @param bool $itemDetailedDate * @return ConfigurationOption */ public function setItemDetailedDate(bool $itemDetailedDate): static; /** * @return bool */ public function isAutoTmpFallback(): bool; /** * @param bool $autoTmpFallback * @return ConfigurationOption */ public function setAutoTmpFallback(bool $autoTmpFallback): static; /** * @return int */ public function getDefaultTtl(): int; /** * @param int $defaultTtl * @return ConfigurationOption */ public function setDefaultTtl(int $defaultTtl): static; /** * @return callable|string */ public function getDefaultKeyHashFunction(): callable|string; /** * @param callable|string $defaultKeyHashFunction * @return ConfigurationOption * @throws PhpfastcacheInvalidConfigurationException */ public function setDefaultKeyHashFunction(callable|string $defaultKeyHashFunction): static; /** * @return callable|string */ public function getDefaultFileNameHashFunction(): callable|string; /** * @param callable|string $defaultFileNameHashFunction * @return ConfigurationOption * @throws PhpfastcacheInvalidConfigurationException */ public function setDefaultFileNameHashFunction(callable|string $defaultFileNameHashFunction): static; /** * @return string */ public function getPath(): string; /** * @param string $path * @return ConfigurationOption */ public function setPath(string $path): static; /** * @return bool */ public function isUseStaticItemCaching(): bool; /** * @param bool $useStaticItemCaching * @return ConfigurationOption */ public function setUseStaticItemCaching(bool $useStaticItemCaching): static; /** * @return object * @throws PhpfastcacheInvalidArgumentException * @throws PhpfastcacheLogicException */ public function getSuperGlobalAccessor(): object; /** * @param ?object $superGlobalAccessor * @return static * @throws PhpfastcacheInvalidArgumentException * @throws PhpfastcacheLogicException */ public function setSuperGlobalAccessor(?object $superGlobalAccessor): static;}