> ## 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.

# AnthropicUsageIteration

## Supported Types

### AnthropicCompactionUsageIteration

```go theme={null}
anthropicUsageIteration := components.CreateAnthropicUsageIterationAnthropicCompactionUsageIteration(components.AnthropicCompactionUsageIteration{/* values here */})
```

### AnthropicMessageUsageIteration

```go theme={null}
anthropicUsageIteration := components.CreateAnthropicUsageIterationAnthropicMessageUsageIteration(components.AnthropicMessageUsageIteration{/* values here */})
```

### AnthropicAdvisorMessageUsageIteration

```go theme={null}
anthropicUsageIteration := components.CreateAnthropicUsageIterationAnthropicAdvisorMessageUsageIteration(components.AnthropicAdvisorMessageUsageIteration{/* values here */})
```

### AnthropicUnknownUsageIteration

```go theme={null}
anthropicUsageIteration := components.CreateAnthropicUsageIterationAnthropicUnknownUsageIteration(components.AnthropicUnknownUsageIteration{/* values here */})
```

## Union Discrimination

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

```go theme={null}
switch anthropicUsageIteration.Type {
	case components.AnthropicUsageIterationTypeAnthropicCompactionUsageIteration:
		// anthropicUsageIteration.AnthropicCompactionUsageIteration is populated
	case components.AnthropicUsageIterationTypeAnthropicMessageUsageIteration:
		// anthropicUsageIteration.AnthropicMessageUsageIteration is populated
	case components.AnthropicUsageIterationTypeAnthropicAdvisorMessageUsageIteration:
		// anthropicUsageIteration.AnthropicAdvisorMessageUsageIteration is populated
	case components.AnthropicUsageIterationTypeAnthropicUnknownUsageIteration:
		// anthropicUsageIteration.AnthropicUnknownUsageIteration is populated
}
```
