# Author: LKouadio <etanoyau@gmail.com>
# License: LGPL-3.0
"""CLI configuration API for pyCSAMT.
Mirrors the ``configure_* / reset_*`` pattern used throughout
``pycsamt.api``. Import from here to configure CLI defaults
programmatically or from a script.
Example
-------
::
from pycsamt.api.cli import configure_cli, reset_cli, PYCSAMT_CLI
# set session-wide defaults
configure_cli(log__level=1, output__format="json")
# inspect current settings
print(PYCSAMT_CLI)
# restore defaults
reset_cli()
"""
from .config import (
PYCSAMT_CLI,
BuildConfig,
LogConfig,
OutputConfig,
PyCSAMTCLI,
configure_cli,
reset_cli,
)
from .options import (
common_options,
format_option,
fresh_option,
n_jobs_option,
no_cache_option,
no_color_option,
output_dir_option,
overwrite_option,
survey_option,
verbose_option,
)
from .params import (
EDIDir,
EDIPath,
FreqRange,
PipeStepList,
StationList,
)
__all__ = [
# config
"BuildConfig",
"LogConfig",
"OutputConfig",
"PYCSAMT_CLI",
"PyCSAMTCLI",
"configure_cli",
"reset_cli",
# options
"common_options",
"format_option",
"fresh_option",
"n_jobs_option",
"no_cache_option",
"no_color_option",
"output_dir_option",
"overwrite_option",
"survey_option",
"verbose_option",
# params
"EDIDir",
"EDIPath",
"FreqRange",
"PipeStepList",
"StationList",
]