import type { IconName } from "../../ui";
import type { RecentItem, SearchResult } from "../../../metabase-types/api";
import { type SortingOptions } from "../../../metabase-types/api/sorting";
import type { ModelResult, RecentModel } from "./types";
export declare const isModel: (item: SearchResult) => boolean;
export declare const isRecentModel: (item: RecentItem) => item is RecentModel;
export declare const getModelDescription: (item: ModelResult) => string | null;
export declare const isValidSortColumn: (sort_column: string) => sort_column is keyof ModelResult;
export declare const getSecondarySortColumn: (sort_column: string) => keyof ModelResult;
export declare function sortModels(models: ModelResult[], sortingOptions: SortingOptions): ModelResult[];
/** Find the maximum number of recently viewed models to show.
 * This is roughly proportional to the number of models the user
 * has permission to see */
export declare const getMaxRecentModelCount: (modelCount: number) => 0 | 4 | 8;
export declare const getIcon: (item: unknown) => {
    name: IconName;
    color: string;
};
