#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BridgeConfigView {
#[prost(int32, tag="1")]
pub min_validators: i32,
#[prost(int32, tag="2")]
pub attestation_threshold: i32,
#[prost(int64, tag="3")]
pub challenge_period_secs: i64,
#[prost(string, tag="4")]
pub large_transfer_threshold: ::prost::alloc::string::String,
#[prost(bool, tag="5")]
pub enabled: bool,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ChainConfigView {
#[prost(string, tag="1")]
pub chain_id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub chain_type: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub bridge_contract: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub status: ::prost::alloc::string::String,
#[prost(int32, tag="6")]
pub min_confirmations: i32,
#[prost(string, tag="7")]
pub architecture: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub ibc_channel_id: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub ibc_port_id: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BridgeValidatorView {
#[prost(string, tag="1")]
pub address: ::prost::alloc::string::String,
#[prost(string, repeated, tag="2")]
pub supported_chains: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub reputation: ::prost::alloc::string::String,
#[prost(bool, tag="4")]
pub active: bool,
#[prost(int64, tag="5")]
pub registered_at: i64,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BridgeOperationView {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub r#type: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub source_chain: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub dest_chain: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub sender: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub receiver: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub amount: ::prost::alloc::string::String,
#[prost(string, tag="9")]
pub source_tx_hash: ::prost::alloc::string::String,
#[prost(string, tag="10")]
pub status: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryConfigRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryConfigResponse {
#[prost(message, optional, tag="1")]
pub config: ::core::option::Option<BridgeConfigView>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryChainConfigRequest {
#[prost(string, tag="1")]
pub chain_id: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryChainConfigResponse {
#[prost(message, optional, tag="1")]
pub chain: ::core::option::Option<ChainConfigView>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryChainConfigsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryChainConfigsResponse {
#[prost(message, repeated, tag="1")]
pub chains: ::prost::alloc::vec::Vec<ChainConfigView>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryValidatorRequest {
#[prost(string, tag="1")]
pub address: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryValidatorResponse {
#[prost(message, optional, tag="1")]
pub validator: ::core::option::Option<BridgeValidatorView>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryValidatorsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryValidatorsResponse {
#[prost(message, repeated, tag="1")]
pub validators: ::prost::alloc::vec::Vec<BridgeValidatorView>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryOperationRequest {
#[prost(string, tag="1")]
pub id: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryOperationResponse {
#[prost(message, optional, tag="1")]
pub operation: ::core::option::Option<BridgeOperationView>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct QueryOperationsRequest {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct QueryOperationsResponse {
#[prost(message, repeated, tag="1")]
pub operations: ::prost::alloc::vec::Vec<BridgeOperationView>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgUpdateChainConfig {
#[prost(string, tag="1")]
pub admin: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub chain_id: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub bridge_contract: ::prost::alloc::string::String,
#[prost(uint32, tag="4")]
pub confirmations_required: u32,
#[prost(string, tag="5")]
pub architecture: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub status: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub verifier: ::prost::alloc::string::String,
#[prost(string, tag="8")]
pub lock_event_sig: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgUpdateChainConfigResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgSetVerifierBootstrap {
#[prost(string, tag="1")]
pub admin: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub chain_id: ::prost::alloc::string::String,
#[prost(message, optional, tag="3")]
pub wormhole: ::core::option::Option<WormholeGuardianSet>,
#[prost(message, optional, tag="4")]
pub ed25519: ::core::option::Option<ValidatorQuorum>,
#[prost(message, optional, tag="5")]
pub bls: ::core::option::Option<ValidatorQuorum>,
#[prost(message, optional, tag="6")]
pub bitcoin: ::core::option::Option<BitcoinCheckpoint>,
#[prost(bytes="vec", tag="7")]
pub starknet_state_root: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgSetVerifierBootstrapResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct WormholeGuardianSet {
#[prost(bytes="vec", repeated, tag="1")]
pub addresses: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
#[prost(uint32, tag="2")]
pub quorum: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ValidatorQuorum {
#[prost(bytes="vec", repeated, tag="1")]
pub pubkeys: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
#[prost(uint32, tag="2")]
pub threshold: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct BitcoinCheckpoint {
#[prost(bytes="vec", tag="1")]
pub block_hash: ::prost::alloc::vec::Vec<u8>,
#[prost(uint32, tag="2")]
pub min_confs: u32,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgBridgeDeposit {
#[prost(string, tag="1")]
pub sender: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub source_chain: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub source_tx_hash: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub amount: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="6")]
pub bridge_validator_sigs: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes="vec", tag="7")]
pub pqc_commitment: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgBridgeDepositResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgBridgeWithdraw {
#[prost(string, tag="1")]
pub sender: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub destination_chain: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub destination_address: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub asset: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub amount: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgBridgeWithdrawResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgRegisterBridgeValidator {
#[prost(string, tag="1")]
pub validator_address: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="2")]
pub pqc_pubkey: ::prost::alloc::vec::Vec<u8>,
#[prost(string, repeated, tag="3")]
pub supported_chains: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgRegisterBridgeValidatorResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgBridgeAttestation {
#[prost(string, tag="1")]
pub validator: ::prost::alloc::string::String,
#[prost(string, tag="2")]
pub chain: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub event_type: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub operation_id: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub tx_hash: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub amount: ::prost::alloc::string::String,
#[prost(string, tag="7")]
pub asset: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="8")]
pub proof: ::prost::alloc::vec::Vec<u8>,
#[prost(bytes="vec", tag="9")]
pub pqc_signature: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgBridgeAttestationResponse {
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MsgUpdateEthLightClient {
#[prost(string, tag="1")]
pub relayer: ::prost::alloc::string::String,
#[prost(bytes="vec", tag="2")]
pub update: ::prost::alloc::vec::Vec<u8>,
}
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct MsgUpdateEthLightClientResponse {
}