19 lines
594 B
Python
19 lines
594 B
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
from typing import Any, Protocol, runtime_checkable
|
||
|
|
|
||
|
|
from yuxi.channels.models import ChannelMessage
|
||
|
|
|
||
|
|
|
||
|
|
@runtime_checkable
|
||
|
|
class ChannelThreadingProtocol(Protocol):
|
||
|
|
def resolve_reply_mode(self, config: dict[str, Any], chat_type: str) -> str: ...
|
||
|
|
|
||
|
|
def resolve_thread_id(self, message: ChannelMessage) -> str | None: ...
|
||
|
|
|
||
|
|
def build_tool_context(self, context: dict) -> dict: ...
|
||
|
|
|
||
|
|
def resolve_auto_thread_id(self, to: str, reply_to_id: str) -> str | None: ...
|
||
|
|
|
||
|
|
def resolve_reply_transport(self, thread_id: str, reply_to_id: str) -> dict: ...
|