module System.Etc (
Config
, getConfigValue
, getConfigValueWith
, getSelectedConfigSource
, getAllConfigSources
, ConfigSource (..)
, ConfigValue
, ConfigSpec
, ConfigurationError (..)
, parseConfigSpec
, readConfigSpec
, resolveDefault
, resolveFiles
, resolveEnvPure
, resolveEnv
#ifdef WITH_CLI
, resolvePlainCliPure
, resolveCommandCliPure
, resolvePlainCli
, resolveCommandCli
, getErrorMessage
, CliConfigError(..)
#endif
#ifdef WITH_PRINTER
, renderConfig
, printPrettyConfig
, hPrintPrettyConfig
#endif
) where
import System.Etc.Internal.Resolver.Default (resolveDefault)
import System.Etc.Internal.Types (Config, ConfigSource (..), ConfigValue)
import System.Etc.Spec
(ConfigSpec, ConfigurationError (..), parseConfigSpec, readConfigSpec)
#ifdef WITH_CLI
import System.Etc.Internal.Resolver.Cli.Command (resolveCommandCli, resolveCommandCliPure)
import System.Etc.Internal.Resolver.Cli.Common (CliConfigError (..), getErrorMessage)
import System.Etc.Internal.Resolver.Cli.Plain (resolvePlainCli, resolvePlainCliPure)
#endif
#ifdef WITH_PRINTER
import System.Etc.Internal.Printer (hPrintPrettyConfig, printPrettyConfig, renderConfig)
#endif
import System.Etc.Internal.Config
(getAllConfigSources, getConfigValue, getConfigValueWith, getSelectedConfigSource)
import System.Etc.Internal.Resolver.Env (resolveEnv, resolveEnvPure)
import System.Etc.Internal.Resolver.File (resolveFiles)