# IOptionBuilder<TData>

> Interface used to build and configure node options in a fluent manner.

## Definition

* **Type:** Interface
* **Namespace:** [Unity.GraphToolkit.Editor](/engine/6000.5/script-reference/unity/graphtoolkit/editor.md)
* **Assembly:** UnityEditor

```csharp
public interface IOptionBuilder<in TData>
```

## Remarks

Provided by the [Node.IOptionDefinitionContext](/engine/6000.5/script-reference/unity/graphtoolkit/editor/node/ioptiondefinitioncontext.md) in a node's [Node.OnDefineOptions](/engine/6000.5/script-reference/unity/graphtoolkit/editor/node/ondefineoptions.md) method.

## Methods

| Method                                                                                                                  | Description                                                                                                                                                                      |
| ----------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [AsTextArea](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/astextarea.md)                   | Configures the option to use the [TextAreaAttribute](/engine/6000.5/script-reference/unityengine/textareaattribute.md).                                                          |
| [Build](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/build.md)                             | Builds and returns the final [INodeOption](/engine/6000.5/script-reference/unity/graphtoolkit/editor/inodeoption.md) instance based on the current configuration of the builder. |
| [Delayed](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/delayed.md)                         | Configures the option to use the [DelayedAttribute](/engine/6000.5/script-reference/unityengine/delayedattribute.md).                                                            |
| [ShowInInspectorOnly](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/showininspectoronly.md) | Configures the option to be shown only in the inspector, not in the node header.                                                                                                 |
| [WithDefaultValue](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/withdefaultvalue.md)       | Configures the default value for the option being built.                                                                                                                         |
| [WithDisplayName](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/withdisplayname.md)         | Configures the display name of the option being built.                                                                                                                           |
| [WithTooltip](/engine/6000.5/script-reference/unity/graphtoolkit/editor/ioptionbuilder1/withtooltip.md)                 | Configures the tooltip text for the option being built.                                                                                                                          |
