Configuration struct for ClusterHelper.
Use ClusterHelper.Config.from_app_env/0 to load configuration from
application environment, or construct one directly for testing.
Summary
Functions
Returns the configured default scope directly from application environment.
Builds a Config from application environment (Application.get_env/2).
Resolves nil scope to the configured default scope.
Types
@type t() :: %ClusterHelper.Config{ event_handler: module() | nil, pull_interval: pos_integer(), pull_timeout: pos_integer(), roles: [term()], scope: atom(), scopes: [atom()] | nil }
Functions
@spec default_scope() :: atom()
Returns the configured default scope directly from application environment.
Cheaper than building a full Config struct — intended for hot paths.
@spec from_app_env() :: t()
Builds a Config from application environment (Application.get_env/2).
All fields have sensible defaults, so this never fails.
Resolves nil scope to the configured default scope.