import { Country, Iso2 } from "../../intl-tel-input/data";
import { AllOptions } from "../types/public-api";
export default class UI {
    private readonly options;
    private readonly id;
    private readonly isRTL;
    private readonly originalPaddingLeft;
    private countries;
    telInput: HTMLInputElement;
    countryContainer: HTMLElement;
    selectedCountry: HTMLElement;
    selectedCountryInner: HTMLElement;
    selectedDialCode: HTMLElement;
    dropdownArrow: HTMLElement;
    dropdownContent: HTMLElement;
    searchInput: HTMLInputElement;
    searchIcon: HTMLElement;
    searchClearButton: HTMLButtonElement;
    searchNoResults: HTMLElement;
    searchResultsA11yText: HTMLElement;
    countryList: HTMLElement;
    dropdown: HTMLElement;
    hiddenInput: HTMLInputElement;
    hiddenInputCountry: HTMLInputElement;
    highlightedItem: HTMLElement | null;
    selectedItem: HTMLElement | null;
    readonly hadInitialPlaceholder: boolean;
    constructor(input: HTMLInputElement, options: AllOptions, id: number);
    generateMarkup(countries: Country[]): void;
    private _prepareTelInput;
    private _createWrapperAndInsert;
    private _maybeBuildCountryContainer;
    private _buildDropdownContent;
    private _buildSearchUI;
    private _maybeUpdateInputPaddingAndReveal;
    private _maybeBuildHiddenInputs;
    private _appendListItems;
    updateInputPadding(): void;
    private _getHiddenSelectedCountryWidth;
    updateSearchResultsA11yText(): void;
    scrollTo(element: HTMLElement): void;
    highlightListItem(listItem: HTMLElement | null, shouldFocus: boolean): void;
    updateSelectedItem(iso2: Iso2 | ""): void;
    filterCountries(matchedCountries: Country[]): void;
    destroy(): void;
}
