import { PropertyValues, TemplateResult } from 'lit';
import { SearchResultType, Address, InputSize, Standard, TokenType } from '../../shared/types';
export type SearchResult = {
    id: string;
    type: SearchResultType;
    address?: Address;
    value?: string | SearchResult[];
    image?: string;
    name?: string;
    symbol?: string;
    standard?: Standard;
    status?: boolean;
    supply?: string;
    decimals?: number;
    tokenType?: TokenType;
};
declare const LuksoSearch_base: typeof import('lit').LitElement;
/**
 * A search input with debounced search events and a rich results dropdown supporting multiple result types (profile, asset, app, universal-name, recent-search, string).
 */
export declare class LuksoSearch extends LuksoSearch_base {
    value: string;
    name: string;
    placeholder: string;
    label: string;
    groupLabels: string;
    availableText: string;
    unavailableText: string;
    autocomplete: string;
    id: string;
    description: string;
    error: string;
    customClass: string;
    isFullWidth: boolean;
    isReadonly: boolean;
    isDisabled: boolean;
    autofocus: boolean;
    borderless: boolean;
    results: string;
    rightIcon: string;
    debounce: number;
    isSearching: boolean;
    noResultsText: string;
    showNoResults: boolean;
    hideLoading: boolean;
    hasReset: boolean;
    keepValueOnEscapeHit: boolean;
    selected: number | undefined;
    size: InputSize;
    maxHeight: any;
    withGroupLabels: boolean;
    private isDebouncing;
    private debounceTimer;
    private resultsParsed;
    constructor();
    private styles;
    private dropdownSize;
    private profileSize;
    private usernameSize;
    private textSize;
    connectedCallback(): void;
    disconnectedCallback(): void;
    willUpdate(changedProperties: PropertyValues<this>): void;
    resultsTemplate(): TemplateResult<1>;
    noResultsTemplate(): TemplateResult<1>;
    loadingTemplate(): TemplateResult<1>;
    resultStringTemplate(result: SearchResult, index: number): TemplateResult<1>;
    resultUniversalNameTemplate(result: SearchResult, index: number): TemplateResult<1>;
    resultProfileTemplate(result: SearchResult, index: number): TemplateResult<1>;
    resultAssetTemplate(result: SearchResult, index: number): TemplateResult<1>;
    resultAppTemplate(result: SearchResult, index: number): TemplateResult<1>;
    resultRecentSearchTemplate(result: SearchResult): TemplateResult<1>;
    private handleOutsideDropdownClick;
    private handleDropdownKeydown;
    private handleSelect;
    private handleBlur;
    private handleInputClick;
    private handleKeyUp;
    private handleReset;
    private searchDebounce;
    private handleSearch;
    render(): TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        'lukso-search': LuksoSearch;
    }
}
export {};
//# sourceMappingURL=index.d.ts.map