# Interface: SpacesState

Defined in: [packages/react/src/use-spaces.ts:5](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L5)

## Properties

| Property | Modifier | Type | Defined in |
| ------ | ------ | ------ | ------ |
| <a id="property-error"></a> `error` | `readonly` | `string` \| `null` | [packages/react/src/use-spaces.ts:8](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L8) |
| <a id="property-loading"></a> `loading` | `readonly` | `boolean` | [packages/react/src/use-spaces.ts:7](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L7) |
| <a id="property-spaces"></a> `spaces` | `readonly` | readonly [`SpaceSummary`](https://minca.dev/api/core/interfaces/SpaceSummary.md)[] | [packages/react/src/use-spaces.ts:6](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L6) |

## Methods

### create()

```ts
create(params): Promise<
  | SpaceSummary
| null>;
```

Defined in: [packages/react/src/use-spaces.ts:11](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L11)

Makes a space; null when it failed, with `error` saying why

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `params` | [`NewSpace`](https://minca.dev/api/core/interfaces/NewSpace.md) |

#### Returns

`Promise`\<
  \| [`SpaceSummary`](https://minca.dev/api/core/interfaces/SpaceSummary.md)
  \| `null`\>

***

### join()

```ts
join(invite): Promise<
  | SpaceSummary
| null>;
```

Defined in: [packages/react/src/use-spaces.ts:13](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L13)

Joins from an invite; null when it failed

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `invite` | `string` |

#### Returns

`Promise`\<
  \| [`SpaceSummary`](https://minca.dev/api/core/interfaces/SpaceSummary.md)
  \| `null`\>

***

### leave()

```ts
leave(spaceId): Promise<void>;
```

Defined in: [packages/react/src/use-spaces.ts:15](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L15)

Forgets a space on this device

#### Parameters

| Parameter | Type |
| ------ | ------ |
| `spaceId` | `string` |

#### Returns

`Promise`\<`void`\>

***

### refresh()

```ts
refresh(): Promise<void>;
```

Defined in: [packages/react/src/use-spaces.ts:9](https://github.com/leifriksheim/minca/blob/main/react/src/use-spaces.ts#L9)

#### Returns

`Promise`\<`void`\>
