public function asObject(array $filters = [], $default = null) : \stdClass
    {
        $object = Validate::asObject($this->params[$this->key] ?? $this->params, (object) []);

        foreach ($filters as $key => $dataType) {
            $dataType = 'as' . ucfirst($dataType);
            $object->{$key} = Validate::$dataType($object->{$key} ?? null, $default);
        }

        return $object;
    }