diff options
author | Erik Johnston <erik@matrix.org> | 2022-09-20 12:10:31 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-20 12:10:31 +0100 |
commit | 42d261c32f13e2de7494a0ade77c1f7b646af1fe (patch) | |
tree | af5526ed2e27eddc8b24ef22d035927fa5b32ca6 /stubs/synapse/synapse_rust/push.pyi | |
parent | Don't include redundant prev_state in new events (#13791) (diff) | |
download | synapse-42d261c32f13e2de7494a0ade77c1f7b646af1fe.tar.xz |
Port the push rule classes to Rust. (#13768)
Diffstat (limited to 'stubs/synapse/synapse_rust/push.pyi')
-rw-r--r-- | stubs/synapse/synapse_rust/push.pyi | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/stubs/synapse/synapse_rust/push.pyi b/stubs/synapse/synapse_rust/push.pyi new file mode 100644 index 0000000000..93c4e69d42 --- /dev/null +++ b/stubs/synapse/synapse_rust/push.pyi @@ -0,0 +1,37 @@ +from typing import Any, Collection, Dict, Mapping, Sequence, Tuple, Union + +from synapse.types import JsonDict + +class PushRule: + @property + def rule_id(self) -> str: ... + @property + def priority_class(self) -> int: ... + @property + def conditions(self) -> Sequence[Mapping[str, str]]: ... + @property + def actions(self) -> Sequence[Union[Mapping[str, Any], str]]: ... + @property + def default(self) -> bool: ... + @property + def default_enabled(self) -> bool: ... + @staticmethod + def from_db( + rule_id: str, priority_class: int, conditions: str, actions: str + ) -> "PushRule": ... + +class PushRules: + def __init__(self, rules: Collection[PushRule]): ... + def rules(self) -> Collection[PushRule]: ... + +class FilteredPushRules: + def __init__( + self, + push_rules: PushRules, + enabled_map: Dict[str, bool], + msc3786_enabled: bool, + msc3772_enabled: bool, + ): ... + def rules(self) -> Collection[Tuple[PushRule, bool]]: ... + +def get_base_rule_ids() -> Collection[str]: ... |