@@ -45,6 +45,9 @@ pub struct Params {
4545 /// TSS params
4646 #[ prost( message, optional, tag = "14" ) ]
4747 pub tss_params : :: core:: option:: Option < TssParams > ,
48+ /// IBC params
49+ #[ prost( message, optional, tag = "15" ) ]
50+ pub ibc_params : :: core:: option:: Option < IbcParams > ,
4851}
4952impl :: prost:: Name for Params {
5053 const NAME : & ' static str = "Params" ;
@@ -158,6 +161,27 @@ impl ::prost::Name for TssParams {
158161 :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
159162 }
160163}
164+ /// IBCParams defines the params related to IBC
165+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
166+ #[ derive( Clone , PartialEq , :: prost:: Message ) ]
167+ pub struct IbcParams {
168+ /// Id of the IBC port used to transfer sBTC
169+ #[ prost( string, tag = "1" ) ]
170+ pub port_id : :: prost:: alloc:: string:: String ,
171+ /// Timeout height offset relative to the current client height
172+ #[ prost( uint64, tag = "2" ) ]
173+ pub timeout_height_offset : u64 ,
174+ /// Timeout duration relative to the current time
175+ #[ prost( message, optional, tag = "3" ) ]
176+ pub timeout_duration : :: core:: option:: Option < :: tendermint_proto:: google:: protobuf:: Duration > ,
177+ }
178+ impl :: prost:: Name for IbcParams {
179+ const NAME : & ' static str = "IBCParams" ;
180+ const PACKAGE : & ' static str = "side.btcbridge" ;
181+ fn full_name ( ) -> :: prost:: alloc:: string:: String {
182+ :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
183+ }
184+ }
161185/// AssetType defines the type of asset
162186#[ derive( Clone , Copy , Debug , PartialEq , Eq , Hash , PartialOrd , Ord , :: prost:: Enumeration ) ]
163187#[ repr( i32 ) ]
@@ -287,6 +311,26 @@ impl ::prost::Name for WithdrawRequest {
287311 :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
288312 }
289313}
314+ /// Withdrawal request via IBC
315+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
316+ #[ derive( Clone , PartialEq , :: prost:: Message ) ]
317+ pub struct IbcWithdrawRequest {
318+ #[ prost( string, tag = "1" ) ]
319+ pub channel_id : :: prost:: alloc:: string:: String ,
320+ #[ prost( uint64, tag = "2" ) ]
321+ pub sequence : u64 ,
322+ #[ prost( string, tag = "3" ) ]
323+ pub address : :: prost:: alloc:: string:: String ,
324+ #[ prost( string, tag = "4" ) ]
325+ pub amount : :: prost:: alloc:: string:: String ,
326+ }
327+ impl :: prost:: Name for IbcWithdrawRequest {
328+ const NAME : & ' static str = "IBCWithdrawRequest" ;
329+ const PACKAGE : & ' static str = "side.btcbridge" ;
330+ fn full_name ( ) -> :: prost:: alloc:: string:: String {
331+ :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
332+ }
333+ }
290334/// Bitcoin UTXO
291335#[ allow( clippy:: derive_partial_eq_without_eq) ]
292336#[ derive( Clone , PartialEq , :: prost:: Message ) ]
@@ -1116,6 +1160,36 @@ impl ::prost::Name for QueryDkgCompletionRequestsResponse {
11161160 :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
11171161 }
11181162}
1163+ /// QueryIBCDepositScriptRequest is the request type for the Query/IBCDepositScript RPC method.
1164+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
1165+ #[ derive( Clone , PartialEq , :: prost:: Message ) ]
1166+ pub struct QueryIbcDepositScriptRequest {
1167+ #[ prost( string, tag = "1" ) ]
1168+ pub channel_id : :: prost:: alloc:: string:: String ,
1169+ #[ prost( string, tag = "2" ) ]
1170+ pub recipient_address : :: prost:: alloc:: string:: String ,
1171+ }
1172+ impl :: prost:: Name for QueryIbcDepositScriptRequest {
1173+ const NAME : & ' static str = "QueryIBCDepositScriptRequest" ;
1174+ const PACKAGE : & ' static str = "side.btcbridge" ;
1175+ fn full_name ( ) -> :: prost:: alloc:: string:: String {
1176+ :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
1177+ }
1178+ }
1179+ /// QueryIBCDepositScriptResponse is the response type for the Query/IBCDepositScript RPC method.
1180+ #[ allow( clippy:: derive_partial_eq_without_eq) ]
1181+ #[ derive( Clone , PartialEq , :: prost:: Message ) ]
1182+ pub struct QueryIbcDepositScriptResponse {
1183+ #[ prost( string, tag = "1" ) ]
1184+ pub script : :: prost:: alloc:: string:: String ,
1185+ }
1186+ impl :: prost:: Name for QueryIbcDepositScriptResponse {
1187+ const NAME : & ' static str = "QueryIBCDepositScriptResponse" ;
1188+ const PACKAGE : & ' static str = "side.btcbridge" ;
1189+ fn full_name ( ) -> :: prost:: alloc:: string:: String {
1190+ :: prost:: alloc:: format!( "side.btcbridge.{}" , Self :: NAME )
1191+ }
1192+ }
11191193/// MsgSubmitDepositTransaction defines the Msg/SubmitDepositTransaction request type.
11201194#[ allow( clippy:: derive_partial_eq_without_eq) ]
11211195#[ derive( Clone , PartialEq , :: prost:: Message ) ]
0 commit comments