# Versioned.VersionContext

Extracts the context required to get the version.

## Signatures

```ts
type VersionContext<T> = T extends Versioned<infer R, any, any, any, any, any, any, any> ? R : never;
```

## Why

Extracts only the services required to sample a Versioned token, which may differ from the push
and current-read environments.

## Ownership and lifetime

VersionContext is a contract and performs no acquisition. Implementations retain the errors,
services, interruption, and Scope requirements expressed by its members.
