[**CameraKit Web SDK v1.15.0**](../README.md)

***

[CameraKit Web SDK](../globals.md) / CameraKitSourceSubscriber

# Interface: CameraKitSourceSubscriber

When creating a [CameraKitSource](../classes/CameraKitSource.md), passing a CameraKitSourceSubscriber allows logic to implemented which will
run whenever that source is attached/detached from a CameraKitSession.

## Properties

### onAttach()?

> `readonly` `optional` **onAttach**: (`source`, `lensCore`, `reportError`, `frameEvents`) => `void` \| `Promise`\<`void`\>

#### Parameters

##### source

[`CameraKitSource`](../classes/CameraKitSource.md)

##### lensCore

`LensCore`

##### reportError

(`error`) => `void`

##### frameEvents

`Observable`\<`FrameEvent`\>

#### Returns

`void` \| `Promise`\<`void`\>

***

### onDetach()?

> `readonly` `optional` **onDetach**: (`reportError`) => `void` \| `Promise`\<`void`\>

#### Parameters

##### reportError

(`error`) => `void`

#### Returns

`void` \| `Promise`\<`void`\>
