"""Settings for the GridWorks Scada, readable from environment and/or from env files."""

from gwproactor.config.logging import (
    DEFAULT_BYTES_PER_LOG_FILE,
    DEFAULT_FRACTIONAL_SECOND_FORMAT,
    DEFAULT_LOG_FILE_NAME,
    DEFAULT_LOGGING_FORMAT,
    DEFAULT_NUM_LOG_FILES,
    FormatterSettings,
    LoggerLevels,
    LoggingSettings,
    RotatingFileHandlerSettings,
)
from gwproactor.config.mqtt import MQTTClient
from gwproactor.config.paths import (
    DEFAULT_BASE_DIR,
    DEFAULT_BASE_NAME,
    DEFAULT_LAYOUT_FILE,
    DEFAULT_NAME,
    DEFAULT_NAME_DIR,
    Paths,
)
from gwproactor.config.proactor_settings import ProactorSettings

DEFAULT_ENV_FILE = ".env"

__all__ = [
    "DEFAULT_BASE_DIR",
    "DEFAULT_BASE_NAME",
    "DEFAULT_BYTES_PER_LOG_FILE",
    # paths
    "DEFAULT_ENV_FILE",
    "DEFAULT_FRACTIONAL_SECOND_FORMAT",
    "DEFAULT_LAYOUT_FILE",
    # logging
    "DEFAULT_LOGGING_FORMAT",
    "DEFAULT_LOG_FILE_NAME",
    "DEFAULT_NAME",
    "DEFAULT_NAME_DIR",
    "DEFAULT_NUM_LOG_FILES",
    "FormatterSettings",
    "LoggerLevels",
    "LoggingSettings",
    # mqtt
    "MQTTClient",
    "Paths",
    # proactor
    "ProactorSettings",
    "RotatingFileHandlerSettings",
]
