UNPKG

@snap/camera-kit

Version:
97 lines (54 loc) 2.14 kB
[**CameraKit Web SDK v1.13.0**](../README.md) *** [CameraKit Web SDK](../globals.md) / CameraKit # Class: CameraKit The entry point to the CameraKit SDK's API. Most of CameraKit's features are accessed via this class. Applications obtain an instance of CameraKit by calling [bootstrapCameraKit](../functions/bootstrapCameraKit.md). ## Example ```ts const cameraKit = await bootstrapCameraKit(config) ``` Then this class can be used to: - Create a [CameraKitSession](CameraKitSession.md) instance, which provides the API for setting up media inputs, applying Lenses, and obtaining rendered `<canvas>` outputs. - Query for lenses using [LensRepository](LensRepository.md). - Listen for lens usage metrics events using MetricsEventTarget. ## Properties ### ~~lenses~~ > `readonly` **lenses**: `object` #### ~~repository~~ > **repository**: [`LensRepository`](LensRepository.md) #### Deprecated Use [lensRepository](CameraKit.md#lensrepository) *** ### metrics > `readonly` **metrics**: [`TypedEventTarget`](TypedEventTarget.md)\<[`LensMetricsEvents`](../type-aliases/LensMetricsEvents.md)\> Business metrics (e.g. each time a lens is viewed) are emitted here. *** ### lensRepository > `readonly` **lensRepository**: [`LensRepository`](LensRepository.md) Used to query for lenses and lens groups. ## Methods ### createSession() > **createSession**(`options`): `Promise`\<[`CameraKitSession`](CameraKitSession.md)\> Create a CameraKitSession. This initializes the rendering engine and returns a [CameraKitSession](CameraKitSession.md) instance, which provides access to Lens rendering. #### Parameters ##### options [`CreateSessionOptions`](../interfaces/CreateSessionOptions.md) = `{}` #### Returns `Promise`\<[`CameraKitSession`](CameraKitSession.md)\> #### Example ```ts const cameraKit = await bootstrapCameraKit(config) const session = await cameraKit.createSession() const lens = await cameraKit.lensRepository.loadLens(lensId, groupId) session.applyLens(lens) ``` *** ### destroy() > **destroy**(): `Promise`\<`void`\> Destroys all sessions and frees all resources. #### Returns `Promise`\<`void`\>