diff options
author | Patrick Cloke <clokep@users.noreply.github.com> | 2021-09-21 13:34:26 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-21 13:34:26 -0400 |
commit | 4054dfa409fa17b45ab8f265813994956ed97bae (patch) | |
tree | 8a2c2a5700dcd62f1b8ad8593d0b25c9c7b32e55 /synapse/streams/__init__.py | |
parent | Add types to http.site (#10867) (diff) | |
download | synapse-4054dfa409fa17b45ab8f265813994956ed97bae.tar.xz |
Add type hints for event streams. (#10856)
Diffstat (limited to 'synapse/streams/__init__.py')
-rw-r--r-- | synapse/streams/__init__.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/synapse/streams/__init__.py b/synapse/streams/__init__.py index 5e83dba2ed..806b671305 100644 --- a/synapse/streams/__init__.py +++ b/synapse/streams/__init__.py @@ -11,3 +11,25 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. + +from typing import Collection, Generic, List, Optional, Tuple, TypeVar + +from synapse.types import UserID + +# The key, this is either a stream token or int. +K = TypeVar("K") +# The return type. +R = TypeVar("R") + + +class EventSource(Generic[K, R]): + async def get_new_events( + self, + user: UserID, + from_key: K, + limit: Optional[int], + room_ids: Collection[str], + is_guest: bool, + explicit_room_id: Optional[str] = None, + ) -> Tuple[List[R], K]: + ... |