stubs/sqlalchemy/ext/horizontal_shard.pyi (26 lines of code) (raw):

from typing import Any, Optional from ..orm.query import Query from ..orm.session import Session class ShardedQuery(Query): id_chooser: Any = ... query_chooser: Any = ... def __init__(self, *args, **kwargs) -> None: ... def set_shard(self, shard_id): ... def get(self, ident, **kwargs): ... class ShardedSession(Session): shard_chooser: Any = ... id_chooser: Any = ... query_chooser: Any = ... connection_callable: Any = ... def __init__( self, shard_chooser, id_chooser, query_chooser, shards: Optional[Any] = ..., query_cls: Any = ..., **kwargs ) -> None: ... def connection(self, *args, **kwargs): ... def get_bind(self, *args, **kw): ... def bind_shard(self, shard_id, bind): ...