/** * @license * * Copyright IBM Corp. 2019, 2024 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ import { TemplateResult } from 'lit'; import CDSComboBoxItem from '@carbon/web-components/es/components/combo-box/combo-box-item.js'; import CDSDropdown, { DROPDOWN_KEYBOARD_ACTION, DROPDOWN_TYPE, NAVIGATION_DIRECTION } from '@carbon/web-components/es/components/dropdown/dropdown.js'; import { DROPDOWN_COLOR_SCHEME, DROPDOWN_SIZE } from './defs'; export { DROPDOWN_COLOR_SCHEME, DROPDOWN_KEYBOARD_ACTION, DROPDOWN_SIZE, DROPDOWN_TYPE, NAVIGATION_DIRECTION, }; /** * Combo box. * * @element c4d-combo-box * @csspart text-input - The text input. Usage: `c4d-combo-box::part(text-input)` * @csspart selection-button - The selection button. Usage: `c4d-combo-box::part(selection-button)` * @fires cds-combo-box-beingselected * The custom event fired before a combo box item is selected upon a user gesture. * Cancellation of this event stops changing the user-initiated selection. * @fires cds-combo-box-beingtoggled * The custom event fired before the open state of this combo box is toggled upon a user gesture. * Cancellation of this event stops the user-initiated toggling. * @fires cds-combo-box-selected - The custom event fired after a combo box item is selected upon a user gesture. * @fires cds-combo-box-toggled - The custom event fired after the open state of this combo box is toggled upon a user gesture. */ declare class C4DComboBox extends CDSDropdown { /** * The text content that should be set to the `` for filtering. */ protected _filterInputValue: string; protected _shouldTriggerBeFocusable: boolean; /** * The selection button. */ private _selectionButtonNode; /** * The `` for filtering. */ protected _filterInputNode: HTMLInputElement; /** * @param item A combo box item. * @returns `true` if the given combo box item matches the query text user types. */ protected _testItemWithQueryText(item: any): boolean; /** * The default item matching callback. * * @param item The combo box item. * @param queryText The query text user types. * @returns `true` if the given combo box item matches the given query text. */ protected _defaultItemMatches(item: CDSComboBoxItem, queryText: string): boolean; /** * Handles `input` event on the `` for filtering. */ protected _handleInput(): void; protected _handleClickInner(event: MouseEvent): void; protected _handleKeypressInner(event: KeyboardEvent): void; /** * Handles user-initiated clearing the `` for filtering. */ protected _handleUserInitiatedClearInput(): void; protected _handleUserInitiatedSelectItem(item?: CDSComboBoxItem): void; protected _renderLabel(): TemplateResult; protected _renderFollowingLabel(): TemplateResult | void; /** * The `aria-label` attribute for the icon to clear selection. */ clearSelectionLabel: string; /** * The custom item matching callback. */ itemMatches: (item: CDSComboBoxItem, queryText: string) => boolean; shouldUpdate(changedProperties: any): boolean; updated(changedProperties: any): void; static TRIGGER_KEYS: Set; /** * A selector that will return highlighted items. */ static get selectorItemHighlighted(): string; /** * A selector that will return combo box items. */ static get selectorItem(): string; /** * A selector that will return selected items. */ static get selectorItemSelected(): string; /** * The name of the custom event fired before this combo box item is being toggled upon a user gesture. * Cancellation of this event stops the user-initiated action of toggling this combo box item. */ static get eventBeforeToggle(): string; /** * The name of the custom event fired after this combo box item is toggled upon a user gesture. */ static get eventToggle(): string; /** * The name of the custom event fired before a combo box item is selected upon a user gesture. * Cancellation of this event stops changing the user-initiated selection. */ static get eventBeforeSelect(): string; /** * The name of the custom event fired after a a combo box item is selected upon a user gesture. */ static get eventSelect(): string; } export default C4DComboBox; //# sourceMappingURL=combo-box.d.ts.map