1pub mod api_models;
8pub mod directives;
9pub mod enums;
10pub mod expiry_times;
11pub mod option_token_address;
12pub mod requests;
13pub mod responses;
14pub mod routes;
15pub mod utils;
16pub mod wallet_address;
17pub mod ws_protocol;
18
19pub use api_models::{Instrument, MarketInfo, MarketsResponse};
20pub use enums::{
21 FillSource, MarketAction, MarketUpdateStatus, OptionType, OrderAction, OrderStatus,
22 OrderUpdateStatus, QpStatus, QpTier, RfqStatus, Side, TimeInForce, TradeSide, TradingModes,
23 TransactionStatus,
24};
25pub use expiry_times::{
26 expiry_times, install_expiry_times, ExpiryTime, ExpiryTimeParseError, ExpiryTimes,
27 ExpiryTimesInstallError, DEFAULT_EXPIRY_TIME,
28};
29pub use option_token_address::{
30 derive_option_token_address, derive_option_token_address_for_type, encode_short_string_bytes32,
31 OptionTokenDeployment, OptionTokenDerivationError, ShortStringEncodingError,
32};
33pub use requests::{
34 AcceptRfqRequest, ApproveAgentRequest, BulkCancelOrderRequest, BulkPlaceOrderRequest,
35 CancelOrderByClientIdRequest, CancelOrderByCloidRequest, CancelOrderRequest, PlaceOrderRequest,
36 RegisterQuoteProviderRequest, ReplaceOrderRequest, RevokeAgentRequest, RfqLegRequest,
37 SetMarginModeRequest, SubmitRfqRequest,
38};
39pub use responses::{
40 ApiResponse, ApproveAgentResponse, AuthorizedAgentsResponse, BulkCancelOrderResponse,
41 BulkOrderResult, BulkPlaceOrderResponse, CompetitionAccountPnl, CompetitionAccountResponse,
42 CompetitionConnectedUserRank, CompetitionLeaderboardResponse, CompetitionLeaderboardRow,
43 CompetitionPnlStanding, CompetitionPnlSummary, CompetitionPnlSummaryResponse, Fill,
44 HistoricalPnlInterval, HistoricalPnlPoint, HistoricalPnlResponse, HistoricalTheoInterval,
45 HistoricalTheoPoint, HistoricalTheoResponse, InstrumentResponse, InstrumentSpecResponse,
46 JsonRpcError, JsonRpcResponse, L2Message, L2Update, MarginSummary, Market, MarketResponse,
47 MarketUpdateMessage, OptionGreeks, OptionSummary, OrderBookGreeks, OrderBookResponse,
48 OrderBookStats, OrderInfo, OrderMessage, OrderUpdateMessage, OrderbookUpdate, OrdersResponse,
49 Pagination, PortfolioPosition, PortfolioResponse, QuoteProviderResponse, RevokeAgentResponse,
50 RfqAcceptResponse, RfqHistoryResponse, RfqLegResponse, RfqQuoteLegResponse, RfqQuoteResponse,
51 RfqStatusResponse, TickSizeStep, TradeMessage, HISTORICAL_PNL_INTERVAL_1D_MS,
52 HISTORICAL_PNL_INTERVAL_1H_MS, HISTORICAL_PNL_INTERVAL_5M_MS, HISTORICAL_THEO_INTERVAL_1D_MS,
53 HISTORICAL_THEO_INTERVAL_1H_MS, HISTORICAL_THEO_INTERVAL_5M_MS,
54};
55pub use routes::*;
56pub use utils::{
57 count_significant_figures, decimal_to_f64_checked, expiry_date_to_timestamp,
58 expiry_date_to_timestamp_at_time_checked, expiry_date_to_timestamp_checked, round_to_sig_figs,
59 strike_to_e8, to_contract_units, to_contract_units_decimal, to_human_readable,
60 to_human_readable_decimal, validate_price_precision, DecimalConversionError,
61 ExpiryDateConversionError, StrikeScaleError, CONTRACT_UNIT_MULTIPLIER,
62 CONTRACT_UNIT_MULTIPLIER_DECIMAL, MAX_PRICE_SIGNIFICANT_FIGURES, STRIKE_SCALE_1E8,
63 STRIKE_SCALE_1E8_DECIMAL,
64};
65pub use wallet_address::WalletAddress;
66pub use ws_protocol::*;
67
68pub const RFQ_SELF_TRADE_REJECTION_REASON: &str =
69 "Self-trade prevention: taker wallet equals quote provider wallet";
70
71#[cfg(any(test, feature = "test-utils"))]
72pub use wallet_address::test_wallet;