# sm.interactable

**Associated type:** [Interactable](../Userdata/Interactable.md)

## Constants

| Name | Type | Description |
| --- | --- | --- |
| [`actions`](#actions) | table | The filter type list. |
| [`connectionType`](#connectiontype) | table | The connection type list. |
| [`steering`](#steering) | table | The flag list. |
| [`types`](#types) | table | The type list. |

### actions {#actions}

**Value type:** table

Actions are used to specify what inputs types an [Interactable](../Userdata/Interactable.md) is able to detect.

> **Note:**
> Values are not included in the source documentation.

### connectionType {#connectiontype}

**Value type:** table

<h3>Logic</h3>

The interactable sends or reads a boolean signal to signal it's current state. ([isActive](../Userdata/Interactable.md#isactive)) to signal its output.

In: The interactable reads a boolean ([isActive](../Userdata/Interactable.md#isactive)) from its parent as input.

<h3>Power</h3>

Out: The controller uses a float ([getPower](../Userdata/Interactable.md#getpower)) to signal strength output (steering only).

In: The controller reads a float ([getPower](../Userdata/Interactable.md#getpower)) from its parent as input for strength.

```lua
{
    none        = 0,
    logic       = 1,
    power       = 2,
    bearing     = 4,
    seated      = 8,
    piston      = 16,
    gasoline    = 256,
    electricity = 512,
    water       = 1024,
    ammo        = 2048,
    chemical    = 4096,
}
```

### steering {#steering}

**Value type:** table

Flags to be used with the steering component.

> **Note:**
> Values are not included in the source documentation.

### types {#types}

**Value type:** table

```lua
{
    "electricEngine",
    "gasEngine",
    "steering",
    "seat",
    "controller",
    "button",
    "lever",
    "sensor",
    "thruster",
    "radio",
    "horn",
    "tone",
    "logic",
    "timer",
    "particlePreview",
    "spring",
    "pointLight",
    "spotLight",
    "chest",
    "scripted",
    "piston",
    "simpleInteractive",
}
```
