[**@sebasoft/neuron-js**](../../README.md)

***

Defined in: [plugins/parameters/ComparatorParameter.ts:7](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/plugins/parameters/ComparatorParameter.ts#L7)

Represents a configurable input value for Actions and Conditions.
Parameters allow for reusable logic templates by decoupling the implementation from the values.

## Extends

- [`AbstractParameter`](AbstractParameter.md)\<[`Comparator`](../type-aliases/Comparator.md)\>

## Constructors

### Constructor

> **new ComparatorParameter**(`id`, `type`, `name`, `value`, `options`, `defaultValue?`): `ComparatorParameter`

Defined in: [abstracts/AbstractParameter.ts:10](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractParameter.ts#L10)

#### Parameters

##### id

`string`

##### type

`string`

##### name

`string`

##### value

[`Comparator`](../type-aliases/Comparator.md) \| `null`

##### options

`any`

##### defaultValue?

[`Comparator`](../type-aliases/Comparator.md)

#### Returns

`ComparatorParameter`

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`constructor`](AbstractParameter.md#constructor)

## Properties

### defaultValue?

> `readonly` `optional` **defaultValue?**: [`Comparator`](../type-aliases/Comparator.md)

Defined in: [abstracts/AbstractParameter.ts:16](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractParameter.ts#L16)

An optional fallback value if the primary value is missing or null.

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`defaultValue`](AbstractParameter.md#defaultvalue)

***

### id

> `readonly` **id**: `string`

Defined in: [abstracts/AbstractElement.ts:7](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractElement.ts#L7)

Unique identifier for the element instance.

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`id`](AbstractParameter.md#id)

***

### name

> `readonly` **name**: `string`

Defined in: [abstracts/AbstractParameter.ts:13](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractParameter.ts#L13)

The semantic name of the parameter (e.g., "recipient", "threshold").

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`name`](AbstractParameter.md#name)

***

### options

> `readonly` **options**: `any`

Defined in: [abstracts/AbstractElement.ts:9](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractElement.ts#L9)

Configuration options specific to this element instance.

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`options`](AbstractParameter.md#options)

***

### type

> `readonly` **type**: `string`

Defined in: [abstracts/AbstractElement.ts:8](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractElement.ts#L8)

The registered type name of the element.
This type is used by the Registry (Neuron) to look up the correct implementation.

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`type`](AbstractParameter.md#type)

***

### value

> **value**: [`Comparator`](../type-aliases/Comparator.md) \| `null`

Defined in: [abstracts/AbstractParameter.ts:14](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractParameter.ts#L14)

The actual value assigned to the parameter.

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`value`](AbstractParameter.md#value)

***

### TYPE

> `readonly` `static` **TYPE**: `"comparator"` = `"comparator"`

Defined in: [plugins/parameters/ComparatorParameter.ts:8](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/plugins/parameters/ComparatorParameter.ts#L8)

## Methods

### execute()

> **execute**(`context`): [`ExecutionResult`](../../types/ExecutionResult/classes/ExecutionResult.md)\<[`Comparator`](../type-aliases/Comparator.md) \| `null`\>

Defined in: [abstracts/AbstractParameter.ts:23](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractParameter.ts#L23)

#### Parameters

##### context

[`ExecutionContext`](../../types/ExecutionContext/interfaces/ExecutionContext.md)

#### Returns

[`ExecutionResult`](../../types/ExecutionResult/classes/ExecutionResult.md)\<[`Comparator`](../type-aliases/Comparator.md) \| `null`\>

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`execute`](AbstractParameter.md#execute)

***

### getValue()

> **getValue**(`_context`): [`Comparator`](../type-aliases/Comparator.md) \| `null`

Defined in: [plugins/parameters/ComparatorParameter.ts:10](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/plugins/parameters/ComparatorParameter.ts#L10)

#### Parameters

##### \_context

[`ExecutionContext`](../../types/ExecutionContext/interfaces/ExecutionContext.md)

#### Returns

[`Comparator`](../type-aliases/Comparator.md) \| `null`

#### Overrides

[`AbstractParameter`](AbstractParameter.md).[`getValue`](AbstractParameter.md#getvalue)

***

### toJSON()

> **toJSON**(): `object`

Defined in: [abstracts/AbstractParameter.ts:34](https://github.com/SebaSOFT/neuron-js/blob/aff482a5bc89c6f9dff62f832acdd1bd10d3a175/src/abstracts/AbstractParameter.ts#L34)

#### Returns

`object`

#### Inherited from

[`AbstractParameter`](AbstractParameter.md).[`toJSON`](AbstractParameter.md#tojson)
