| """Runtime capabilities consumed by the HTTP API adapter.""" |
|
|
| from collections.abc import Mapping |
| from dataclasses import dataclass |
| from typing import Any, Protocol |
|
|
| from free_claude_code.application.connected_accounts import ( |
| ConnectedAccountLoginMode, |
| ConnectedAccountStatus, |
| ) |
| from free_claude_code.application.model_metadata import ProviderModelRefreshResult |
| from free_claude_code.application.ports import RequestRuntimePort, TaskController |
|
|
|
|
| class AdminRuntimePort(Protocol): |
| """Runtime operations exposed by the local Admin API.""" |
|
|
| async def apply_admin_config( |
| self, updates: Mapping[str, Any] |
| ) -> dict[str, Any]: ... |
|
|
| def admin_status(self) -> dict[str, Any]: ... |
|
|
| async def test_provider(self, provider_id: str) -> dict[str, Any]: ... |
|
|
| async def refresh_models(self) -> ProviderModelRefreshResult: ... |
|
|
| def usage_stats(self) -> dict[str, Any]: ... |
|
|
| async def request_restart(self) -> None: ... |
|
|
| async def connected_account_status( |
| self, provider_id: str |
| ) -> ConnectedAccountStatus: ... |
|
|
| async def start_connected_account_login( |
| self, |
| provider_id: str, |
| mode: ConnectedAccountLoginMode, |
| ) -> ConnectedAccountStatus: ... |
|
|
| async def cancel_connected_account_login( |
| self, provider_id: str |
| ) -> ConnectedAccountStatus: ... |
|
|
| async def disconnect_connected_account( |
| self, provider_id: str |
| ) -> ConnectedAccountStatus: ... |
|
|
|
|
| @dataclass(frozen=True, slots=True) |
| class ApiServices: |
| """Complete runtime boundary required to construct the API application.""" |
|
|
| requests: RequestRuntimePort |
| admin: AdminRuntimePort |
| tasks: TaskController |
|
|