[package]
name = "krusty-kms-sdk"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
authors.workspace = true
license.workspace = true
description = "Tongo confidential account and proof-operation flows for krusty-kms"
repository.workspace = true
homepage.workspace = true
keywords.workspace = true
categories.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
targets = ["x86_64-unknown-linux-gnu"]

[features]
default = ["parallel"]
parallel = ["rayon", "krusty-kms-crypto/parallel", "krusty-kms/parallel"]

[dependencies]
krusty-kms-common = { version = "0.4.0", path = "../common" }
krusty-kms-crypto = { version = "0.4.0", path = "../crypto", default-features = false }
krusty-kms = { version = "0.4.0", path = "../kms", default-features = false }
starknet-types-core.workspace = true
serde.workspace = true
serde_json.workspace = true
hex.workspace = true
thiserror.workspace = true
rand.workspace = true
rayon = { workspace = true, optional = true }
chacha20poly1305.workspace = true
sha2.workspace = true

[dev-dependencies]
serde_json.workspace = true
criterion.workspace = true

[[bench]]
name = "operations"
harness = false

[[bench]]
name = "transfer_throughput"
harness = false

[lints]
workspace = true
