# DependencyProvided

Extracts the services supplied by a matcher dependency.

## Signatures

```ts
export type DependencyProvided<D> = D extends Layer.Layer<infer Provided, any, any> ? Provided : D extends Context.Context<infer Provided> ? Provided : never;
```

## Why

Providing a dependency removes those services from the returned Matcher's requirements.

## Ownership and lifetime

Computed only by TypeScript; the actual services are owned by the Layer or borrowed Context represented by `D`.
