/** * Copyright (c) Cisco Systems, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * */ import "../help-text/HelpText"; import "../icon/Icon"; import { LitElement, nothing, PropertyValues, TemplateResult } from "lit"; export declare namespace ComboBox { type OptionMember = { [key: string]: string; }; export type MessageType = "error" | "success" | "warning"; export type Message = { type: MessageType; message: string; id?: string; ariaLive?: "off" | "assertive" | "polite"; }; export class MessageController { determineMessageType(array: ComboBox.Message[]): MessageType; filterMessagesByType(array: ComboBox.Message[], value: string): string[]; } const ELEMENT_base: import("../../mixins/FocusMixin").FocusMixinReturnType; export class ELEMENT extends ELEMENT_base { private _focusedIndex; private _focusedGroupIndex; label: string; options: (string | OptionMember)[]; customOptions: never[]; placeholder: string; isMulti: boolean; useVirtualScroll: boolean; disabled: boolean; ordered: boolean; expanded: boolean; groupExpandedList: any; searchItem: boolean; compact: boolean; noClearIcon: boolean; selectWhenInFocus: boolean; selectedOptions: (string | OptionMember)[]; visibleOptions: number; optionId: string; optionValue: string; isCustomContent: boolean; searchable: boolean; shape: string; value: (string | OptionMember)[]; inputValue: string; allowCustomValue: boolean; autofocus: boolean; resultsTextLocalization: string; optionsTextLocalization: string; trimSpace: boolean; invalid: boolean; invalidText: string; ariaLabel: string; searchResultAriaLabel: string; private ariaLabelForComboBox; clearAriaLabel: string; arrowAriaLabel: string; clearIconHeight: string; allTextLocalization: string; selectAllTextLocalization: string; selectedTextLocalization: string; allowSelectAll: boolean; showCustomError: boolean; showLoader: boolean; showSelectedCount: boolean; popupChevronAriaHidden: string; newMomentum: boolean; showFilterIcon: boolean; preventFilter: boolean; /** * When using the new momentum style sets whether to use the new combobox style arrow * or the arrow not in a div what a border to the right. This will be used for filter dropdowns * that were implemented using a combobox */ isDropdownArrow: boolean; comboboxId: string; helpText: string; messageArr: ComboBox.Message[]; htmlId: string; private readonly _fallbackId; private get messageId(); readOnly: boolean; private readonly messageController; private isOptGroup; private isSelectAllChecked; get focusedIndex(): number; set focusedIndex(index: number); updateFocusedIndex(index: number): void; get focusedGroupIndex(): number; set focusedGroupIndex(index: number); get messageType(): ComboBox.MessageType | null; get messages(): string[] | null; private multiSelectedIndex; private multiSelected; private customContent; private notifySearchResultCount; group?: HTMLDivElement; input?: HTMLInputElement; button?: HTMLButtonElement; listBox?: HTMLDivElement; virtualizer?: any; lists?: HTMLDivElement[]; labels?: HTMLDivElement[]; selected?: HTMLDivElement[]; protected firstUpdated(changedProperties: PropertyValues): void; protected updated(changedProperties: PropertyValues): void; protected handleFocusIn(event: Event): void; protected handleFocusOut(event: Event): void; private findFilteredOption; private setInitialValue; private isOptionObject; private setOptionCustomContent; private getOptionValue; private getOptionGroupName; private getOptionId; private getFocusedItem; private setupEvents; private teardownEvents; private setVisualListbox; private setGroupList; private findSelectedOption; private findOptionIndex; private checkSelectedOptions; private unCheckAllOptions; private setSelectedOption; private notifySelectedChange; private handleGroupFilter; private filterOptions; private getListBoxVerticalPadding; private resizeListbox; private setInputValue; private updateOnNextFrame; private unCheckedAllOptions; private unCheckedOption; private checkAllOptions; private checkOption; private isSelectAllSelected; private setFocusOnHost; private isOptionFocused; private getAriaState; private scrollToOption; private getCustomContentName; private setInputSelectionRange; private isOptionChecked; private getInputSelection; private canMultiSelect; private removeMultiTag; private unselectedAllMultiTag; private findLastMultiSelected; private toggleMultiSelectedTag; private selectMultiTag; handleListClick(event: MouseEvent): Promise; handleSelectAll(): Promise; handleInputKeyUp(event: KeyboardEvent): void; private notifyInputValueChanged; handleInput(event: Event): void; private removeAllSelected; private removeSelected; private selectedChange; private setSelectedAttribute; private shouldChangeButton; private setCustomValue; handleGroupFocus(): void; handleInputKeyDown(event: KeyboardEvent): void; handleGroupLabelKeyDown(event: KeyboardEvent, option: OptionMember): void; toggleVisualListBox(e: any): void; toggleGroupListBox(e: Event, data: string): void; handleRemoveAll(event: MouseEvent): void; handleOutsideClick: (event: MouseEvent) => void; connectedCallback(): void; disconnectedCallback(): void; static get styles(): import("lit").CSSResult[]; get listItemOptionMap(): { "md-combobox-multiselect": boolean; compact: boolean; "md-combobox-dropdown-arrow": boolean; }; get filteredOptions(): (string | OptionMember)[]; get filteredGroupOptions(): (string | OptionMember)[]; get comboBoxTemplateClassMap(): { [x: string]: boolean; "md-combobox-searchable": boolean; "md-combobox-has-leading-icon": boolean; "md-new-combobox": boolean; "md-combobox-readonly": boolean; "md-combobox-compact": boolean; "md-combobox-dropdown-arrow": boolean; }; searchIconTemplate(): TemplateResult<1>; filterIconTemplate(): TemplateResult<1>; leadingIconTemplate(iconName: string, iconClass: string): TemplateResult<1>; selectedOptionTemplate(selectedOption: string | OptionMember): TemplateResult<1>; clearButtonTemplate(): TemplateResult<1>; arrowButtonTemplate(): TemplateResult<1>; groupArrowButtonTemplate(data: string): TemplateResult<1>; getSelectAllOption(): TemplateResult<1>; getSelctedCount(): TemplateResult<1> | typeof nothing; checkForVirtualScroll(): boolean; rangeChanged(): void; getCustomErrorContent(): DocumentFragment; getCustomContent(option: string | OptionMember): DocumentFragment | TemplateResult<1>; renderGroupLabelHeader(option: OptionMember, optionIndex: number): TemplateResult<1>; renderWithoutVirtualScroll(): unknown; highlightingSearchedText(option: OptionMember | string): TemplateResult<1>[]; addStyle(): import("lit-html/directive.js").DirectiveResult; renderItem(option: OptionMember | string, index: number): TemplateResult; inputTitle(): string; helpTextTemplate(): TemplateResult<1> | typeof nothing; messagesTemplate(): TemplateResult<1> | typeof nothing; get newArrowButtonTemplate(): TemplateResult<1>; get renderNewMomentumArrow(): TemplateResult; get renderTrailingInputControls(): TemplateResult; private get renderVirtualScroll(); render(): TemplateResult<1>; } export {}; } declare global { interface HTMLElementTagNameMap { "md-combobox": ComboBox.ELEMENT; } }