---
name: channel
kind: syntax
since: 0.1
stability: stable
---
Typed channel declaration (Fase 13 mobile channels).
```axon
channel Name {
message: PayloadType
qos: at_least_once
lifetime: affine
persistence: ephemeral
shield: OptionalShield
}
```
Every channel pins four mandatory fields plus an optional
`shield` reference for capability extrusion. `qos` ∈
`{at_most_once, at_least_once, exactly_once}`. `lifetime` ∈
`{linear, affine, persistent}`. `persistence` ∈
`{ephemeral, persistent_axonstore}`.
Once declared, the channel is referenced by name from handler
bodies via `emit`, `listen`, `publish`, and `discover`. Type
mismatches between `message:` and `emit`/`listen` are
compile-time errors.