text: Title: pure keyword_only_args without var_position_args is not handled correctly in libdoc
  Body: an interface like this:
  ```python
      @keyword(tags=("Getter", "BrowserControl", "Assertion"))
      def get_console_log(
          self,
          assertion_operator: Optional[AssertionOperator] = None,
          assertion_expected: Optional[Any] = None,
          message: Optional[str] = None,
          *,
          full: bool = False,
          last: Union[int, timedelta, None] = None,
      ) -> Dict:
      ...
  ```
  
  Is not recognised :
  ```json
  {
        "name": "Get Console Log",
        "args": [
          {
            "name": "assertion_operator",
            "types": [
              "AssertionOperator",
              "None"
            ],
            "typedocs": {
              "AssertionOperator": "AssertionOperator",
              "None": "None"
            },
            "defaultValue": "None",
            "kind": "POSITIONAL_OR_NAMED",
            "required": false,
            "repr": "assertion_operator: AssertionOperator | None = None"
          },
          {
            "name": "assertion_expected",
            "types": [
              "Any",
              "None"
            ],
            "typedocs": {
              "None": "None"
            },
            "defaultValue": "None",
            "kind": "POSITIONAL_OR_NAMED",
            "required": false,
            "repr": "assertion_expected: Any | None = None"
          },
          {
            "name": "message",
            "types": [
              "str",
              "None"
            ],
            "typedocs": {
              "str": "string",
              "None": "None"
            },
            "defaultValue": "None",
            "kind": "POSITIONAL_OR_NAMED",
            "required": false,
            "repr": "message: str | None = None"
          },
          {
            "name": "full",
            "types": [
              "bool"
            ],
            "typedocs": {
              "bool": "boolean"
            },
            "defaultValue": "False",
            "kind": "POSITIONAL_OR_NAMED",
            "required": false,
            "repr": "full: bool = False"
          },
          {
            "name": "last",
            "types": [
              "int",
              "timedelta",
              "None"
            ],
            "typedocs": {
              "int": "integer",
              "timedelta": "timedelta",
              "None": "None"
            },
            "defaultValue": "None",
            "kind": "POSITIONAL_OR_NAMED",
            "required": false,
            "repr": "last: int | timedelta | None = None"
          }
        ],
        "doc": "",
        "shortdoc": "",
        "tags": [
          "Assertion",
          "BrowserControl",
          "Getter"
        ],
        "source": "",
        "lineno": 981
      }
  ```
  
  I would consider that as a critical bug and should be fixed asap.
  Because it anyway will take long time until we (Browser) can require at least 6.1 as minimal Robot version.
  
  I am fixing it for now in Browser library with an argument `*_` but that is not good at all.