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

# Variables

## Supported Types

###

```go theme={null}
variables := components.CreateVariablesStr(string{/* values here */})
```

### InputText

```go theme={null}
variables := components.CreateVariablesInputText(components.InputText{/* values here */})
```

### InputImage

```go theme={null}
variables := components.CreateVariablesInputImage(components.InputImage{/* values here */})
```

### InputFile

```go theme={null}
variables := components.CreateVariablesInputFile(components.InputFile{/* values here */})
```

## Union Discrimination

Use the `Type` field to determine which variant is active, then access the corresponding field:

```go theme={null}
switch variables.Type {
	case components.VariablesTypeStr:
		// variables.Str is populated
	case components.VariablesTypeInputText:
		// variables.InputText is populated
	case components.VariablesTypeInputImage:
		// variables.InputImage is populated
	case components.VariablesTypeInputFile:
		// variables.InputFile is populated
}
```
