from typing import Any, Callable, Dict, List, Optional from sqlmodel import Session from providers.provision.base import ProvisionProvider class LocalProvisionProvider(ProvisionProvider): def __init__( self, *, sync_workspace_func: Callable[ [Session, str, Optional[List[Dict[str, Any]]], Optional[Dict[str, Any]], Optional[Dict[str, Any]]], None, ], ) -> None: self._sync_workspace_func = sync_workspace_func def sync_bot_workspace( self, *, session: Session, bot_id: str, channels_override: Optional[List[Dict[str, Any]]] = None, global_delivery_override: Optional[Dict[str, Any]] = None, runtime_overrides: Optional[Dict[str, Any]] = None, ) -> None: self._sync_workspace_func( session, bot_id, channels_override, global_delivery_override, runtime_overrides, )