#!/usr/bin/env python3 # -*- coding: utf-8 -*- from typing import Any, Optional, Sequence, Self from abc import ABC, abstractmethod from Interfaces.Managers.SettingsManagerInterface import SettingsManagerInterface from Interfaces.Managers.I18NManagerInterface import I18NManagerInterface from Interfaces.Managers.PrintTypesManagerInterface import PrintTypesManagerInterface from Interfaces.Managers.TerminalManagerInterface import TerminalManagerInterface from Interfaces.Managers.ModelsManagerInterface import ModelsManagerInterface from Interfaces.Managers.UniqueKeysManagerInterface import UniqueKeysManagerInterface from Interfaces.Managers.QueusManagerInterface import QueusManagerInterface from Interfaces.Managers.SessionsManagerInterface import SessionsManagerInterface from Interfaces.Managers.ControllersManagerInterface import ControllersManagerInterface from Interfaces.Managers.DispatchesManagerInterface import DispatchesManagerInterface from Interfaces.Managers.IndexesManagerInterface import IndexesManagerInterface from Interfaces.Managers.RoutesManagerInterface import RoutesManagerInterface from Interfaces.Managers.WebSocketServersManagerInterface import WebSocketServersManagerInterface from Interfaces.Managers.HTTPServersManagerInterface import HTTPServersManagerInterface from Interfaces.Managers.PseudoLoRAsManagerInterface import PseudoLoRAsManagerInterface from Interfaces.Managers.AIInterpretersManagerInterface import AIInterpretersManagerInterface class AnPInterface(ABC): def __init__(self:Self, inputs:Optional[dict[str, Any|None]|Sequence[Any|None]] = None) -> None: self.settings:SettingsManagerInterface = None self.i18n:I18NManagerInterface = None self.print_types:PrintTypesManagerInterface = None self.terminal:TerminalManagerInterface = None self.models:ModelsManagerInterface = None self.unique_keys:UniqueKeysManagerInterface = None self.queues:QueusManagerInterface = None self.sessions:SessionsManagerInterface = None self.controllers:ControllersManagerInterface = None self.dispatches:DispatchesManagerInterface = None self.indexes:IndexesManagerInterface = None self.routes:RoutesManagerInterface = None self.web_socket_servers:WebSocketServersManagerInterface = None self.http_servers:HTTPServersManagerInterface = None self.pseudoloras:PseudoLoRAsManagerInterface = None self.ai_interpreters:AIInterpretersManagerInterface = None @abstractmethod def update(self:Self) -> None:pass @abstractmethod def reset(self:Self) -> None:pass @abstractmethod def close(self:Self) -> None:pass @abstractmethod def working(self:Self) -> bool:pass @abstractmethod def print(self:Self, _type:str, message:str|Sequence[str], inputs:Optional[dict[str, Any|None]|Sequence[Any|None]] = None, i:int = 0 ) -> None:pass @abstractmethod def exception(self:Self, exception:Exception, message:str|Sequence[str], inputs:Optional[dict[str, Any|None]|Sequence[Any|None]] = None, i:int = 0 ) -> None:pass