import { UIInstanceManager } from '../../UIManager'; import { PlayerAPI } from 'bitmovin-player'; import { LocalizableText } from '../../localization/i18n'; import { ListSelector, ListSelectorConfig } from '../lists/ListSelector'; import { SettingsPanelItemConfig } from './SettingsPanelItem'; import { SettingsPanel, SettingsPanelConfig } from './SettingsPanel'; import { InteractiveSettingsPanelItem } from './InteractiveSettingsPanelItem'; import { Component, ComponentConfig } from '../Component'; /** * Configuration interface for a {@link DynamicSettingsPanelItem}. * * @category Configs */ export interface DynamicSettingsPanelItemConfig extends SettingsPanelItemConfig { /** * The label component or the text for the label. */ label: LocalizableText; /** * Optional back navigation component to be displayed on the right side of the label. */ backNavigationRightComponent?: Component; /** * The list selector component which will be used to build the sub page. */ settingComponent: ListSelector; /** * The enclosing {@link SettingsPanel} where the sub page will be added. */ container: SettingsPanel; } /** * A dynamic settings panel item which can build a sub page with the items of a {@link ListSelector}. * The page will be dynamically added and removed from the {@link SettingsPanel}. * * @category Components */ export declare class DynamicSettingsPanelItem extends InteractiveSettingsPanelItem { private selectedOptionLabel; protected backNavigationRightComponent: Component; protected settingComponent: ListSelector; private player; private uimanager; constructor(config: DynamicSettingsPanelItemConfig); configure(player: PlayerAPI, uimanager: UIInstanceManager): void; protected onLanguageChanged(): void; private handleSelectedItemChanged; private buildSubPanelPage; displayItemsSubPage(): void; }