nautilus_dydx/proto/mod.rs
1// -------------------------------------------------------------------------------------------------
2// Copyright (C) 2015-2025 Nautech Systems Pty Ltd. All rights reserved.
3// https://nautechsystems.io
4//
5// Licensed under the GNU Lesser General Public License Version 3.0 (the "License");
6// You may not use this file except in compliance with the License.
7// You may obtain a copy of the License at https://www.gnu.org/licenses/lgpl-3.0.en.html
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14// -------------------------------------------------------------------------------------------------
15
16//! Protocol Buffer definitions for dYdX v4.
17//!
18//! Re-exports proto definitions from the `dydx_proto` crate which includes both
19//! Cosmos SDK and dYdX protocol-specific messages.
20
21// Re-export commonly used proto types
22// Re-export entire modules for comprehensive access
23pub use dydx_proto::{
24 ToAny, cosmos_sdk_proto,
25 cosmos_sdk_proto::cosmos::{
26 auth::v1beta1::{
27 BaseAccount, QueryAccountRequest, query_client::QueryClient as AuthClient,
28 },
29 bank::v1beta1::{
30 MsgSend, QueryAllBalancesRequest, query_client::QueryClient as BankClient,
31 },
32 base::{
33 tendermint::v1beta1::{
34 Block, GetLatestBlockRequest, GetNodeInfoRequest, GetNodeInfoResponse,
35 service_client::ServiceClient as BaseClient,
36 },
37 v1beta1::Coin,
38 },
39 tx::v1beta1::{
40 BroadcastMode, BroadcastTxRequest, GetTxRequest, SimulateRequest,
41 service_client::ServiceClient as TxClient,
42 },
43 },
44 dydxprotocol,
45 dydxprotocol::{
46 accountplus::TxExtension,
47 clob::{
48 ClobPair, MsgBatchCancel, MsgCancelOrder, MsgPlaceOrder, Order, OrderBatch, OrderId,
49 QueryAllClobPairRequest,
50 order::{
51 self as order_proto, ConditionType, Side as OrderSide,
52 TimeInForce as OrderTimeInForce,
53 },
54 query_client::QueryClient as ClobClient,
55 },
56 perpetuals::{
57 Perpetual, QueryAllPerpetualsRequest, query_client::QueryClient as PerpetualsClient,
58 },
59 sending::{MsgCreateTransfer, MsgDepositToSubaccount, MsgWithdrawFromSubaccount, Transfer},
60 subaccounts::{
61 QueryGetSubaccountRequest, Subaccount as SubaccountInfo, SubaccountId,
62 query_client::QueryClient as SubaccountsClient,
63 },
64 },
65};