@abc.abstractmethod<EOL><INDENT>def create_request_elements(self, request_type, credentials,<EOL>url, method='<STR_LIT:GET>', params=None, headers=None,<EOL>body='<STR_LIT>'):<DEDENT>
Must return :class:`.RequestElements`.

.. warning::

    |classmethod|

:param int request_type:
    Type of the request specified by one of the class's constants.

:param credentials:
    :class:`.Credentials` of the **user** whose
    **protected resource** we want to access.

:param str url:
    URL of the request.

:param str method:
    HTTP method of the request.

:param dict params:
    Dictionary of request parameters.

:param dict headers:
    Dictionary of request headers.

:param str body:
    Body of ``POST``, ``PUT`` and ``PATCH`` requests.

:returns:
    :class:`.RequestElements`