> ## Documentation Index
> Fetch the complete documentation index at: https://docs.heylua.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Exported types and classes

> Index of every type, enum, interface, and instance class exported from lua-cli, with the page that documents it

Everything in this index is importable from `'lua-cli'`; types and interfaces with `import type`. The primitive classes themselves (`LuaAgent`, `LuaSkill`, `LuaJob`, `LuaWebhook`, `PreProcessor`, `PostProcessor`, `LuaMCPServer`, and the `define*` functions) are listed on the [SDK overview](/reference/sdk/overview). Result shapes that are not exported, such as `WorkflowRun`, `Basket`, and `JobExecution`, are still typed on the method that returns them: name them with `Awaited<ReturnType<typeof Workflows.get>>` or `Parameters<typeof Baskets.addItem>[1]`.

*Verified against lua-cli 3.33.0.*

```ts theme={null}
import { BasketStatus, JobInstance } from 'lua-cli';
import type { LuaTool, LuaQuery, ChatHistoryMessage, WorkflowsApi } from 'lua-cli';
```

## Primitives

| Area           | Exports                                                                                                                                              | Reference                                          |
| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
| Tools          | `LuaTool`, `ToolFlag` (enum)                                                                                                                         | [`LuaTool`](/reference/sdk/luatool)                |
| Agent          | `LuaAgentConfig`, `LuaAgentModel`, `AgentModelSettings`, `PersonaText`                                                                               | [`LuaAgent`](/reference/sdk/luaagent)              |
| Webhooks       | `LuaWebhookConfig`                                                                                                                                   | [`LuaWebhook`](/reference/sdk/luawebhook)          |
| Triggers       | `LuaTriggerConfig`, `TriggerContext`                                                                                                                 | [`LuaTrigger`](/reference/sdk/luatrigger)          |
| Shipped jobs   | `LuaJobConfig`, `JobSchedule`                                                                                                                        | [`LuaJob`](/reference/sdk/luajob)                  |
| Preprocessors  | `PreProcessorConfig`, `PreProcessorAction`, `PreProcessorResult`, `PreProcessorBlockResponse`, `PreProcessorProceedResponse`, `PreProcessorOverride` | [`PreProcessor`](/reference/sdk/preprocessor)      |
| Postprocessors | `PostProcessorConfig`, `PostProcessorResponse`, `PostProcessorOverride`                                                                              | [`PostProcessor`](/reference/sdk/postprocessor)    |
| MCP servers    | `LuaMCPServerConfig`, `MCPServerBaseConfig`, `MCPSSEServerConfig`, `MCPStreamableHttpServerConfig`, `MCPTransport`                                   | [`LuaMCPServer`](/reference/sdk/luamcpserver)      |
| Devices        | `LuaDeviceConfig`, `DeviceCommandConfig`, `DeviceTriggerConfig`, `LuaDeviceTriggerConfig`                                                            | [`defineDevice`](/reference/sdk/device-definition) |
| Voice          | `LuaVoiceTool` (class), `LuaVoiceConfig`, `LuaVoiceToolConfig`, `LuaVoiceToolCtx`, `LuaVoiceHookContext`, `LuaVoiceTurnContext`                      | [`defineVoice`](/reference/sdk/voice)              |

## Workflow builder

| Area                           | Exports                                                                                                                                                                                             | Reference                                           |
| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| Config and builder             | `LuaWorkflowConfig`, `LuaWorkflowBuilder`, `LuaWorkflowStep`, `LuaWorkflowBuildCode`, `LuaWorkflowBuildWarning`, `LuaWorkflowBuildError` (class)                                                    | [Workflow builder](/reference/sdk/workflow-builder) |
| Step context                   | `WorkflowStepContext`, `WorkflowStepResultError`, `WorkflowStepWorkspace`, `WorkspaceSpec`, `WorkflowWorkspaceBackend`, `WorkflowMergePolicy`                                                       | [Workflow builder](/reference/sdk/workflow-builder) |
| Exec and shell                 | `WorkflowExec`, `WorkflowShell`, `WorkflowShellValue`, `WorkflowExecOptions`, `WorkflowExecResult`, `WorkflowExecError`, `WorkflowExecErrorCode`, `WorkflowExecRefusalReason`, `WorkflowExecBinary` | [Workflow builder](/reference/sdk/workflow-builder) |
| Step options                   | `AgentStepOptions`, `SpecialistStepOptions`, `ToolStepOptions`, `NestedWorkflowOptions`, `ApprovalOptions`, `WaitForSignalOptions`, `ForeachOptions`, `LoopOptions`                                 | [Workflow builder](/reference/sdk/workflow-builder) |
| Approvals and timeouts         | `WorkflowApproverSpec`, `WorkflowFourEyes`, `WorkflowBusinessHours`, `WorkflowSuspendOnTimeout`, `WorkflowSuspendTimeoutChain`, `WorkflowSuspendTimeoutChainMember`, `RetryPolicy`                  | [Workflow builder](/reference/sdk/workflow-builder) |
| Step references                | `StepRef`, `StepPathRef`, `ContainerArm`, `TypedRef`, `Literal`, `LuaPredicate`, `DotPath`, `PathValue`                                                                                             | [Workflow builder](/reference/sdk/workflow-builder) |
| Bindings                       | `MapDescriptor`, `LuaMapConfig`, `PathOrLiteral`, `TemplateLike`, `TemplateBinding`, `EnvRefBinding`                                                                                                | [Workflow builder](/reference/sdk/workflow-builder) |
| Knowledge, artefacts, datasets | `KnowledgeBindingSpec`, `ArtefactRef`, `DatasetRef`, `WorkflowArtefactMeta`, `JsonSchema`                                                                                                           | [Workflow builder](/reference/sdk/workflow-builder) |
| Job tier and roles             | `WorkflowJobToolId`, `WorkflowJobHarness`, `WorkflowSpecialistRole`, `AgentToolScope`, `WorkflowOutputVisibility`, `ReplyChannel`                                                                   | [Workflow builder](/reference/sdk/workflow-builder) |
| Wire shapes                    | `SerializedWorkflowGraph`, `WorkflowGoalEnvelope`, `WorkflowRunTrigger`                                                                                                                             | [Workflow builder](/reference/sdk/workflow-builder) |

## Runtime objects

| Area                       | Exports                                                                                                                                                                                                                       | Reference                                     |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| Workflows                  | `WorkflowsApi`                                                                                                                                                                                                                | [`Workflows`](/reference/sdk/workflows)       |
| User                       | `UserDataInstance` (class), `UserLookupOptions`, `ProfileResponse`                                                                                                                                                            | [`User`](/reference/sdk/user)                 |
| Conversation               | `ChatHistoryMessage`, `ChatHistoryContent`, `ChatMessage`, `TextMessage`, `ImageMessage`, `FileMessage`                                                                                                                       | [`User`](/reference/sdk/user#types)           |
| Data                       | `DataEntryInstance` (class)                                                                                                                                                                                                   | [`Data`](/reference/sdk/data)                 |
| Lua Query                  | `LuaQuery`, `LuaQueryFieldOperators`, `LuaQueryScalar`                                                                                                                                                                        | [Lua Query](/reference/sdk/query)             |
| Products                   | `ProductInstance` (class)                                                                                                                                                                                                     | [`Products`](/reference/sdk/products)         |
| Baskets                    | `BasketInstance` (class), `BasketStatus` (enum)                                                                                                                                                                               | [`Baskets`](/reference/sdk/baskets)           |
| Orders                     | `OrderInstance` (class), `OrderStatus` (enum)                                                                                                                                                                                 | [`Orders`](/reference/sdk/orders)             |
| Dynamic jobs               | `JobInstance` (class)                                                                                                                                                                                                         | [`Jobs`](/reference/sdk/jobs)                 |
| AI                         | `AiApi`, `AiGenerateInput`, `AiGenerateOutput`, `AiGenerateStructuredOutput`, `AiGenerateJsonSchema`, `AiGenerateSource`, `AiGenerateToolCall`, `AiGenerateToolResult`                                                        | [`AI`](/reference/sdk/ai)                     |
| Agents                     | `AgentsApi`                                                                                                                                                                                                                   | [`Agents`](/reference/sdk/agents)             |
| Integrations               | `IntegrationsApi`, `IntegrationPassthroughMethod`, `IntegrationPassthroughRequest`, `IntegrationPassthroughResponse`                                                                                                          | [`Integrations`](/reference/sdk/integrations) |
| Voice runtime              | `VoiceApi`                                                                                                                                                                                                                    | [`Voice`](/reference/sdk/voice-runtime)       |
| Channels                   | `ChannelsApi`, `CHANNEL_SEND_CHANNELS` (const), `ChannelSendChannel`, `ChannelSendTarget`, `ChannelSendOptions`, `ChannelSendInput`, `ChannelSendOutput`                                                                      | [`Channels`](/reference/sdk/channels)         |
| Channel payloads           | `WhatsAppTemplateSendInput`, `WhatsAppReactionSendInput`, `EmailSendInput`                                                                                                                                                    | [`Channels`](/reference/sdk/channels)         |
| Deliveries                 | `DeliveryView`, `DeliveryStatus`, `DeliveryError`, `DeliveryErrorCategory`, `DeliveryListFilter`                                                                                                                              | [`Channels`](/reference/sdk/channels)         |
| Team                       | `TeamApi`, `DirectoryTarget`, `DirectoryMatch`, `DirectoryResolveResult`                                                                                                                                                      | [`Team`](/reference/sdk/team)                 |
| WhatsApp message templates | `WhatsAppTemplate`, `WhatsAppTemplateCategory`, `WhatsAppTemplateStatus`, `WhatsAppTemplateComponent`, `PaginatedTemplatesResponse`, `ListTemplatesOptions`, `SendTemplateData`, `SendTemplateValues`, `SendTemplateResponse` | [`Templates`](/reference/sdk/templates)       |
| Request context            | `LuaRuntime`, `LuaRequest`, `WebhookRequest`, `Channel`                                                                                                                                                                       | [`Lua`](/reference/sdk/lua)                   |

## Not exported

These classes and shapes appear in signatures but can't be imported. Derive them from the member that returns or accepts them.

| Shape                                                                                                                   | Derive with                                                                                          | Reference                                     |
| ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| `ProductPaginationInstance`, `ProductSearchInstance`                                                                    | `Awaited<ReturnType<typeof Products.get>>`, `Awaited<ReturnType<typeof Products.search>>`            | [`Products`](/reference/sdk/products#types)   |
| `Basket`, `BasketItem`                                                                                                  | `Awaited<ReturnType<typeof Baskets.addItem>>`, `Parameters<typeof Baskets.addItem>[1]`               | [`Baskets`](/reference/sdk/baskets#types)     |
| `OrderResponse`                                                                                                         | `Awaited<ReturnType<typeof Orders.updateStatus>>`                                                    | [`Orders`](/reference/sdk/orders#types)       |
| `Job`, `JobVersion`, `JobExecution`                                                                                     | `JobInstance['data']`, `JobInstance['activeVersion']`, `Awaited<ReturnType<JobInstance['trigger']>>` | [`Jobs`](/reference/sdk/jobs#types)           |
| `CustomDataEntry`, `GetCustomDataResponse`, `CreateCustomDataOptions`                                                   | `Awaited<ReturnType<typeof Data.get>>`, `Parameters<typeof Data.create>[2]`                          | [`Data`](/reference/sdk/data#types)           |
| `InboxPushInput`, `InboxPushReceipt`                                                                                    | `Parameters<typeof User.Inbox.push>[0]`, `Awaited<ReturnType<typeof User.Inbox.push>>`               | [`User.Inbox`](/reference/sdk/inbox#types)    |
| `WorkflowRun`, `WorkflowRunStatus`, `StartWorkflowRunResult`, `CancelRunVerdict`, `ResumeStepResult`, `SignalRunResult` | `Awaited<ReturnType<typeof Workflows.get>>` and the other members                                    | [`Workflows`](/reference/sdk/workflows#types) |

## See also

* [SDK overview](/reference/sdk/overview) — the runtime objects and primitives, and where each is available
* [Workflow builder](/reference/sdk/workflow-builder) — the builder functions and predicate helpers
* [`env`](/reference/sdk/env) — build-time and run-time environment variables
