# ISpecification<T>

`interface` `public`

```csharp
namespace Core.Data.Repositories;

public interface ISpecification<in T>
```

Encapsulates query criteria for `T`.

* **T**: The queried entity type.

## Methods

{% member id="issatisfiedby" %}
```csharp
bool IsSatisfiedBy(T entity)
```

Determines whether the entity satisfies the specification.

* **entity**: The entity to evaluate.

**Returns**: `true` when the entity matches; otherwise `false`.

{% /member %}
