// @generated
// This file is @generated by prost-build.
// ============================================================================
// MESSAGES
// ============================================================================

#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct InitiateWithdrawalRequest {
    #[prost(string, tag="1")]
    pub asset_id: ::prost::alloc::string::String,
    #[prost(string, tag="2")]
    pub amount: ::prost::alloc::string::String,
    #[prost(string, tag="3")]
    pub destination: ::prost::alloc::string::String,
    #[prost(string, optional, tag="4")]
    pub source: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetWithdrawalRequest {
    #[prost(int64, tag="1")]
    pub withdrawal_index: i64,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct Withdrawal {
    #[prost(int64, tag="1")]
    pub withdrawal_index: i64,
    #[prost(string, tag="2")]
    pub vault_address: ::prost::alloc::string::String,
    #[prost(string, tag="3")]
    pub calldata: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListPendingWithdrawalsRequest {
    #[prost(uint32, optional, tag="1")]
    pub page: ::core::option::Option<u32>,
    #[prost(uint32, optional, tag="2")]
    pub page_size: ::core::option::Option<u32>,
}
/// A single pending withdrawal in a list response. A lightweight summary — the
/// executable calldata is not included (it does not exist until the withdrawal
/// is confirmed on-chain; fetch it from GetWithdrawal once it becomes ready).
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct PendingWithdrawal {
    #[prost(int64, tag="1")]
    pub withdrawal_index: i64,
    #[prost(string, tag="2")]
    pub asset_id: ::prost::alloc::string::String,
    #[prost(string, tag="3")]
    pub asset_symbol: ::prost::alloc::string::String,
    #[prost(string, tag="4")]
    pub amount: ::prost::alloc::string::String,
    #[prost(string, tag="5")]
    pub destination: ::prost::alloc::string::String,
    #[prost(string, tag="6")]
    pub status: ::prost::alloc::string::String,
    #[prost(string, tag="7")]
    pub created_at: ::prost::alloc::string::String,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListPendingWithdrawalsResponse {
    #[prost(message, repeated, tag="1")]
    pub withdrawals: ::prost::alloc::vec::Vec<PendingWithdrawal>,
    #[prost(uint32, tag="2")]
    pub total: u32,
    #[prost(uint32, tag="3")]
    pub page: u32,
    #[prost(uint32, tag="4")]
    pub page_size: u32,
    #[prost(uint32, tag="5")]
    pub total_pages: u32,
}
include!("monaco.api.withdrawals.tonic.rs");
// @@protoc_insertion_point(module)