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

```ts
const EvoluType:  createType(
  "EvoluType",
  (value): Result<AnyType, EvoluTypeError> =>
    isInstance<AnyType & Instance<"Type">>("Type")(value)
      ? ok(value)
      : err({ type: "EvoluType", value }),
  (error) =>
    A value ${safelyStringifyUnknownValue(error.value)} is not an Evolu Type.,
) ;
```

Defined in: [packages/common/src/Type.ts:2998](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Type.ts#L2998)

A [Type](https://evolu.dev/docs/api-reference/common/Type/interfaces/Type) validating Evolu Type declarations.

This is useful when a Type itself crosses an unknown boundary or must be
asserted with [assertType](https://evolu.dev/docs/api-reference/common/Type/functions/assertType).