#!/usr/bin/env python3 # -*- coding: utf-8 -*- from typing import Self, Any, Optional, Sequence from abc import ABC, abstractmethod from Interfaces.Managers.SettingsManagerInterface import SettingsManagerInterface from Interfaces.Managers.I18NManagerInterface import I18NManagerInterface from Interfaces.Managers.PrintTypesManagerInterface import PrintTypesManagerInterface class AnPInterface(ABC): def __init__(self:Self, inputs:Optional[dict[str, Any|None]|Sequence[Any|None]] = None) -> None: self.print_types:PrintTypesManagerInterface = None self.i18n:I18NManagerInterface = None self.settings:SettingsManagerInterface = None @abstractmethod def print(self:Self, _type:str, data:Any|None, 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