Port for pool name resolution and URL normalization.
@callback build(String.t(), atom()) :: {String.t(), atom()}
@callback destination(String.t()) :: String.t()
@callback normalize_base_url(String.t()) :: String.t()
@callback pool_name(atom(), String.t(), atom()) :: atom()
@callback resolve_pool_name(atom(), String.t(), atom()) :: atom()