message_flow/sagas/orchestration_simple_dsl/simple_saga_dsl.py (9 lines of code) (raw):
from typing import Protocol, TypeVar
from .simple_saga_definition_builder import SimpleSagaDefinitionBuilder
from .step_builder import StepBuilder
__all__ = ["SimpleSagaDsl"]
Data = TypeVar("Data")
class SimpleSagaDsl(Protocol[Data]):
def step(self) -> StepBuilder[Data]:
builder = SimpleSagaDefinitionBuilder[Data]()
return StepBuilder(builder)