#![cfg_attr(docsrs, feature(doc_cfg))]
pub mod core;
pub mod types;
#[cfg(feature = "auth")]
#[cfg_attr(docsrs, doc(cfg(feature = "auth")))]
pub mod auth;
#[cfg(feature = "client")]
#[cfg_attr(docsrs, doc(cfg(feature = "client")))]
pub mod client;
#[cfg(feature = "order")]
#[cfg_attr(docsrs, doc(cfg(feature = "order")))]
pub mod order;
#[cfg(feature = "stream")]
#[cfg_attr(docsrs, doc(cfg(feature = "stream")))]
pub mod stream;
#[cfg(feature = "safe")]
#[cfg_attr(docsrs, doc(cfg(feature = "safe")))]
pub mod safe;
pub mod prelude;
pub use core::{
AuthErrorKind, MarketDataErrorKind, OrderErrorKind, StreamErrorKind, CLOB_API_BASE,
CLOB_WSS_BASE, DATA_API_BASE, GAMMA_API_BASE, PROFILES_API_BASE, RELAYER_API_BASE,
RTDS_WSS_BASE,
};
pub use core::{Endpoints, Error, PolymarketError, Result};
pub use types::{
ApiCredentials, BiggestWinner, BiggestWinnersQuery, BookLevel, ClosedPosition, ConnectionStats,
DataApiActivity, DataApiPosition, DataApiTrade, DataApiTrader, Event, EventMarket,
LeaderboardEntry, ListParams, Market, MarketOrderArgs, NewOrder, NewOrderData, OrderOptions,
OrderType, PaginationParams, SearchEvent, SearchProfile, SearchRequest, SearchResponse,
SearchTag, Side, SignedOrderRequest, Tag, Token, TraderProfile,
};
#[cfg(feature = "auth")]
pub use types::ExtraOrderArgs;
#[cfg(feature = "auth")]
pub use auth::{
build_clob_auth_typed_data, build_hmac_signature, build_hmac_signature_from_string,
create_l1_headers, create_l2_headers, create_l2_headers_with_address,
create_l2_headers_with_body_string, get_current_unix_time_secs, sign_clob_auth_message,
sign_order_message, BuilderApiKeyCreds, BuilderSigner, ClobAuth, Headers, Order,
};
#[cfg(feature = "client")]
pub use client::{
ApiKeyResponse, CancelResponse, ClobClient, ClobConfig, DataClient, DataConfig,
DeriveApiKeyResponse, GammaClient, GammaConfig, OpenOrder, OrderResponse, PaginatedResponse,
ProfilesClient, ProfilesConfig,
};
#[cfg(feature = "order")]
pub use order::{get_contract_config, ContractConfig, OrderArgs, OrderBuilder, SigType};
#[cfg(feature = "stream")]
pub use stream::{
LastTradeMessage, MarketBook, MarketStream, MockStream, PriceChangeEntry, PriceChangeMessage,
RtdsClient, RtdsConfig, RtdsEvent, RtdsMessage, RtdsSubscription, RtdsSubscriptionMessage,
StreamManager, StreamMessage, StreamStats, Subscription, TickSizeChangeMessage, TradePayload,
WebSocketStream, WssAuth, WssMarketClient, WssMarketEvent, WssStats, WssSubscription,
WssUserClient, WssUserEvent, WssUserOrderMessage, WssUserTradeMessage,
};
#[cfg(feature = "safe")]
pub use safe::{
build_ctf_approve_typed_data, build_safe_create_typed_data, build_safe_tx_request,
build_token_approve_typed_data, build_usdc_transfer_typed_data, compute_safe_tx_digest,
derive_safe_address, encode_erc1155_set_approval_for_all, encode_erc20_allowance_query,
encode_erc20_approve, encode_erc20_transfer, pack_signature, pack_signature_for_safe_tx,
ApprovalStatus, DeploySafeResponse, NonceType, RelayerClient, RelayerConfig,
SafeCreateTypedData, SafeTxDomain, SafeTxMessage, SafeTxTypedData, SafeTxTypes,
SignatureParams, TransactionReceipt, TransactionRequest, TransactionState, TransactionType,
CONDITIONAL_TOKENS_ADDRESS, CTF_EXCHANGE_ADDRESS, EXCHANGE_ADDRESS,
NATIVE_USDC_CONTRACT_ADDRESS, NEG_RISK_CTF_EXCHANGE_ADDRESS, SAFE_FACTORY, SAFE_INIT_CODE_HASH,
USDC_CONTRACT_ADDRESS,
};
#[cfg(feature = "client")]
pub mod clob {
pub use crate::client::{ClobClient, ClobConfig};
}
#[cfg(feature = "client")]
pub mod gamma {
pub use crate::client::{GammaClient, GammaConfig};
}
#[cfg(feature = "client")]
pub mod data {
pub use crate::client::{DataClient, DataConfig};
}
#[cfg(feature = "order")]
pub mod orders {
pub use crate::order::{get_contract_config, ContractConfig, OrderArgs, OrderBuilder, SigType};
}
#[cfg(feature = "stream")]
pub mod wss {
pub use crate::stream::{
LastTradeMessage, MarketBook, OrderSummary, PriceChangeEntry, PriceChangeMessage,
TickSizeChangeMessage, WssMarketClient, WssMarketEvent, WssStats, WssUserClient,
WssUserEvent, WssUserOrderMessage, WssUserTradeMessage,
};
}
#[cfg(feature = "safe")]
pub mod relayer {
pub use crate::safe::{
build_ctf_approve_typed_data, build_safe_create_typed_data, build_safe_tx_request,
build_token_approve_typed_data, build_usdc_transfer_typed_data, compute_safe_tx_digest,
derive_safe_address, encode_erc1155_set_approval_for_all, encode_erc20_allowance_query,
encode_erc20_approve, encode_erc20_transfer, pack_signature, pack_signature_for_safe_tx,
ApprovalStatus, BuilderApiCredentials, DeploySafeResponse, NonceType, RelayerClient,
RelayerConfig, SafeCreateTypedData, SafeTxDomain, SafeTxMessage, SafeTxTypedData,
SafeTxTypes, SignatureParams, TransactionReceipt, TransactionRequest, TransactionState,
TransactionType, CONDITIONAL_TOKENS_ADDRESS, CTF_EXCHANGE_ADDRESS, EXCHANGE_ADDRESS,
NATIVE_USDC_CONTRACT_ADDRESS, NEG_RISK_CTF_EXCHANGE_ADDRESS, SAFE_FACTORY,
SAFE_INIT_CODE_HASH, USDC_CONTRACT_ADDRESS,
};
}
pub mod errors {
pub use crate::core::{
AuthErrorKind, Error, MarketDataErrorKind, OrderErrorKind, PolymarketError, Result,
StreamErrorKind,
};
}