UNPKG

@oslokommune/punkt-elements

Version:

Komponentbiblioteket til Punkt, et designsystem laget av Oslo Origo

65 lines (64 loc) 2.01 kB
import { PropertyValues } from 'lit'; import { PktElement } from '../../base-elements/element'; import { IPktComboboxOption } from '../../shared-types/combobox'; declare global { interface HTMLElementTagNameMap { 'pkt-listbox': PktListbox; } } export interface IPktListbox { options: IPktComboboxOption[]; isOpen: boolean; disabled: boolean; includeSearch: boolean; isMultiSelect: boolean; allowUserInput: boolean; maxIsReached: boolean; customUserInput: string | null; searchPlaceholder: string | null; searchValue: string | null; maxLength: number; userMessage: string | null; } export declare class PktListbox extends PktElement implements IPktListbox { id: string; label: string | null; options: IPktComboboxOption[]; isOpen: boolean; disabled: boolean; includeSearch: boolean; isMultiSelect: boolean; allowUserInput: boolean; maxIsReached: boolean; customUserInput: string | null; searchPlaceholder: string | null; searchValue: string | null; maxLength: number; userMessage: string | null; private _selectedOptions; private typeahead; private _filteredOptions; connectedCallback(): void; disconnectedCallback(): void; updated(changedProperties: PropertyValues): void; attributeChangedCallback(name: string, _old: string | null, value: string | null): void; private get _hasOptions(); render(): import('lit-html').TemplateResult<1>; private renderCheckboxOrCheckIcon; private renderEmptyMessage; private renderList; private renderNewOptionBanner; private renderMaximumReachedBanner; private renderUserMessage; private renderSearch; private handleSearchInput; private handleSearchKeydown; private handleOptionKeydown; focusFirstOrSelectedOption(): void; private toggleOption; private selectAll; private closeOptions; private tabClose; filterOptions(): void; private handleTypeAhead; }