[package]
name        = "layer"
description = "Ergonomic Telegram MTProto library: auto-generated TL types, raw API access, session management"
version.workspace    = true
edition.workspace    = true
license.workspace    = true
authors.workspace    = true
repository.workspace = true
homepage.workspace   = true
documentation = "https://docs.rs/layer"
readme               = "../README.md"
keywords             = ["telegram", "mtproto", "api", "client", "bot"]
categories           = ["api-bindings", "network-programming"]

[dependencies]
layer-tl-types  = { workspace = true }
layer-mtproto   = { workspace = true }
layer-crypto    = { workspace = true }
layer-tl-parser = { workspace = true, optional = true }
layer-tl-gen    = { workspace = true, optional = true }

[features]
default = []

## Re-export the TL parser for custom tooling.
parser  = ["dep:layer-tl-parser"]
## Re-export the code generator for custom tooling.
codegen = ["dep:layer-tl-gen"]

[package.metadata.docs.rs]
features = ["parser", "codegen"]
rustdoc-args = ["--cfg", "docsrs"]
