public function append(string $paramName, $error, array $details = []): ParamError
    {
        $error = ParamError::fromData($error, $details);
        if (!isset($this->errors[$paramName])) {
            $this->errors[$paramName] = [$error->id() => $error];
        } else {
            $this->errors[$paramName][$error->id()] = $error;
        }

        return $error;
    }