# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.85"
name = "af-sui-types"
version = "0.8.6"
authors = ["Aftermath Finance <admin@aftermath.finance>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Aftermath's extensions to `sui-sdk-types`"
readme = "README.md"
categories = ["cryptography::cryptocurrencies"]
license = "Apache-2.0"
repository = "https://github.com/AftermathFinance/aftermath-sdk-rust"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--generate-link-to-definition",
    "-Zunstable-options",
]

[features]
fuzzing = ["dep:proptest"]
hash = ["sui-sdk-types/hash"]
u256 = [
    "dep:primitive-types",
    "dep:rand",
    "dep:uint",
]

[lib]
name = "af_sui_types"
path = "src/lib.rs"

[[test]]
name = "bcs"
path = "tests/bcs.rs"
required-features = ["hash"]

[[test]]
name = "bcs_dof_object_id"
path = "tests/bcs_dof_object_id.rs"

[[test]]
name = "bcs_end_of_epoch_tx"
path = "tests/bcs_end_of_epoch_tx.rs"

[[test]]
name = "bcs_object_de"
path = "tests/bcs_object_de.rs"

[[test]]
name = "digest"
path = "tests/digest.rs"

[[test]]
name = "digest_string"
path = "tests/digest_string.rs"

[dependencies.base64]
version = "0.22"

[dependencies.bcs]
version = "0.1"

[dependencies.bs58]
version = "0.5"

[dependencies.derive_more]
version = "2"
features = ["from_str"]

[dependencies.enum_dispatch]
version = "0.3"

[dependencies.hex]
version = "0.4"

[dependencies.primitive-types]
version = "0.12"
features = ["fp-conversion"]
optional = true

[dependencies.proptest]
version = "1"
optional = true

[dependencies.rand]
version = "0.9"
optional = true

[dependencies.ref-cast]
version = "1"

[dependencies.serde]
version = "1"

[dependencies.serde_with]
version = "3"
features = ["base64"]

[dependencies.sui-sdk-types]
version = "0.0.3"
features = ["serde"]

[dependencies.thiserror]
version = "2"

[dependencies.uint]
version = "0.9"
optional = true

[dev-dependencies.insta]
version = "1"

[dev-dependencies.proptest]
version = "1"

[dev-dependencies.serde_json]
version = "1"

[dev-dependencies.sui-sdk-types]
version = "0.0.3"
features = ["proptest"]

[dev-dependencies.test-strategy]
version = "0.4"

[lints.clippy]
todo = "warn"
unwrap_used = "warn"

[lints.clippy.nursery]
level = "warn"
priority = 1

[lints.clippy.redundant_pub_crate]
level = "allow"
priority = 2
