import { TagInputConfig } from './types';
export type { TagInputConfig, TagSuggestion } from './types';
export declare class TagInput {
    readonly el: HTMLElement;
    private readonly inputEl;
    private readonly tagsContainer;
    private readonly dropdownEl;
    private readonly listboxId;
    private readonly inputId;
    private config;
    private tags;
    private filteredSuggestions;
    private highlightedIndex;
    private isDropdownOpen;
    private isDestroyed;
    private debounceTimer;
    private readonly handleDocumentClick;
    private readonly handleInputKeydown;
    private readonly handleInputInput;
    private readonly handleInputPaste;
    private readonly handleInputFocus;
    constructor(config: TagInputConfig);
    getTags(): string[];
    setTags(tags: string[]): void;
    addTag(tag: string): boolean;
    removeTag(tag: string): boolean;
    destroy(): void;
    private buildRootClass;
    private isMaxReached;
    private renderTags;
    private createChipEl;
    private findSuggestion;
    private updateInputState;
    private onInputKeydown;
    private onInputChange;
    private fetchSuggestions;
    private filterExisting;
    private renderSuggestions;
    private showLoadingState;
    private openDropdown;
    private closeDropdown;
    private setHighlightedIndex;
    private onPaste;
}
//# sourceMappingURL=index.d.ts.map