# Interface: CapabilityGateConfig

Defined in: [packages/core/src/validation/capability-gate.ts:5](https://github.com/leifriksheim/minca/blob/main/core/src/validation/capability-gate.ts#L5)

## Properties

| Property | Modifier | Type | Description | Defined in |
| ------ | ------ | ------ | ------ | ------ |
| <a id="property-istrustedroot"></a> `isTrustedRoot?` | `readonly` | (`rootDid`, `version`) => `boolean` \| `Promise`\<`boolean`\> | Whether a root identity may write this version at all; defaults to any root | [packages/core/src/validation/capability-gate.ts:11](https://github.com/leifriksheim/minca/blob/main/core/src/validation/capability-gate.ts#L11) |
| <a id="property-provider"></a> `provider` | `readonly` | [`CryptoProvider`](https://minca.dev/api/core/interfaces/CryptoProvider.md) | Crypto provider used to verify the note | [packages/core/src/validation/capability-gate.ts:7](https://github.com/leifriksheim/minca/blob/main/core/src/validation/capability-gate.ts#L7) |
| <a id="property-required"></a> `required` | `readonly` | (`version`) => [`Requirement`](https://minca.dev/api/core/interfaces/Requirement.md) | What an author must be granted to write this version | [packages/core/src/validation/capability-gate.ts:9](https://github.com/leifriksheim/minca/blob/main/core/src/validation/capability-gate.ts#L9) |
