# 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 = "2021"
name = "cctp-rs"
version = "3.3.0"
authors = ["Joseph Livesey <joseph@semiotic.ai>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Type-safe Rust SDK for Circle's Cross-Chain Transfer Protocol (CCTP) v1 and v2 — bridge USDC across 26+ EVM chains with fast transfer support."
homepage = "https://crates.io/crates/cctp-rs"
readme = "README.md"
keywords = [
    "cctp",
    "usdc",
    "circle",
    "bridge",
    "alloy",
]
categories = [
    "finance",
    "api-bindings",
]
license = "Apache-2.0"
repository = "https://github.com/semiotic-ai/cctp-rs"

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

[[example]]
name = "attestation_monitoring"
path = "examples/attestation_monitoring.rs"

[[example]]
name = "basic_bridge"
path = "examples/basic_bridge.rs"

[[example]]
name = "complete_bridge_trace"
path = "examples/complete_bridge_trace.rs"

[[example]]
name = "debug_message"
path = "examples/debug_message.rs"

[[example]]
name = "multi_chain"
path = "examples/multi_chain.rs"

[[example]]
name = "recover_transfer"
path = "examples/recover_transfer.rs"

[[example]]
name = "testnet_validation"
path = "examples/testnet_validation.rs"

[[example]]
name = "trace_bridge_flow"
path = "examples/trace_bridge_flow.rs"

[[example]]
name = "v2_fast_transfer"
path = "examples/v2_fast_transfer.rs"

[[example]]
name = "v2_integration_validation"
path = "examples/v2_integration_validation.rs"

[[example]]
name = "v2_standard_transfer"
path = "examples/v2_standard_transfer.rs"

[dependencies.alloy-chains]
version = "0.2"

[dependencies.alloy-contract]
version = "2.0"
default-features = false

[dependencies.alloy-json-rpc]
version = "2.0"
default-features = false

[dependencies.alloy-network]
version = "2.0"
default-features = false

[dependencies.alloy-primitives]
version = "1.5"
features = [
    "serde",
    "std",
    "rlp",
]
default-features = false

[dependencies.alloy-provider]
version = "2.0"
features = [
    "anvil-node",
    "reqwest",
]
default-features = false

[dependencies.alloy-rpc-types]
version = "2.0"

[dependencies.alloy-sol-types]
version = "1.5"
features = ["json"]

[dependencies.alloy-transport]
version = "2.0"
default-features = false

[dependencies.async-trait]
version = "0.1"

[dependencies.bon]
version = "3.9"

[dependencies.reqwest]
version = "0.13"
features = ["json"]

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[dependencies.thiserror]
version = "2.0"

[dependencies.tokio]
version = "1"
features = ["time"]
default-features = false

[dependencies.tracing]
version = "0.1"

[dependencies.url]
version = "2.5"

[dev-dependencies.alloy-signer-local]
version = "2.0"

[dev-dependencies.dotenvy]
version = "0.15"

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

[dev-dependencies.rstest]
version = "0.26"

[dev-dependencies.tokio]
version = "1.52"
features = [
    "test-util",
    "macros",
    "rt-multi-thread",
]

[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
