[package]
name = "chainstream-sdk"
version = "2.0.29"
edition = "2021"
rust-version = "1.86"
authors = ["ChainStream"]
description = "SDK for interacting with the ChainStream API"
documentation = "https://docs.rs/chainstream-sdk"
repository = "https://github.com/chainstream-io/chainstream-sdk"
homepage = "https://docs.chainstream.io/"
license = "MIT"
readme = "README.md"
keywords = ["chainstream", "api", "client", "blockchain", "dex"]
categories = ["api-bindings"]

[dependencies]
async-trait = "^0.1"
bon = { version = "3.7.1" }
chrono = { version = "0.4", features = ["serde"] }
progenitor-middleware-client = { version = "^0.12.0" }
reqwest = { version = "0.12.4", features = ["json", "stream"] }
base64 = "0.22"
rand = "0.9"
regress = "0.10"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
url = "^2.5"
uuid = { version = "^1.8", features = ["serde", "v4"] }
jsonwebtoken = "9.3"
sha2 = "0.10"
thiserror = "1.0"
urlencoding = "2.1"
http = "1.0"
hex = "0.4"
anyhow = "1"
reqwest-middleware = { version = "0.4.2", default-features = false, features = ["json"] }
# WebSocket dependencies
tokio = { version = "1.0", features = ["full", "sync", "macros", "rt-multi-thread"] }
tokio-tungstenite = { version = "0.26", features = ["native-tls"] }
futures-util = "0.3"
log = "0.4"
parking_lot = "0.12"
once_cell = "1.19"
regex = "1.10"

[dev-dependencies]
tokio = { version = "1.0", features = ["full"] }
bs58 = "0.5"
env_logger = "0.11"
reqwest-middleware = { version = "0.4.2" }
async-trait = "^0.1"
http = "1.0"
reqwest = { version = "0.12.4", features = ["json"] }

[build-dependencies]
prettyplease = "0.2.36"
progenitor-middleware = { version = "^0.12.3" }
serde_json = "1.0"
serde_yaml = "0.9.33"
syn = "2.0"
