from ..components.folder import Folder
from ..components.mod_path import ModPath
from ..components.mod_type import ModType
from ..types.he.i import I as HI


class I(HI):
    DIRNAM_DATA:str = ...
    DIRNAM_DATA_CONFIGS:str = ...
    DIRNAM_DATA_SETTINGS:str = ...
    DIRNAM_DATA_DATABASE_TABLES:str = ...
    DIRNAM_DATA_DATABASE_DATA:str = ...
    DIRNAM_DATA_MULTILINGALS:str = ...
    DIRNAM_LOGS:str = ...
    DIRNAM_PUBLIC:str = ...

    FILNAM_CONFIGS:str = ...
    FILNAM_SETTINGS:str = ...

    MLKEY_NAME:str = ...
    MLKEY_ABBR:str = ...
    MLKEY_TITLE:str = ...
    MLKEY_DESC:str = ...
    MLKEY_LINK_TITLE:str = ...
    MLKEY_PAGE_TITLE:str = ...
    MLKEY_BDCD_TITLE:str = ...

    LAN_CN:str = ...
    LAN_GB:str = ...
    LANS: list[str] = ...
    WEBMOD_CDN:str = ...
    WEBMOD_PUB:str = ...
    WEBMOD_AJX:str = ...
    WEBMOD_FIL:str = ...
    WEBMOD_LAY:str = ...
    WEBMOD_JSN:str = ...
    WEBMOD_PAG:str = ...
    WEBMOD_STM:str = ...
    WEBMODS: list[str] = ...
    DATCOL_BIN:str = ...
    DATCOL_CHA:str = ...
    DATCOL_DOB:str = ...
    DATCOL_FLT:str = ...
    DATCOL_INT:str = ...
    DATCOL_TXT:str = ...
    DATCOL_TIN:str = ...
    DATCOL_VCH:str = ...
    DATCOLS: list[str] = ...


    @property
    def builtin_folder(self)-> Folder: ...
    @property
    def builtin_mod_path(self)-> ModPath: ...
    @property
    def builtin_mod_type(self)-> ModType: ...
    @property
    def hebill_folder(self)-> Folder: ...
    @property
    def hebill_mod_path(self)-> ModPath: ...
    @property
    def hebill_mod_type(self)-> ModType: ...
    @property
    def project_folder(self)-> Folder: ...
    @property
    def project_mod_path(self)-> ModPath: ...
    @property
    def project_mod_type(self)-> ModType: ...
    @property
    def cdn_folder(self)-> Folder: ...
    @property
    def website_folder(self)-> Folder: ...
    @property
    def website_mod_path(self)-> ModPath: ...
    @property
    def website_mod_type(self)-> ModType: ...
