# IKitManager
> Manages player kits for saving and loading player states.
`gg.lode.observerapi.api.manager`
---
## Signature
```java
public interface IKitManager
```
---
## Methods
### savePlayerState
```java
void savePlayerState(Player player, String kitId, boolean saveLocation) throws IOException
```
Saves the current state of a player as a kit.
| Parameter | Type | Description |
|-----------|------|-------------|
| `player` | `Player` | The player whose state to save |
| `kitId` | `String` | The identifier for the kit |
| `saveLocation` | `boolean` | Whether to include the player's location |
**Throws:** `IOException` - if saving fails
---
### loadPlayerState
```java
void loadPlayerState(Player player, RespawnData data)
```
Loads a saved state onto a player.
| Parameter | Type | Description |
|-----------|------|-------------|
| `player` | `Player` | The player to load the state onto |
| `data` | `RespawnData` | The respawn data to apply |
---
### deleteKit
```java
boolean deleteKit(String kitId)
```
| Parameter | Type | Description |
|-----------|------|-------------|
| `kitId` | `String` | The kit identifier to delete |
**Returns:** `boolean` - `true` if the kit was deleted
---
### renameKit
```java
boolean renameKit(String kitId, String newName)
```
| Parameter | Type | Description |
|-----------|------|-------------|
| `kitId` | `String` | The kit identifier |
| `newName` | `String` | The new display name |
**Returns:** `boolean` - `true` if the kit was renamed
---
### getKitById
```java
@Nullable RespawnData getKitById(String kitId)
```
| Parameter | Type | Description |
|-----------|------|-------------|
| `kitId` | `String` | The kit identifier |
**Returns:** `@Nullable` [[RespawnData]] - the kit data, or `null` if not found
---
### getKitIds
```java
List<String> getKitIds()
```
**Returns:** `List<String>` - all kit identifiers
---
### kitExists
```java
boolean kitExists(String kitId)
```
| Parameter | Type | Description |
|-----------|------|-------------|
| `kitId` | `String` | The kit identifier to check |
**Returns:** `boolean` - `true` if the kit exists
---
### getKits
```java
List<RespawnData> getKits()
```
**Returns:** `List<RespawnData>` - all saved kits
---
## Related Pages
- [[RespawnData]]
- [[IRespawnManager]]