"""Lead-session boundary exposed by a host adapter."""
from __future__ import annotations

from typing import Protocol

from ..domain.host import (
    HostSessionContext,
    LeadResumeRequest,
    LeadSessionPlan,
    LeadStartRequest,
)


class LeadSessionPort(Protocol):
    def build_start(
        self,
        request: LeadStartRequest,
        context: HostSessionContext,
    ) -> LeadSessionPlan: ...

    def build_resume(
        self,
        request: LeadResumeRequest,
        context: HostSessionContext,
    ) -> LeadSessionPlan: ...
