This commit is contained in:
2026-07-23 16:37:12 +02:00
parent 99c345f2f2
commit 0da75c1311
2159 changed files with 230833 additions and 0 deletions

View File

@@ -0,0 +1,462 @@
// file: kb_rpc/src/lib.rs
// version: 16
//! Solana HTTP JSON-RPC and standard WebSocket client layer.
#![warn(missing_docs)]
#![deny(unreachable_pub)]
#![forbid(unsafe_code)]
mod client;
mod constants;
mod endpoint_role;
mod execution_rpc;
mod get_signatures_for_address;
mod get_transaction;
mod http_client;
mod http_pool;
mod json_rpc;
mod standard_http;
mod standard_http_accounts;
mod standard_http_blocks;
mod standard_http_cluster;
mod standard_http_economics;
mod standard_http_tokens;
mod standard_http_transactions;
mod standard_methods;
mod standard_ws;
mod validation;
mod ws_client;
mod ws_pool;
mod ws_session;
/// Canonical tracing target for this crate.
pub(crate) use crate::constants::TRACING_TARGET;
/// RPC endpoint configuration.
pub use crate::client::RpcEndpoint;
/// Minimal Solana RPC client abstraction.
pub use crate::client::SolanaRpcClient;
/// Endpoint role snapshot shared by HTTP and WebSocket pools.
pub use crate::endpoint_role::EndpointRoleSnapshot;
/// Converts a JSON-RPC method name into a stable request kind.
pub use crate::endpoint_role::request_kind_from_method;
/// Contextual account information result.
pub use crate::execution_rpc::AccountInfoResult;
/// Bounded account metadata and optional complete decoded data returned by `getAccountInfo`.
pub use crate::execution_rpc::AccountInfoValue;
/// Signature returned by a faucet airdrop request.
pub use crate::execution_rpc::AirdropResult;
/// Lamport balance returned for one account.
pub use crate::execution_rpc::BalanceResult;
/// Current block height returned by the node.
pub use crate::execution_rpc::BlockHeightResult;
/// Bounded transaction confirmation policy.
pub use crate::execution_rpc::ConfirmTransactionConfig;
/// Current epoch and slot progression returned by `getEpochInfo`.
pub use crate::execution_rpc::EpochInfoResult;
/// Fee estimate returned for one serialized message.
pub use crate::execution_rpc::FeeForMessageResult;
/// Genesis hash and known public-cluster classification.
pub use crate::execution_rpc::GenesisHashResult;
/// Configuration for `getAccountInfo`.
pub use crate::execution_rpc::GetAccountInfoConfig;
/// Configuration for `getBalance`.
pub use crate::execution_rpc::GetBalanceConfig;
/// Configuration for `getBlockHeight`.
pub use crate::execution_rpc::GetBlockHeightConfig;
/// Configuration for `getEpochInfo`.
pub use crate::execution_rpc::GetEpochInfoConfig;
/// Configuration for `getFeeForMessage`.
pub use crate::execution_rpc::GetFeeForMessageConfig;
/// Configuration for `getLatestBlockhash`.
pub use crate::execution_rpc::GetLatestBlockhashConfig;
/// Configuration for `getMinimumBalanceForRentExemption`.
pub use crate::execution_rpc::GetMinimumBalanceForRentExemptionConfig;
/// Configuration for `getSignatureStatuses`.
pub use crate::execution_rpc::GetSignatureStatusesConfig;
/// Latest recent blockhash returned by the cluster.
pub use crate::execution_rpc::LatestBlockhashResult;
/// Rent-exempt minimum for one account data length.
pub use crate::execution_rpc::MinimumBalanceForRentExemptionResult;
/// Configuration for `requestAirdrop`.
pub use crate::execution_rpc::RequestAirdropConfig;
/// Commitment level accepted by execution-oriented RPC methods.
pub use crate::execution_rpc::RpcCommitmentLevel;
/// Standard context attached to Solana RPC responses.
pub use crate::execution_rpc::RpcResponseContext;
/// Configuration for `sendTransaction`.
pub use crate::execution_rpc::SendTransactionConfig;
/// Result returned after a node accepts a signed transaction.
pub use crate::execution_rpc::SendTransactionResult;
/// Current status for one submitted signature.
pub use crate::execution_rpc::SignatureStatus;
/// Positional status response for submitted signatures.
pub use crate::execution_rpc::SignatureStatusesResult;
/// Configuration for `simulateTransaction`.
pub use crate::execution_rpc::SimulateTransactionConfig;
/// Typed result returned by `simulateTransaction`.
pub use crate::execution_rpc::SimulateTransactionResult;
/// Optional accounts requested from `simulateTransaction`.
pub use crate::execution_rpc::SimulationAccountsConfig;
/// Replacement blockhash returned by simulation.
pub use crate::execution_rpc::SimulationReplacementBlockhash;
/// Adapts a raw `getAccountInfo` result.
pub use crate::execution_rpc::adapt_get_account_info_result;
/// Adapts a raw `getBalance` result.
pub use crate::execution_rpc::adapt_get_balance_result;
/// Adapts a raw `getBlockHeight` result.
pub use crate::execution_rpc::adapt_get_block_height_result;
/// Adapts a raw `getEpochInfo` result.
pub use crate::execution_rpc::adapt_get_epoch_info_result;
/// Adapts a raw `getFeeForMessage` result.
pub use crate::execution_rpc::adapt_get_fee_for_message_result;
/// Adapts a raw `getGenesisHash` result.
pub use crate::execution_rpc::adapt_get_genesis_hash_result;
/// Adapts a raw `getLatestBlockhash` result.
pub use crate::execution_rpc::adapt_get_latest_blockhash_result;
/// Adapts a raw `getMinimumBalanceForRentExemption` result.
pub use crate::execution_rpc::adapt_get_minimum_balance_for_rent_exemption_result;
/// Adapts a raw `getSignatureStatuses` result.
pub use crate::execution_rpc::adapt_get_signature_statuses_result;
/// Adapts a raw `requestAirdrop` result.
pub use crate::execution_rpc::adapt_request_airdrop_result;
/// Adapts a raw `sendTransaction` result.
pub use crate::execution_rpc::adapt_send_transaction_result;
/// Adapts a raw `simulateTransaction` result.
pub use crate::execution_rpc::adapt_simulate_transaction_result;
/// Classifies a genesis hash as an official public cluster.
pub use crate::execution_rpc::classify_genesis_hash;
/// One signature summary returned by `getSignaturesForAddress`.
pub use crate::get_signatures_for_address::AddressSignatureInfo;
/// Standard Solana `getSignaturesForAddress` request configuration.
pub use crate::get_signatures_for_address::GetSignaturesForAddressConfig;
/// Adapts a standard Solana `getSignaturesForAddress` result value.
pub use crate::get_signatures_for_address::adapt_get_signatures_for_address_result;
/// Common adapter contract for transport-specific transaction payloads.
pub use crate::get_transaction::CanonicalTransactionAdapter;
/// Source payload and canonical result from one `getTransaction` acquisition.
pub use crate::get_transaction::GetTransactionAcquisition;
/// Standard Solana `getTransaction` JSON adapter.
pub use crate::get_transaction::GetTransactionAdapter;
/// Standard Solana `getTransaction` request configuration.
pub use crate::get_transaction::GetTransactionConfig;
/// Adapts a standard Solana `getTransaction` result value.
pub use crate::get_transaction::adapt_get_transaction_result;
/// HTTP JSON-RPC client bound to one endpoint.
pub use crate::http_client::HttpClient;
/// HTTP method class used for routing diagnostics.
pub use crate::http_client::HttpMethodClass;
/// Snapshot of one HTTP pool endpoint.
pub use crate::http_client::HttpPoolClientSnapshot;
/// HTTP endpoint pool with role-based routing.
pub use crate::http_pool::HttpEndpointPool;
/// JSON-RPC 2.0 error object.
pub use crate::json_rpc::JsonRpcErrorObject;
/// JSON-RPC 2.0 error response.
pub use crate::json_rpc::JsonRpcErrorResponse;
/// JSON-RPC 2.0 notification.
pub use crate::json_rpc::JsonRpcNotification;
/// JSON-RPC 2.0 notification parameters.
pub use crate::json_rpc::JsonRpcNotificationParams;
/// JSON-RPC 2.0 request.
pub use crate::json_rpc::JsonRpcRequest;
/// JSON-RPC 2.0 response parsed from HTTP or WebSocket text.
pub use crate::json_rpc::JsonRpcResponse;
/// JSON-RPC 2.0 success response.
pub use crate::json_rpc::JsonRpcSuccessResponse;
/// Parses an incoming JSON-RPC text payload.
pub use crate::json_rpc::parse_json_rpc_text;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcAccountBalance;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcAccountEncoding;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcAccountInfoConfig;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcCommitmentConfig;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcContextConfig;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcDataSlice;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcKeyedAccount;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcMemcmp;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcMemcmpEncodedBytes;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcOptionalContext;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcProgramAccountFilter;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcProgramAccountsConfig;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcResponse;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcTokenAccountBalance;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcTokenAccountsFilter;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcTokenAmount;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcTransactionDetails;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcTransactionEncoding;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::RpcUiAccount;
/// Configurable standard HTTP request trait and shared wire contracts.
pub use crate::standard_http::StandardHttpRequest;
/// Configurable account-oriented standard HTTP requests.
pub use crate::standard_http_accounts::GetLargestAccountsRequest;
/// Configurable account-oriented standard HTTP requests.
pub use crate::standard_http_accounts::GetMultipleAccountsRequest;
/// Configurable account-oriented standard HTTP requests.
pub use crate::standard_http_accounts::GetProgramAccountsRequest;
/// Configurable account-oriented standard HTTP requests.
pub use crate::standard_http_accounts::RpcLargestAccountsConfig;
/// Configurable account-oriented standard HTTP requests.
pub use crate::standard_http_accounts::RpcLargestAccountsFilter;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetBlockCommitmentRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetBlockProductionRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetBlockRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetBlockTimeRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetBlocksRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetBlocksWithLimitRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetFirstAvailableBlockRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::GetRecentPerformanceSamplesRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::MinimumLedgerSlotRequest;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcBlockCommitment;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcBlockConfig;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcBlockProduction;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcBlockProductionConfig;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcBlockProductionConfigRange;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcBlockProductionRange;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcConfirmedBlock;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcPerformanceSample;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcReward;
/// Configurable block and ledger standard HTTP requests.
pub use crate::standard_http_blocks::RpcRewardType;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetClusterNodesRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetEpochScheduleRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetHealthRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetHighestSnapshotSlotRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetIdentityRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetLeaderScheduleRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetMaxRetransmitSlotRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetMaxShredInsertSlotRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetSlotLeaderRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetSlotLeadersRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetSlotRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetVersionRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::GetVoteAccountsRequest;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcContactInfo;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcEpochSchedule;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcGetVoteAccountsConfig;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcIdentity;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcLeaderSchedule;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcLeaderScheduleConfig;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcSnapshotSlotInfo;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcVersionInfo;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcVoteAccountInfo;
/// Configurable cluster-oriented standard HTTP requests.
pub use crate::standard_http_cluster::RpcVoteAccountStatus;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::GetInflationGovernorRequest;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::GetInflationRateRequest;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::GetInflationRewardRequest;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::GetStakeMinimumDelegationRequest;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::GetSupplyRequest;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcEpochConfig;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcInflationGovernor;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcInflationGovernorConfig;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcInflationRate;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcInflationReward;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcSupply;
/// Configurable economics-oriented standard HTTP requests.
pub use crate::standard_http_economics::RpcSupplyConfig;
/// Configurable token-oriented standard HTTP requests.
pub use crate::standard_http_tokens::GetTokenAccountBalanceRequest;
/// Configurable token-oriented standard HTTP requests.
pub use crate::standard_http_tokens::GetTokenAccountsByDelegateRequest;
/// Configurable token-oriented standard HTTP requests.
pub use crate::standard_http_tokens::GetTokenAccountsByOwnerRequest;
/// Configurable token-oriented standard HTTP requests.
pub use crate::standard_http_tokens::GetTokenLargestAccountsRequest;
/// Configurable token-oriented standard HTTP requests.
pub use crate::standard_http_tokens::GetTokenSupplyRequest;
/// Configurable transaction-oriented standard HTTP requests.
pub use crate::standard_http_transactions::GetRecentPrioritizationFeesRequest;
/// Configurable transaction-oriented standard HTTP requests.
pub use crate::standard_http_transactions::GetTransactionCountRequest;
/// Configurable transaction-oriented standard HTTP requests.
pub use crate::standard_http_transactions::IsBlockhashValidRequest;
/// Configurable transaction-oriented standard HTTP requests.
pub use crate::standard_http_transactions::RpcPrioritizationFee;
/// Every standard Solana HTTP JSON-RPC method.
pub use crate::standard_methods::STANDARD_HTTP_METHODS;
/// Every standard Solana WebSocket subscription pair.
pub use crate::standard_methods::STANDARD_WS_SUBSCRIPTIONS;
/// Official category used to group standard Solana HTTP methods.
pub use crate::standard_methods::StandardHttpCategory;
/// One canonical standard Solana HTTP method specification.
pub use crate::standard_methods::StandardHttpMethodSpec;
/// Documentation-level contract exposed for a standard RPC method.
pub use crate::standard_methods::StandardRpcContract;
/// Stability of one standard Solana WebSocket subscription surface.
pub use crate::standard_methods::StandardWsStability;
/// One canonical standard Solana WebSocket subscribe/unsubscribe pair.
pub use crate::standard_methods::StandardWsSubscriptionSpec;
/// Finds one exact standard HTTP method specification.
pub use crate::standard_methods::standard_http_method;
/// Finds one standard WebSocket subscription from its subscribe or unsubscribe method.
pub use crate::standard_methods::standard_ws_subscription;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::AccountSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::BlockSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::LogsSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::ProgramSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::RootSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::SignatureSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::SlotSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::SlotsUpdatesSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::StandardWsCapabilities;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::StandardWsNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::StandardWsRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::VoteSubscribeRequest;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsAccountNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsAccountSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsBlockFilter;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsBlockNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsBlockSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsBlockUpdate;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsLogsFilter;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsLogsNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsLogsSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsLogsValue;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsProgramNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsProgramSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsRootNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSignatureNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSignatureSubscribeConfig;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSignatureValue;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSlotInfo;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSlotNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSlotTransactionStats;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSlotUpdate;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsSlotsUpdatesNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsVoteNotification;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::WsVoteValue;
/// Typed contracts for all standard Solana WebSocket subscriptions.
pub use crate::standard_ws::adapt_standard_ws_notification;
/// Validates one base58 Solana blockhash or genesis hash.
pub use crate::validation::validate_solana_hash_text;
/// Validates one base58 Solana public key.
pub use crate::validation::validate_solana_pubkey_text;
/// Validates one base58 Solana transaction signature.
pub use crate::validation::validate_transaction_signature_text;
/// Standard Solana WebSocket client bound to one endpoint.
pub use crate::ws_client::WsClient;
/// Snapshot of one WebSocket pool endpoint.
pub use crate::ws_client::WsPoolClientSnapshot;
/// WebSocket endpoint pool with role-based routing.
pub use crate::ws_pool::WsEndpointPool;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsReconnectPolicy;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsSession;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsSessionEvent;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsSessionSnapshot;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsSessionState;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsSubscriptionAck;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsSubscriptionSnapshot;
/// Persistent WebSocket session contracts.
pub use crate::ws_session::WsUnsubscribeAck;