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

#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetConfigRequest {
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct GetConfigResponse {
    #[prost(string, tag="1")]
    pub id: ::prost::alloc::string::String,
    #[prost(string, tag="2")]
    pub name: ::prost::alloc::string::String,
    #[prost(string, repeated, tag="3")]
    pub allowed_origins: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
    #[prost(string, optional, tag="4")]
    pub webhook_url: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="5")]
    pub vault_contract_address: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="6")]
    pub client_id: ::prost::alloc::string::String,
}
// ============================================================================
// ORDERS
// ============================================================================

#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListAppOrdersRequest {
    #[prost(uint32, optional, tag="1")]
    pub page: ::core::option::Option<u32>,
    #[prost(uint32, optional, tag="2")]
    pub page_size: ::core::option::Option<u32>,
    #[prost(string, optional, tag="3")]
    pub status: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="4")]
    pub user_id: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="5")]
    pub trading_pair_id: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="6")]
    pub side: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="7")]
    pub order_type: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListAppOrdersResponse {
    #[prost(message, repeated, tag="1")]
    pub orders: ::prost::alloc::vec::Vec<super::super::common::orders::ApplicationOrder>,
    #[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,
}
// ============================================================================
// USERS
// ============================================================================

#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListAppUsersRequest {
    #[prost(uint32, optional, tag="1")]
    pub page: ::core::option::Option<u32>,
    #[prost(uint32, optional, tag="2")]
    pub page_size: ::core::option::Option<u32>,
    #[prost(bool, optional, tag="3")]
    pub is_active: ::core::option::Option<bool>,
    #[prost(string, optional, tag="4")]
    pub account_type: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="5")]
    pub address: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListAppUsersResponse {
    #[prost(message, repeated, tag="1")]
    pub users: ::prost::alloc::vec::Vec<super::super::common::user::AppUser>,
    #[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,
}
// ============================================================================
// MOVEMENTS
// ============================================================================

#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListAppMovementsRequest {
    #[prost(uint32, optional, tag="1")]
    pub page: ::core::option::Option<u32>,
    #[prost(uint32, optional, tag="2")]
    pub page_size: ::core::option::Option<u32>,
    #[prost(string, optional, tag="3")]
    pub user_id: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="4")]
    pub transaction_type: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="5")]
    pub entry_type: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="6")]
    pub asset_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListAppMovementsResponse {
    #[prost(message, repeated, tag="1")]
    pub movements: ::prost::alloc::vec::Vec<ApplicationMovement>,
    #[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,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ApplicationMovement {
    #[prost(string, tag="1")]
    pub amount: ::prost::alloc::string::String,
    #[prost(string, optional, tag="2")]
    pub balance_after: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="3")]
    pub balance_before: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="4")]
    pub balance_id: ::prost::alloc::string::String,
    #[prost(int64, optional, tag="5")]
    pub block_number: ::core::option::Option<i64>,
    #[prost(string, optional, tag="6")]
    pub created_at: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="7")]
    pub description: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="8")]
    pub entry_type: ::prost::alloc::string::String,
    #[prost(string, tag="9")]
    pub id: ::prost::alloc::string::String,
    #[prost(string, optional, tag="10")]
    pub locked_after: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="11")]
    pub locked_before: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="12")]
    pub reference_id: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="13")]
    pub reference_type: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="14")]
    pub token: ::prost::alloc::string::String,
    #[prost(string, tag="15")]
    pub transaction_type: ::prost::alloc::string::String,
    #[prost(string, optional, tag="16")]
    pub tx_hash: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="17")]
    pub user_id: ::prost::alloc::string::String,
}
// ============================================================================
// BALANCES
// ============================================================================

#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ListAppBalancesRequest {
    #[prost(uint32, optional, tag="1")]
    pub page: ::core::option::Option<u32>,
    #[prost(uint32, optional, tag="2")]
    pub page_size: ::core::option::Option<u32>,
    #[prost(string, optional, tag="3")]
    pub user_id: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, optional, tag="4")]
    pub asset_id: ::core::option::Option<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListAppBalancesResponse {
    #[prost(message, repeated, tag="1")]
    pub balances: ::prost::alloc::vec::Vec<ApplicationBalance>,
    #[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,
}
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ApplicationBalance {
    #[prost(string, tag="1")]
    pub available_balance: ::prost::alloc::string::String,
    #[prost(string, optional, tag="2")]
    pub created_at: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(int32, tag="3")]
    pub decimals: i32,
    #[prost(string, tag="4")]
    pub id: ::prost::alloc::string::String,
    #[prost(string, optional, tag="5")]
    pub last_sync_at: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(int64, optional, tag="6")]
    pub last_sync_block: ::core::option::Option<i64>,
    #[prost(string, tag="7")]
    pub locked_balance: ::prost::alloc::string::String,
    #[prost(string, tag="8")]
    pub margin_locked: ::prost::alloc::string::String,
    #[prost(string, tag="9")]
    pub on_chain_balance: ::prost::alloc::string::String,
    #[prost(string, optional, tag="10")]
    pub symbol: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="11")]
    pub token: ::prost::alloc::string::String,
    #[prost(string, tag="12")]
    pub total_balance: ::prost::alloc::string::String,
    #[prost(string, optional, tag="13")]
    pub updated_at: ::core::option::Option<::prost::alloc::string::String>,
    #[prost(string, tag="14")]
    pub user_id: ::prost::alloc::string::String,
}
include!("monaco.api.applications.tonic.rs");
// @@protoc_insertion_point(module)