+
+/// Top-level config which holds ChannelHandshakeLimits and ChannelConfig.
+///
+/// Default::default() provides sane defaults for most configurations
+/// (but currently with 0 relay fees!)
+#[derive(Copy, Clone, Debug)]
+pub struct UserConfig {
+ /// Channel config that we propose to our counterparty.
+ pub own_channel_config: ChannelHandshakeConfig,
+ /// Limits applied to our counterparty's proposed channel config settings.
+ pub peer_channel_config_limits: ChannelHandshakeLimits,
+ /// Channel config which affects behavior during channel lifetime.
+ pub channel_options: ChannelConfig,
+}
+
+impl Default for UserConfig {
+ fn default() -> Self {
+ UserConfig {
+ own_channel_config: ChannelHandshakeConfig::default(),
+ peer_channel_config_limits: ChannelHandshakeLimits::default(),
+ channel_options: ChannelConfig::default(),
+ }
+ }
+}