<?php
namespace Claromentis\Core\Config\Events;

$GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"] = (@$GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"] ?: array()) + array("_d706c160e45" . "bf7434fff82a" . "5976f0e19" => base64_decode("YXJyYXlfa2" . "V5cw=="));
use Claromentis\Core\Config\Config;
use Claromentis\Core\Config\LayeredConfig;
use Claromentis\Core\Config\WritableConfig;
use Claromentis\Core\Event\Event;




class ConfigUpdateEvent extends Event
{
    
    
    
    
    
    
    protected Config $config;
    
    
    
    
    
    
    protected array $previousValues;
    
    
    
    
    
    
    protected array $currentValues;
    
    
    
    
    
    
    public function __construct(Config $config, array $_8c3ab09b3b48146f1b2f7a9475b96f86 = [], array $_e4755d2d4c4cef067aac894900cee333 = [])
    {
        $this->setConfig($config);
        $this->setCurrentValues($_e4755d2d4c4cef067aac894900cee333);
        $this->setPreviousValues($_8c3ab09b3b48146f1b2f7a9475b96f86);
    }
    
    
    
    
    
    
    
    
    public function getConfig() : Config
    {
        return $this->config;
    }
    
    
    
    
    
    
    public function getKeys() : array
    {
        return $GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["_d706c160e45bf7434fff8" . "2a5976f0e19"]($this->currentValues);
    }
    
    
    
    
    
    
    public function getCurrentValues() : array
    {
        return $this->currentValues;
    }
    
    
    
    
    
    
    public function getPreviousValues() : array
    {
        return $this->previousValues;
    }
    
    
    
    
    
    
    private function setConfig(Config $config) : void
    {
        $this->config = $config;
    }
    
    
    
    
    
    
    private function setPreviousValues(array $values) : void
    {
        $this->previousValues = $values;
    }
    
    
    
    
    
    
    private function setCurrentValues(array $values) : void
    {
        $this->currentValues = $values;
    }
}