.. This page is generated by scripts/generate_dataclass_docs.py. Do not edit manually. Models / Rulesets ================= .. automodule:: teksi_hooks.models.rulesets CrudRules --------- .. autoclass:: teksi_hooks.models.rulesets.CrudRules :members: Fields ~~~~~~ ``create_rules`` Type: ``list`` Rules governing creation of new objects. ``read_rules`` Type: ``list`` Rules governing read access. Currently not required by the import validation workflow, but included for future use. ``update_rules`` Type: ``list`` Rules governing updates to existing objects. ``delete_rules`` Type: ``list`` Rules governing deletion of existing objects. InheritRule ----------- .. autoclass:: teksi_hooks.models.rulesets.InheritRule :members: Base class: ``Rule`` Fields ~~~~~~ ``source`` Type: ``str`` Name of the rule set to inherit from, for example `create_rules`, `update_rules` or `delete_rules`. OwnershipRule ------------- .. autoclass:: teksi_hooks.models.rulesets.OwnershipRule :members: Base class: ``Rule`` Fields ~~~~~~ ``attribute`` Type: ``str`` Attribute used to determine ownership. Typical example: `fk_provider`. PrivilegeRule ------------- .. autoclass:: teksi_hooks.models.rulesets.PrivilegeRule :members: Base class: ``Rule`` Fields ~~~~~~ ``privileges`` Type: ``frozenset`` Privileges that grant the operation if this rule applies. The provider must have at least one of these privileges in the relevant data-owner context. ``when`` Type: ``teksi_hooks.models.conditions.Condition | None`` Optional condition restricting when this privilege rule applies. If omitted, the rule applies unconditionally. ResolvedCrudRules ----------------- .. autoclass:: teksi_hooks.models.rulesets.ResolvedCrudRules :members: Fields ~~~~~~ ``create_rules`` Type: ``tuple`` Resolved rules governing creation of new objects. ``read_rules`` Type: ``tuple`` Resolved rules governing read access. ``update_rules`` Type: ``tuple`` Resolved rules governing updates to existing objects. ``delete_rules`` Type: ``tuple`` Resolved rules governing deletion of existing objects. StateTransitionRule ------------------- .. autoclass:: teksi_hooks.models.rulesets.StateTransitionRule :members: Base class: ``Rule`` Fields ~~~~~~ ``privileges`` Type: ``frozenset`` Privileges that grant this specific transition. ``from_value`` Type: ``str | None`` Allowed source value of the transition. If omitted, the transition may be interpreted as matching any source value, depending on the resolver semantics. ``to_value`` Type: ``str | None`` Allowed target value of the transition. If omitted, the transition may be interpreted as matching any target value, depending on the resolver semantics. ``bilateral`` Type: ``bool`` Whether the transition is allowed in both directions. If true, `from_value -> to_value` also allows `to_value -> from_value`.