GOOD SHELL MAS BOY
Server: Apache/2.4.52 (Ubuntu)
System: Linux vmi1836763.contaboserver.net 5.15.0-130-generic #140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024 x86_64
User: www-data (33)
PHP: 8.4.10
Disabled: NONE
Upload Files
File: /var/www/html/vendor/cloudinary/cloudinary_php/src/Configuration/ConfigurableInterface.php
<?php
/**
 * This file is part of the Cloudinary PHP package.
 *
 * (c) Cloudinary
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Cloudinary\Configuration;

use JsonSerializable;

/**
 * Interface ConfigurableInterface
 */
interface ConfigurableInterface extends JsonSerializable
{
    /**
     * Creates a new instance using json string or an array as a source.
     *
     * @param string|array $json Configuration json
     *
     * @return static
     */
    public static function fromJson($json);

    /**
     * Creates a new instance using Cloudinary url as a source.
     *
     * @param string $cloudinaryUrl The Cloudinary url.
     *
     * @return static
     */
    public static function fromCloudinaryUrl($cloudinaryUrl);

    /**
     * Imports configuration from a json string or an array as a source.
     *
     * @param string|array $json Configuration json
     *
     * @return static
     */
    public function importJson($json);

    /**
     * Imports configuration from a Cloudinary url as a source.
     *
     * @param string $cloudinaryUrl The Cloudinary url.
     *
     * @return static
     */
    public function importCloudinaryUrl($cloudinaryUrl);

    /**
     * Serialises to a string representation.
     *
     * @return string
     */
    public function toString();

    /**
     * Serialises to a string representation.
     *
     * @return string
     */
    public function __toString();

    /**
     * Serialises to a json array.
     *
     * @param bool $includeSensitive     Whether to include sensitive keys during serialisation.
     * @param bool $includeEmptyKeys     Whether to include keys without values.
     * @param bool $includeEmptySections Whether to include sections without keys with non-empty values.
     *
     * @return mixed data which can be serialized by json_encode.
     */
    #[\ReturnTypeWillChange]
    public function jsonSerialize($includeSensitive = true, $includeEmptyKeys = false, $includeEmptySections = false);
}