from typing import Any, Optional, Type

from .ast import RqlQuery, Table
from .trio_net.net_trio import TrioConnectionPool

class RethinkDB:
    ConnectionPool: Type[TrioConnectionPool]
    row: Any
    def __init__(self) -> None: ...
    def iso8601(self, string: str, default_timezone: str = '') -> RqlQuery: ...
    def now(self) -> RqlQuery: ...
    def set_loop_type(self, library: Optional[str]) -> None: ...
    def table(self, name: str) -> Table: ...

r: RethinkDB
