API
===

This document details the API of nio.

Api
---

.. autoclass:: nio.Api
    :members:
    :undoc-members:

nio Clients
-----------

.. automodule:: nio.client

.. autoclass:: nio.ClientConfig
    :members:

Client
^^^^^^
.. autoclass:: nio.Client
    :members:

AsyncClient
^^^^^^^^^^^

.. autoclass:: nio.AsyncClient
    :members:
    :undoc-members:
    :show-inheritance:

.. autoclass:: nio.TransferMonitor
    :members:
    :undoc-members:
    :show-inheritance:

HttpClient
^^^^^^^^^^

.. autoclass:: nio.HttpClient
    :members:
    :undoc-members:
    :show-inheritance:

Rooms
-----

.. automodule:: nio.rooms
    :members:
    :undoc-members:
    :show-inheritance:

Events
------

.. automodule:: nio.events
    :members:
    :undoc-members:
    :show-inheritance:

.. automodule:: nio.events.misc
    :members:
    :show-inheritance:

Room Events
^^^^^^^^^^^

.. automodule:: nio.events.room_events
    :members:
    :undoc-members:
    :show-inheritance:

Invite Room Events
^^^^^^^^^^^^^^^^^^

.. automodule:: nio.events.invite_events
    :members:
    :undoc-members:
    :show-inheritance:

To-device Events
^^^^^^^^^^^^^^^^

.. automodule:: nio.events.to_device
    :members:
    :undoc-members:
    :show-inheritance:

Ephemeral Events
^^^^^^^^^^^^^^^^

.. automodule:: nio.events.ephemeral
    :members:
    :undoc-members:
    :show-inheritance:

Account Data
^^^^^^^^^^^^

.. automodule:: nio.events.account_data
    :members:
    :undoc-members:
    :show-inheritance:


Building events
---------------
.. automodule:: nio.event_builders
    :members:
    :show-inheritance:

.. autoclass:: nio.event_builders.EventBuilder
    :members:
    :show-inheritance:

Direct messages
^^^^^^^^^^^^^^^

.. automodule:: nio.event_builders.direct_messages
    :members:
    :show-inheritance:

State events
^^^^^^^^^^^^

.. automodule:: nio.event_builders.state_events
    :members:
    :show-inheritance:


Exceptions
----------

.. automodule:: nio.exceptions
    :members:
    :undoc-members:
    :show-inheritance:

Responses
---------

.. automodule:: nio.responses
    :members:
    :undoc-members:


Storage
-------
.. automodule:: nio.store
    :members:
    :undoc-members:

.. autoclass:: nio.store.MatrixStore
    :members:

.. autoclass:: nio.store.DefaultStore
    :show-inheritance:

.. autoclass:: nio.store.SqliteStore
    :show-inheritance:

.. autoclass:: nio.store.SqliteMemoryStore
    :show-inheritance:

Encryption
----------
.. automodule:: nio.crypto

.. autoclass:: nio.crypto.DeviceStore
    :members:

.. autoclass:: nio.crypto.OlmDevice
    :members:

.. autoclass:: nio.crypto.TrustState
    :members:

.. autoclass:: nio.crypto.Sas
    :members:
