import * as Lib from "@metabase/embedding-sdk-react/dist/frontend/src/metabase-lib";
import type { CollectionItemModel, Database, DatabaseId, SchemaName, Table, TableId } from "@metabase/embedding-sdk-react/dist/frontend/src/metabase-types/api";
import type { QuestionPickerItem } from "../QuestionPicker";
import type { DataPickerFolderItem, DataPickerItem, DataPickerValue, DataPickerValueItem, ModelItem, QuestionItem, TablePickerValue } from "./types";
export declare const generateKey: (dbItem: DataPickerFolderItem | null, schemaItem: DataPickerFolderItem | null, tableItem: DataPickerValueItem | null) => string;
export declare const getDataPickerValue: (query: Lib.Query, stageIndex: number, joinable: Lib.Joinable) => DataPickerValue | undefined;
export declare const getDbItem: (databases: Database[] | undefined, dbId: DatabaseId | undefined) => DataPickerFolderItem | null;
export declare const getSchemaItem: (dbId: DatabaseId | undefined, dbName: string | undefined, schemaName: SchemaName | undefined, isOnlySchema: boolean) => DataPickerFolderItem | null;
export declare const getTableItem: (tables: Table[] | undefined, tableId: TableId | undefined) => DataPickerValueItem | null;
export declare const getSchemaDisplayName: (schemaName: SchemaName | undefined) => string;
export declare const isQuestionItem: (value: DataPickerValue | undefined) => value is QuestionItem;
export declare const isModelItem: (value: DataPickerValue | undefined) => value is ModelItem;
export declare const isMetricItem: (value: DataPickerValue | undefined) => value is ModelItem;
export declare const isTableItem: (value: DataPickerValue | undefined) => value is TablePickerValue;
export declare const isValueItem: (item: DataPickerItem) => item is DataPickerValueItem;
export declare const isFolderItem: (item: DataPickerItem) => item is DataPickerFolderItem;
export declare const createShouldShowItem: (models: CollectionItemModel[], databaseId?: DatabaseId) => (item: QuestionPickerItem) => boolean;
export declare const castQuestionPickerItemToDataPickerItem: (item: QuestionPickerItem) => DataPickerItem;
export declare const createQuestionPickerItemSelectHandler: (onItemSelect: (item: DataPickerItem) => void) => (questionPickerItem: QuestionPickerItem) => void;
