## Index

### Namespaces

- IEventsTypes
- IEventsTypesListeners

### Classes

- IVisualizer

### Interfaces

- IApplication
- IApplicationButtonsConfiguration
- IApplicationFieldsConfiguration
- IButtonConfiguration
- ICatalogFieldsMapping
- IConfigurationAlias
- IConfigurationAnalytics
- IConfigurationAnalyticsPlugins
- IConfigurationAnalyticsPluginsDetails
- IConfigurationAnalyticsPluginsDetailsGDPR
- IConfigurationCatalogFilters
- IFieldConfiguration
- IPreFilterProducts
- ISceneConfiguration
- ISceneConfigurationEntity

### Type aliases

- ICameraEventType
- IConfigurationFilter
- IFacet
- IFavorite
- IFavoriteProductList
- IFavoriteProductSkuAndApplication
- IFavoriteProductSkuAndApplicationList
- IFavoriteScene
- IFavoriteSceneList
- IProduct
- IProductSkuAndApplication
- IScene
- TAnalyticsEvent

### Variables

- configurationFilterValidator
- facetValidator
- favoriteProductListValidator
- favoriteProductSkuAndApplicationListValidator
- favoriteProductSkuAndApplicationValidator
- favoriteSceneListValidator
- favoriteSceneValidator
- favoriteValidator
- productSkuAndApplicationValidator
- productValidator
- sceneValidator

### Object literals

- analyticsEvents

## Type aliases

### ICameraEventType

ICameraEventType: "zoom" | "move"

### IConfigurationFilter

IConfigurationFilter: Infer<typeof configurationFilterValidator>

### IFacet

IFacet: Infer<typeof facetValidator>

### IFavorite

IFavorite: Infer<typeof favoriteValidator>

### IFavoriteProductList

IFavoriteProductList: Infer<typeof favoriteProductListValidator>

### IFavoriteProductSkuAndApplication

IFavoriteProductSkuAndApplication: Infer<typeof favoriteProductSkuAndApplicationValidator>

### IFavoriteProductSkuAndApplicationList

IFavoriteProductSkuAndApplicationList: Infer<typeof favoriteProductSkuAndApplicationListValidator>

### IFavoriteScene

IFavoriteScene: Infer<typeof favoriteSceneValidator>

### IFavoriteSceneList

IFavoriteSceneList: Infer<typeof favoriteSceneListValidator>

### IProduct

IProduct: Infer<typeof productValidator>

### IProductSkuAndApplication

IProductSkuAndApplication: Infer<typeof productSkuAndApplicationValidator>

### IScene

IScene: Infer<typeof sceneValidator>

### TAnalyticsEvent

TAnalyticsEvent: Partial<{}>

## Variables

### Const configurationFilterValidator

configurationFilterValidator: ObjectValidator<{ customFieldName: StringValidator; name: StringValidator; operator: ConstantValidator<["not"]>; options: OrValidator<any> }, "name" | "options", false> = jointz.object({name: jointz.string(),customFieldName: jointz.string(),operator: jointz.constant('not'),options: jointz.or(jointz.array(jointz.string()), jointz.constant(null)),}).requiredKeys(['name', 'options'])

### Const facetValidator

facetValidator: ObjectValidator<{ name: StringValidator; options: OrValidator<any> }, "name" | "options", false> = jointz.object({name: jointz.string(),options: jointz.or(jointz.array(jointz.string()), jointz.constant(null)),}).requiredKeys(['name', 'options'])

### Const favoriteProductListValidator

favoriteProductListValidator: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ product: ObjectValidator<{ _id: StringValidator; application: StringValidator; description: StringValidator; facets: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ name: StringValidator; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; name: StringValidator; price: StringValidator; sku: StringValidator; title: StringValidator }, "_id" | "sku" | "title" | "image" | "application", false> }>, "product">> = jointz.array(favoriteValidator)

### Const favoriteProductSkuAndApplicationListValidator

favoriteProductSkuAndApplicationListValidator: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ product: ObjectValidator<{ application: StringValidator; sku: StringValidator }, "sku" | "application", false> }>, "product">> = jointz.array(favoriteProductSkuAndApplicationValidator)

### Const favoriteProductSkuAndApplicationValidator

favoriteProductSkuAndApplicationValidator: ObjectValidator<{ product: ObjectValidator<{ application: StringValidator; sku: StringValidator }, "sku" | "application", false> }, "product", false> = jointz.object({product: productSkuAndApplicationValidator,}).requiredKeys(['product'])

### Const favoriteSceneListValidator

favoriteSceneListValidator: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ favorites: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ product: ObjectValidator<{ _id: StringValidator; application: StringValidator; description: StringValidator; facets: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ name: StringValidator; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; name: StringValidator; price: StringValidator; sku: StringValidator; title: StringValidator }, "_id" | "sku" | "title" | "image" | "application", false> }>, "product">>; id: StringValidator; image: StringValidator; scene: ObjectValidator<{ experienceId: StringValidator; filters: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ customFieldName: StringValidator; name: StringValidator; operator: ConstantValidator<["not"]>; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; sceneId: StringValidator; subtitle: StringValidator; title: StringValidator }, "image" | "experienceId" | "sceneId", false> }>, "image" | "id" | "favorites" | "scene">> = jointz.array(favoriteSceneValidator)

### Const favoriteSceneValidator

favoriteSceneValidator: ObjectValidator<{ favorites: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ product: ObjectValidator<{ _id: StringValidator; application: StringValidator; description: StringValidator; facets: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ name: StringValidator; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; name: StringValidator; price: StringValidator; sku: StringValidator; title: StringValidator }, "_id" | "sku" | "title" | "image" | "application", false> }>, "product">>; id: StringValidator; image: StringValidator; scene: ObjectValidator<{ experienceId: StringValidator; filters: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ customFieldName: StringValidator; name: StringValidator; operator: ConstantValidator<["not"]>; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; sceneId: StringValidator; subtitle: StringValidator; title: StringValidator }, "image" | "experienceId" | "sceneId", false> }, "image" | "id" | "favorites" | "scene", false> = jointz.object({id: jointz.string(),image: jointz.string(),favorites: jointz.array(favoriteValidator),scene: sceneValidator,}).requiredKeys(['id', 'image', 'favorites', 'scene'])

### Const favoriteValidator

favoriteValidator: ObjectValidator<{ product: ObjectValidator<{ _id: StringValidator; application: StringValidator; description: StringValidator; facets: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ name: StringValidator; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; name: StringValidator; price: StringValidator; sku: StringValidator; title: StringValidator }, "_id" | "sku" | "title" | "image" | "application", false> }, "product", false> = jointz.object({product: productValidator,}).requiredKeys(['product'])

### Const productSkuAndApplicationValidator

productSkuAndApplicationValidator: ObjectValidator<{ application: StringValidator; sku: StringValidator }, "sku" | "application", false> = jointz.object({sku: jointz.string(),application: jointz.string(),}).requiredKeys(['sku', 'application'])

### Const productValidator

productValidator: ObjectValidator<{ _id: StringValidator; application: StringValidator; description: StringValidator; facets: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ name: StringValidator; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; name: StringValidator; price: StringValidator; sku: StringValidator; title: StringValidator }, "_id" | "sku" | "title" | "image" | "application", false> = jointz.object({sku: jointz.string(),name: jointz.string(),title: jointz.string(),description: jointz.string(),application: jointz.string(),image: jointz.string(),price: jointz.string(),facets: jointz.array(facetValidator),_id: jointz.string(),}).requiredKeys(['_id', 'sku', 'title', 'image', 'application'])

### Const sceneValidator

sceneValidator: ObjectValidator<{ experienceId: StringValidator; filters: ArrayValidator<WithRequiredKeys<ExtractObjectType<{ customFieldName: StringValidator; name: StringValidator; operator: ConstantValidator<["not"]>; options: OrValidator<any> }>, "name" | "options">>; image: StringValidator; sceneId: StringValidator; subtitle: StringValidator; title: StringValidator }, "image" | "experienceId" | "sceneId", false> = jointz.object({experienceId: jointz.string(),sceneId: jointz.string(),title: jointz.string(),subtitle: jointz.string(),image: jointz.string(),filters: jointz.array(configurationFilterValidator),}).requiredKeys(['experienceId', 'sceneId', 'image'])

## Object literals

### Const analyticsEvents

analyticsEvents: object

property names are assigned to action

evenParamsPaths are serialized into label (and delimited with ':')

### applicationHotspotClicked

applicationHotspotClicked: object

### category

category: string = "appplications"

### eventParamsPaths

eventParamsPaths: string[] = ['application.application']

### applicationsStripButtonClicked

applicationsStripButtonClicked: object

### category

category: string = "appplications"

### eventParamsPaths

eventParamsPaths: string[] = ['application.application']

### applicationsStripOpened

applicationsStripOpened: object

### category

category: string = "appplications"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### closeFullscreenClicked

closeFullscreenClicked: object

### category

category: string = "visualizer"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### favoriteSceneClicked

favoriteSceneClicked: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### favoritesPanelClosed

favoritesPanelClosed: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### favoritesPanelOpened

favoritesPanelOpened: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### favoritesSceneDisplayed

favoritesSceneDisplayed: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.scene.sceneId', 'scene.scene.title', 'scene.subtitle']

### fullscreenClicked

fullscreenClicked: object

### category

category: string = "visualizer"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### orderSample

orderSample: object

### category

category: string = "conversion"

### eventParamsPaths

eventParamsPaths: string[] = ['product.sku', 'product.title']

### productAddedToCart

productAddedToCart: object

### category

category: string = "conversion"

### eventParamsPaths

eventParamsPaths: string[] = ['product.sku', 'product.title']

### productAddedToFavorites

productAddedToFavorites: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: string[] = ['product.sku', 'product.title']

### productChanged

productChanged: object

### category

category: string = "products"

### eventParamsPaths

eventParamsPaths: string[] = ['product.sku', 'product.title']

### productRemovedFromFavorites

productRemovedFromFavorites: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: string[] = ['product.sku', 'product.title']

### sceneAddedToFavorites

sceneAddedToFavorites: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.scene.sceneId', 'scene.scene.title', 'scene.subtitle']

### sceneLoaded

sceneLoaded: object

### category

category: string = "scenes"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.sceneId', 'scene.title', 'scene.subtitle']

### sceneLoading

sceneLoading: object

### category

category: string = "scenes"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.sceneId', 'scene.title', 'scene.subtitle']

### sceneRemovedFromFavorites

sceneRemovedFromFavorites: object

### category

category: string = "favorites"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.scene.sceneId', 'scene.scene.title', 'scene.subtitle']

### sceneTouched

sceneTouched: object

### category

category: string = "visualizer"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.sceneId', 'scene.title', 'scene.subtitle']

### scenesPanelClosed

scenesPanelClosed: object

### category

category: string = "scenes"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### scenesPanelOpened

scenesPanelOpened: object

### category

category: string = "scenes"

### eventParamsPaths

eventParamsPaths: undefined[] = []

### summaryClicked

summaryClicked: object

### category

category: string = "visualizer"

### eventParamsPaths

eventParamsPaths: string[] = ['scene.scene.sceneId', 'scene.scene.title', 'scene.subtitle']

### userChangedProduct

userChangedProduct: object

### category

category: string = "products"

### eventParamsPaths

eventParamsPaths: string[] = ['product.sku', 'product.title']

### visualizerLoaded

visualizerLoaded: object

### category

category: string = "visualizer"

### eventParamsPaths

eventParamsPaths: string[] = ['visualizer.experienceId']

Generated using TypeDoc