---
title: "init(configurationSets:combinations:)"
framework: realitykit
role: symbol
role_heading: Initializer
path: "realitykit/entity/configurationcatalog/init(configurationsets:combinations:)"
---

# init(configurationSets:combinations:)

Creates a configuration catalog from in-memory entities and an array of configuration sets.

## Declaration

```swift
init(configurationSets: [Entity.ConfigurationCatalog.ConfigurationSet], combinations: [Entity.ConfigurationCatalog.ConfigurationCombination]) throws
```

## Parameters

- `configurationSets`: The configuration choices that the configuration catalog presents. Each configuration set needs to have a unique ID from all others. The configuration catalog stores the array as the configurationSets dictionary property and doesn’t preserve its order.
- `combinations`: The combinations of in-memory entities and the configurations that can address them. The keys you use in doc://com.apple.RealityKit/documentation/RealityKit/Entity/ConfigurationCatalog/ConfigurationCombination/configurationSpecifications need to match IDs of configuration sets from the configurationSets argument. The values you use in doc://com.apple.RealityKit/documentation/RealityKit/Entity/ConfigurationCatalog/ConfigurationCombination/configurationSpecifications need to match IDs of configurations from the configurationSets argument. There needs to be one doc://com.apple.RealityKit/documentation/RealityKit/Entity/ConfigurationCatalog/ConfigurationCombination for each possible combination of configurations.

## Return Value

Return Value A configuration catalog that maintains the provided entities in memory.
