from typing import List, Dict, Optional class CodeDepotService: def __init__(self) -> None: pass async def check_depot_name_availabe(self, code_depot_name: str) -> bool: pass def check_code_depot_exist(self, code_depot_name: str) -> bool: pass async def create_code_depot(self, product_id, code_depot_name) -> Optional[str]: pass def get_depot_ssh_url(self, code_depot_name: str) -> str: pass def get_depot_http_url(self, code_depot_name: str) -> str: pass def get_depot_http_url_with_user_name( self, code_depot_name: str, user_name: str ) -> str: pass async def get_depot_users(self, code_depot_name: str) -> List[str]: pass async def update_depot_user_password(self, user_name: str, password: str) -> bool: pass async def create_depot_user( self, user_name: str, password: str, email: str ) -> bool: pass async def grant_user_depot_access( self, user_name: str, code_depot_name: str ) -> bool: pass async def generate_statistic_result( self, code_depot_name: str ) -> Optional[Dict[str, any]]: pass async def analyze_code_depots(self): pass async def fetch_code_depot(self, code_depot_id: str) -> Optional[Dict[str, any]]: pass