### Hierarchy

- IVisualizer

## Index

### Methods

- addFavoriteScene
- addProductToCart
- addProductToFavorites
- displayProduct
- displaySceneFromFavorites
- getApplicationsList
- getCurrentApplication
- getCurrentFilters
- getCurrentScene
- getDisplayedProduct
- getDisplayedProducts
- getFavoriteProducts
- getFavoriteScenes
- getFilters
- getProductList
- getSceneList
- initAndLoad
- orderSample
- removeFavoriteScene
- removeProductFromFavorites
- setCurrentApplication
- setFavoriteProducts
- setFavoriteScenes
- setFilter
- setScene

## Methods

### Abstract addFavoriteScene

- addFavoriteScene(): Promise<IFavoriteSceneList>

- will add a scene to favorites will emit a "sceneAddedToFavorites" event

  #### Returns Promise<IFavoriteSceneList>

### Abstract addProductToCart

- addProductToCart(product: IProduct): void

- will emit a "productAddedToCart" event

  #### Parameters

  - ##### product: IProduct

  #### Returns void

### Abstract addProductToFavorites

- addProductToFavorites(productSku: string, application: string): IFavoriteProductList

- will add a product to favorites will emit a "productAddedToFavorites" event

  #### Parameters

  - ##### productSku: string

  - ##### application: string

  #### Returns IFavoriteProductList

### Abstract displayProduct

- displayProduct(productSku: string, application: IApplication): Promise<void>

- will set a product on a specific application will emit a "productChanged" event after complete

  #### Parameters

  - ##### productSku: string

  - ##### application: IApplication

  #### Returns Promise<void>

### Abstract displaySceneFromFavorites

- displaySceneFromFavorites(setId: string): Promise<void>

- will display a saved scene will emit a "sceneDisplayed" event after complete

  #### Parameters

  - ##### setId: string

  #### Returns Promise<void>

### Abstract getApplicationsList

- getApplicationsList(): Array<IApplication>

- will return applications available on this experience

  #### Returns Array<IApplication>

### Abstract getCurrentApplication

- getCurrentApplication(): IApplication | undefined

- will return the current applications

  #### Returns IApplication | undefined

### Abstract getCurrentFilters

- getCurrentFilters(): Array<IConfigurationFilter>

- will return the current filters

  #### Returns Array<IConfigurationFilter>

### Abstract getCurrentScene

- getCurrentScene(): IScene

- will return the curren scene

  #### Returns IScene

### Abstract getDisplayedProduct

- getDisplayedProduct(application: IApplication): IProduct | undefined

- will return the product displayed on an application in the current scene

  #### Parameters

  - ##### application: IApplication

  #### Returns IProduct | undefined

### Abstract getDisplayedProducts

- getDisplayedProducts(): Array<IProduct>

- will return all displayed products in the current scene

  #### Returns Array<IProduct>

### Abstract getFavoriteProducts

- getFavoriteProducts(): IFavoriteProductList

- will return the favorite products

  #### Returns IFavoriteProductList

### Abstract getFavoriteScenes

- getFavoriteScenes(): IFavoriteSceneList

- will return the favorite set list

  #### Returns IFavoriteSceneList

### Abstract getFilters

- getFilters(): Array<IConfigurationFilter>

- will return the available filters

  #### Returns Array<IConfigurationFilter>

### Abstract getProductList

- getProductList(): Array<IProduct> | undefined

- will return products list according to the current application and filters

  #### Returns Array<IProduct> | undefined

### Abstract getSceneList

- getSceneList(): Array<IScene>

- will return the scene list available in this experience

  #### Returns Array<IScene>

### Abstract initAndLoad

- initAndLoad(): Promise<void>

- start and load the visualizer app, will be triggered automatically on [data-role="visualizer"] elements after complete will emit a "visualizerLoaded" event

  #### Returns Promise<void>

### Abstract orderSample

- orderSample(product: IProduct): void

- will emit a "orderSample" event

  #### Parameters

  - ##### product: IProduct

  #### Returns void

### Abstract removeFavoriteScene

- removeFavoriteScene(setId: string): IFavoriteSceneList

- will remove a scene from favorites will emit a "sceneRemovedFromFavorites" event

  #### Parameters

  - ##### setId: string

  #### Returns IFavoriteSceneList

### Abstract removeProductFromFavorites

- removeProductFromFavorites(productSku: string, application: string): IFavoriteProductList

- will remove a product from favorites will emit a "productRemovedFromFavorites" event

  #### Parameters

  - ##### productSku: string

  - ##### application: string

  #### Returns IFavoriteProductList

### Abstract setCurrentApplication

- setCurrentApplication(application: IApplication): Promise<IApplication | undefined>

- will set the current applications

  #### Parameters

  - ##### application: IApplication

    the application to set

  #### Returns Promise<IApplication | undefined>

### Abstract setFavoriteProducts

- setFavoriteProducts(favoriteProducts: IFavoriteProductList | IFavoriteProductSkuAndApplicationList): any

- set favorite product

  #### Parameters

  - ##### favoriteProducts: IFavoriteProductList | IFavoriteProductSkuAndApplicationList

  #### Returns any

### Abstract setFavoriteScenes

- setFavoriteScenes(favoriteScenes: IFavoriteSceneList): any

- set favorite scene

  #### Parameters

  - ##### favoriteScenes: IFavoriteSceneList

  #### Returns any

### Abstract setFilter

- setFilter(filters: Array<IConfigurationFilter>): Array<IConfigurationFilter>

- will set the current filters

  #### Parameters

  - ##### filters: Array<IConfigurationFilter>

    the filters to set

  #### Returns Array<IConfigurationFilter>

### Abstract setScene

- setScene(sceneId: string): Promise<void>

- will set the current scene after complete will emit a "sceneLoaded" event

  #### Parameters

  - ##### sceneId: string

    the sceneId to lunch

  #### Returns Promise<void>

Generated using TypeDoc