[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Types](https://evolu.dev/docs/api-reference/common/Types) › Predicate

```ts
type Predicate<T> = (value: T) => boolean;
```

Defined in: [packages/common/src/Types.ts:90](https://github.com/evoluhq/evolu/blob/dd96d79f1dbe9a49fa12ce8e0aa7d3d0177795ca/packages/common/src/Types.ts#L90)

Checks a condition on a value and returns a boolean.

A predicate starts with an 'is' prefix, e.g., `isEven`.

### Filtering values

```ts

const isEven: Predicate<number> = (n) => n % 2 === 0;

assertEqual([1, 2, 3, 4].filter(isEven), [2, 4]);
```