@@ -273,8 +273,14 @@ impl_writeable_tlv_based!(ChannelCounterparty, {
273273
274274/// Details of a channel, as returned by [`ChannelManager::list_channels`] and [`ChannelManager::list_usable_channels`] 
275275/// 
276+ /// Balances of a channel are available through [`ChainMonitor::get_claimable_balances`] and 
277+ /// [`ChannelMonitor::get_claimable_balances`], calculated with respect to the corresponding on-chain 
278+ /// transactions. 
279+ /// 
276280/// [`ChannelManager::list_channels`]: crate::ln::channelmanager::ChannelManager::list_channels 
277281/// [`ChannelManager::list_usable_channels`]: crate::ln::channelmanager::ChannelManager::list_usable_channels 
282+ /// [`ChainMonitor::get_claimable_balances`]: crate::chain::chainmonitor::ChainMonitor::get_claimable_balances 
283+ /// [`ChannelMonitor::get_claimable_balances`]: crate::chain::channelmonitor::ChannelMonitor::get_claimable_balances 
278284#[ derive( Clone ,  Debug ,  PartialEq ) ]  
279285pub  struct  ChannelDetails  { 
280286	/// The channel's ID (prior to funding transaction generation, this is a random 32 bytes, 
@@ -363,6 +369,7 @@ pub struct ChannelDetails {
363369/// This does not consider any on-chain fees. 
364370/// 
365371/// See also [`ChannelDetails::outbound_capacity_msat`] 
372+ #[ deprecated( since = "0.0.124" ,  note = "use [`ChainMonitor::get_claimable_balances`] instead" ) ]  
366373	pub  balance_msat :  u64 , 
367374	/// The available outbound capacity for sending HTLCs to the remote peer. This does not include 
368375/// any pending HTLCs which are not yet fully resolved (and, thus, whose balance is not 
@@ -495,6 +502,7 @@ impl ChannelDetails {
495502		let  balance = context. get_available_balances ( fee_estimator) ; 
496503		let  ( to_remote_reserve_satoshis,  to_self_reserve_satoshis)  =
497504			context. get_holder_counterparty_selected_channel_reserve_satoshis ( ) ; 
505+ 		#[ allow( deprecated) ]   // TODO: Remove once balance_msat is removed. 
498506		ChannelDetails  { 
499507			channel_id :  context. channel_id ( ) , 
500508			counterparty :  ChannelCounterparty  { 
@@ -561,38 +569,41 @@ impl Writeable for ChannelDetails {
561569		// versions prior to 0.0.113, the u128 is serialized as two separate u64 values. 
562570		let  user_channel_id_low = self . user_channel_id  as  u64 ; 
563571		let  user_channel_id_high_opt = Some ( ( self . user_channel_id  >> 64 )  as  u64 ) ; 
564- 		write_tlv_fields ! ( writer,  { 
565- 			( 1 ,  self . inbound_scid_alias,  option) , 
566- 			( 2 ,  self . channel_id,  required) , 
567- 			( 3 ,  self . channel_type,  option) , 
568- 			( 4 ,  self . counterparty,  required) , 
569- 			( 5 ,  self . outbound_scid_alias,  option) , 
570- 			( 6 ,  self . funding_txo,  option) , 
571- 			( 7 ,  self . config,  option) , 
572- 			( 8 ,  self . short_channel_id,  option) , 
573- 			( 9 ,  self . confirmations,  option) , 
574- 			( 10 ,  self . channel_value_satoshis,  required) , 
575- 			( 12 ,  self . unspendable_punishment_reserve,  option) , 
576- 			( 14 ,  user_channel_id_low,  required) , 
577- 			( 16 ,  self . balance_msat,  required) , 
578- 			( 18 ,  self . outbound_capacity_msat,  required) , 
579- 			( 19 ,  self . next_outbound_htlc_limit_msat,  required) , 
580- 			( 20 ,  self . inbound_capacity_msat,  required) , 
581- 			( 21 ,  self . next_outbound_htlc_minimum_msat,  required) , 
582- 			( 22 ,  self . confirmations_required,  option) , 
583- 			( 24 ,  self . force_close_spend_delay,  option) , 
584- 			( 26 ,  self . is_outbound,  required) , 
585- 			( 28 ,  self . is_channel_ready,  required) , 
586- 			( 30 ,  self . is_usable,  required) , 
587- 			( 32 ,  self . is_public,  required) , 
588- 			( 33 ,  self . inbound_htlc_minimum_msat,  option) , 
589- 			( 35 ,  self . inbound_htlc_maximum_msat,  option) , 
590- 			( 37 ,  user_channel_id_high_opt,  option) , 
591- 			( 39 ,  self . feerate_sat_per_1000_weight,  option) , 
592- 			( 41 ,  self . channel_shutdown_state,  option) , 
593- 			( 43 ,  self . pending_inbound_htlcs,  optional_vec) , 
594- 			( 45 ,  self . pending_outbound_htlcs,  optional_vec) , 
595- 		} ) ; 
572+ 		#[ allow( deprecated) ]   // TODO: Remove once balance_msat is removed. 
573+ 		{ 
574+ 			write_tlv_fields ! ( writer,  { 
575+ 				( 1 ,  self . inbound_scid_alias,  option) , 
576+ 				( 2 ,  self . channel_id,  required) , 
577+ 				( 3 ,  self . channel_type,  option) , 
578+ 				( 4 ,  self . counterparty,  required) , 
579+ 				( 5 ,  self . outbound_scid_alias,  option) , 
580+ 				( 6 ,  self . funding_txo,  option) , 
581+ 				( 7 ,  self . config,  option) , 
582+ 				( 8 ,  self . short_channel_id,  option) , 
583+ 				( 9 ,  self . confirmations,  option) , 
584+ 				( 10 ,  self . channel_value_satoshis,  required) , 
585+ 				( 12 ,  self . unspendable_punishment_reserve,  option) , 
586+ 				( 14 ,  user_channel_id_low,  required) , 
587+ 				( 16 ,  self . balance_msat,  required) , 
588+ 				( 18 ,  self . outbound_capacity_msat,  required) , 
589+ 				( 19 ,  self . next_outbound_htlc_limit_msat,  required) , 
590+ 				( 20 ,  self . inbound_capacity_msat,  required) , 
591+ 				( 21 ,  self . next_outbound_htlc_minimum_msat,  required) , 
592+ 				( 22 ,  self . confirmations_required,  option) , 
593+ 				( 24 ,  self . force_close_spend_delay,  option) , 
594+ 				( 26 ,  self . is_outbound,  required) , 
595+ 				( 28 ,  self . is_channel_ready,  required) , 
596+ 				( 30 ,  self . is_usable,  required) , 
597+ 				( 32 ,  self . is_public,  required) , 
598+ 				( 33 ,  self . inbound_htlc_minimum_msat,  option) , 
599+ 				( 35 ,  self . inbound_htlc_maximum_msat,  option) , 
600+ 				( 37 ,  user_channel_id_high_opt,  option) , 
601+ 				( 39 ,  self . feerate_sat_per_1000_weight,  option) , 
602+ 				( 41 ,  self . channel_shutdown_state,  option) , 
603+ 				( 43 ,  self . pending_inbound_htlcs,  optional_vec) , 
604+ 				( 45 ,  self . pending_outbound_htlcs,  optional_vec) , 
605+ 			} ) ; 
606+ 		} 
596607		Ok ( ( ) ) 
597608	} 
598609} 
@@ -640,6 +651,7 @@ impl Readable for ChannelDetails {
640651		let  user_channel_id = user_channel_id_low as  u128 
641652			+ ( ( user_channel_id_high_opt. unwrap_or ( 0  as  u64 )  as  u128 )  << 64 ) ; 
642653
654+ 		#[ allow( deprecated) ]   // TODO: Remove once balance_msat is removed. 
643655		Ok ( Self  { 
644656			inbound_scid_alias, 
645657			channel_id :  channel_id. 0 . unwrap ( ) , 
0 commit comments