Rhinox13/chatapi
0
1from __future__ import annotations
2
3from dataclasses import dataclass
4
5from .auth import AuthContext
6from .config import Settings
7from ..repositories import ConversationStore, SystemConfigStore, UserStore
8from ..services import MessageRateLimiter, PendingTurnRegistry
9from ..services.image_assets import ImageAssetStore
10
11
12@dataclass(frozen=True)
13class AppDependencies:
14 settings: Settings
15 auth: AuthContext
16 store: ConversationStore
17 system_config_store: SystemConfigStore
18 user_store: UserStore
19 pending_turns: PendingTurnRegistry
20 message_rate_limiter: MessageRateLimiter
21 image_store: ImageAssetStore
22 