# Interface: HarnessDefinition

Defined in: [packages/sdk/src/core/types.ts:279](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L279)

## Properties

### blocks

> **blocks**: `object`

Defined in: [packages/sdk/src/core/types.ts:284](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L284)

#### allowed

> **allowed**: [`BlockConstraint`](https://plandalf.com/docs/packages/sdk/interfaces/BlockConstraint)[]

#### forbidden

> **forbidden**: [`BlockConstraint`](https://plandalf.com/docs/packages/sdk/interfaces/BlockConstraint)[]

#### required

> **required**: [`BlockConstraint`](https://plandalf.com/docs/packages/sdk/interfaces/BlockConstraint)[]

***

### hooks

> **hooks**: [`HarnessHooks`](https://plandalf.com/docs/packages/sdk/interfaces/HarnessHooks)

Defined in: [packages/sdk/src/core/types.ts:289](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L289)

***

### id

> **id**: `string`

Defined in: [packages/sdk/src/core/types.ts:280](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L280)

***

### name

> **name**: `string`

Defined in: [packages/sdk/src/core/types.ts:281](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L281)

***

### steps

> **steps**: [`StepDefinition`](https://plandalf.com/docs/packages/sdk/interfaces/StepDefinition)[]

Defined in: [packages/sdk/src/core/types.ts:283](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L283)

***

### type

> **type**: `string`

Defined in: [packages/sdk/src/core/types.ts:282](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L282)

***

### validate

> **validate**: (`flow`, `sdk`) => [`ValidationResult`](https://plandalf.com/docs/packages/sdk/interfaces/ValidationResult)

Defined in: [packages/sdk/src/core/types.ts:290](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L290)

#### Parameters

##### flow

[`Flow`](https://plandalf.com/docs/packages/sdk/interfaces/Flow)

##### sdk

[`PlandalfSDK`](https://plandalf.com/docs/packages/sdk/interfaces/PlandalfSDK)

#### Returns

[`ValidationResult`](https://plandalf.com/docs/packages/sdk/interfaces/ValidationResult)

Source: https://plandalf.com/docs/packages/sdk/interfaces/HarnessDefinition
