# GC.Spread.Sheets.Collaboration

## Content

# Namespace: Collaboration

[Spread](GC.Spread).[Sheets](GC.Spread.Sheets).Collaboration

## Table of contents

### Enumerations

- [BrowsingMode](../enums/GC.Spread.Sheets.Collaboration.BrowsingMode)
- [OpType](../enums/GC.Spread.Sheets.Collaboration.OpType)
- [PermissionTypes](../enums/GC.Spread.Sheets.Collaboration.PermissionTypes)

### Classes

- [Collaboration](../classes/GC.Spread.Sheets.Collaboration.Collaboration)

### Interfaces

- [IChangeSet](../interfaces/GC.Spread.Sheets.Collaboration.IChangeSet)
- [IOT\_Type](../interfaces/GC.Spread.Sheets.Collaboration.IOT_Type)
- [IOpComponent](../interfaces/GC.Spread.Sheets.Collaboration.IOpComponent)

### Type aliases

- [IChangeSetHandler](GC.Spread.Sheets.Collaboration#ichangesethandler)
- [IPermission](GC.Spread.Sheets.Collaboration#ipermission)
- [IPresence](GC.Spread.Sheets.Collaboration#ipresence)
- [ISelections](GC.Spread.Sheets.Collaboration#iselections)
- [IStatus](GC.Spread.Sheets.Collaboration#istatus)
- [IUserWithPermission](GC.Spread.Sheets.Collaboration#iuserwithpermission)

## Type aliases

### <a id="ichangesethandler" name="ichangesethandler"></a> IChangeSetHandler

Ƭ **IChangeSetHandler**: (`changeSet`: [`IChangeSet`](../interfaces/GC.Spread.Sheets.Collaboration.IChangeSet)) => `void`

#### Type declaration

▸ (`changeSet`): `void`

This callback is used to handle the change set

##### Parameters

| Name | Type | Description |
| :------ | :------ | :------ |
| `changeSet` | [`IChangeSet`](../interfaces/GC.Spread.Sheets.Collaboration.IChangeSet) | The change set to handle |

##### Returns

`void`

___

### <a id="ipermission" name="ipermission"></a> IPermission

Ƭ **IPermission**: `Object`

**`property`** {GC.Spread.Sheets.Collaboration.BrowsingMode} [mode]

**`property`** {GC.Spread.Sheets.Collaboration.PermissionTypes} [viewModePermissions]

#### Type declaration

| Name | Type |
| :------ | :------ |
| `mode?` | [`BrowsingMode`](../enums/GC.Spread.Sheets.Collaboration.BrowsingMode) |
| `viewModePermissions?` | [`PermissionTypes`](../enums/GC.Spread.Sheets.Collaboration.PermissionTypes) |

___

### <a id="ipresence" name="ipresence"></a> IPresence

Ƭ **IPresence**: `Object`

**`property`** {GC.Spread.Common.IUser} [user]

**`property`** {GC.Spread.Sheets.Collaboration.IStatus} [status]

#### Type declaration

| Name | Type |
| :------ | :------ |
| `status?` | [`IStatus`](GC.Spread.Sheets.Collaboration#istatus) |
| `user?` | [`IUser`](../interfaces/GC.Spread.Common.IUser) |

___

### <a id="iselections" name="iselections"></a> ISelections

Ƭ **ISelections**: `Object`

**`property`** {GC.Spread.Sheets.IRange[]} [selections]

**`property`** {string} [sheetId]

#### Type declaration

| Name | Type |
| :------ | :------ |
| `selections?` | [`IRange`](../interfaces/GC.Spread.Sheets.IRange)[] |
| `sheetId?` | `string` |

___

### <a id="istatus" name="istatus"></a> IStatus

Ƭ **IStatus**: `Object`

**`property`** {GC.Spread.Sheets.Collaboration.ISelections} [selections]

#### Type declaration

| Name | Type |
| :------ | :------ |
| `selections?` | [`ISelections`](GC.Spread.Sheets.Collaboration#iselections) |

___

### <a id="iuserwithpermission" name="iuserwithpermission"></a> IUserWithPermission

Ƭ **IUserWithPermission**: [`IUser`](../interfaces/GC.Spread.Common.IUser) & { `permission?`: [`IPermission`](GC.Spread.Sheets.Collaboration#ipermission)  }

Represents a user with associated permission settings.
Extends IUser with document permission information.
