import * as React from 'react';
import { ElementModel, ElementIri } from '../../data/model';
import type { DataGraphStructure } from '../../editor/dataDiagramModel';
/**
 * Props for {@link SearchResults} component.
 *
 * @see {@link SearchResults}
 */
export interface SearchResultsProps {
    /**
     * List of entities to display.
     */
    items: ReadonlyArray<ElementModel>;
    /**
     * Set of selected entities from {@link items}.
     */
    selection: ReadonlySet<ElementIri>;
    /**
     * Handler to change a selected set of entities.
     */
    onSelectionChanged: (newSelection: ReadonlySet<ElementIri>) => void;
    /**
     * Text sub-string to highlight in the displayed entities.
     */
    highlightText?: string;
    /**
     * Whether to allow to drag entities from the list (e.g. onto the diagram canvas).
     *
     * @default true
     */
    useDragAndDrop?: boolean;
    /**
     * Whether to unselect previously selected item on click and require
     * to click with Control/Meta key to select multiple items.
     *
     * It is also always possible to select a range of items by holding Shift
     * when selecting a second item to select all other items in between as well.
     *
     * @default false
     */
    singleSelectOnClick?: boolean;
    /**
     * Additional components to render after the result items.
     */
    footer?: React.ReactNode;
}
/**
 * Utility component to display a list of selectable entities.
 *
 * @category Components
 */
export declare function SearchResults(props: SearchResultsProps): import("react/jsx-runtime").JSX.Element;
export declare function getAllPresentEntities(graph: DataGraphStructure): Set<ElementIri>;
//# sourceMappingURL=searchResults.d.ts.map