Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/medad.corals.io/vendor/kreait/firebase-php/src/Firebase/Database/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/medad.corals.io/vendor/kreait/firebase-php/src/Firebase/Database/RuleSet.php
<?php

declare(strict_types=1);

namespace Kreait\Firebase\Database;

use JsonSerializable;

use function array_key_exists;

class RuleSet implements JsonSerializable
{
    /** @var array<string, array<mixed>> */
    private array $rules;

    /**
     * @param array<string, array<mixed>> $rules
     */
    private function __construct(array $rules)
    {
        if (!array_key_exists('rules', $rules)) {
            $rules = ['rules' => $rules];
        }

        $this->rules = $rules;
    }

    /**
     * The default rules require Authentication. They allow full read and write access
     * to authenticated users of your app. They are useful if you want data open to
     * all users of your app but don't want it open to the world.
     *
     * @see https://firebase.google.com/docs/database/security/quickstart#sample-rules
     */
    public static function default(): self
    {
        return new self([
            'rules' => [
                '.read' => 'auth != null',
                '.write' => 'auth != null',
            ],
        ]);
    }

    /**
     * During development, you can use the public rules in place of the default rules to set
     * your files publicly readable and writable. This can be useful for prototyping,
     * as you can get started without setting up Authentication.
     *
     * This level of access means anyone can read or write to your database. You should
     * configure more secure rules before launching your app.
     *
     * @see https://firebase.google.com/docs/database/security/quickstart#sample-rules
     */
    public static function public(): self
    {
        return new self([
            'rules' => [
                '.read' => true,
                '.write' => true,
            ],
        ]);
    }

    /**
     * Private rules disable read and write access to your database by users. With these rules,
     * you can only access the database through the Firebase console and an Admin SDK.
     *
     * @see https://firebase.google.com/docs/database/security/quickstart#sample-rules
     */
    public static function private(): self
    {
        return new self([
            'rules' => [
                '.read' => false,
                '.write' => false,
            ],
        ]);
    }

    /**
     * @param array<string, array<mixed>> $rules
     */
    public static function fromArray(array $rules): self
    {
        return new self($rules);
    }

    /**
     * @return array<string, array<mixed>>
     */
    public function getRules(): array
    {
        return $this->rules;
    }

    /**
     * @return array<string, array<mixed>>
     */
    public function jsonSerialize(): array
    {
        return $this->rules;
    }
}

Spamworldpro Mini