# `BoundedAuthorityProtocol.V1.ExpectedKeyTransition`
[🔗](https://github.com/baselabs/bounded_authority_protocol/blob/v1.0.0/lib/bounded_authority_protocol/v1/expected_key_transition.ex#L1)

Exact expected context for one authenticated historical-key transition.

## Fields

* `transition_id` - the expected transition identity.
* `chain_id` - the chain identity: non-empty StringOrURI of at most `identifier_bytes` (512) UTF-8
  bytes.
* `effective_at` - the expected effective time, integer Unix time in seconds.
* `current_key_id` - the expected signing key identifier.
* `current_key_fingerprint` - the expected raw 32-byte RFC 7638 fingerprint of the signing key.
* `next_key_id` - the expected next key identifier.
* `next_key_fingerprint` - the expected raw 32-byte RFC 7638 fingerprint of the next key.
* `bounds` - a `BoundedAuthorityProtocol.V1.Bounds` struct or a map of tightening overrides; `%{}`
  means the profile maxima (see `BoundedAuthorityProtocol.V1.Bounds.coerce/1`).

# `t`

```elixir
@type t() :: %BoundedAuthorityProtocol.V1.ExpectedKeyTransition{
  bounds: BoundedAuthorityProtocol.V1.Bounds.t() | map(),
  chain_id: binary(),
  current_key_fingerprint: binary(),
  current_key_id: binary(),
  effective_at: integer(),
  next_key_fingerprint: binary(),
  next_key_id: binary(),
  transition_id: binary()
}
```

Expected context for one key transition.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
