import type { ComponentType } from "react";
import type { EntityPickerOptions, IsFolder, ListProps, PickerState, TypeWithModel } from "../../types";
export interface NestedItemPickerProps<Id, Model extends string, Item extends TypeWithModel<Id, Model>, Query, Options extends EntityPickerOptions> {
    onFolderSelect: ({ folder }: {
        folder: Item;
    }) => void;
    onItemSelect: (item: Item) => void;
    options: Options;
    path: PickerState<Item, Query>;
    isFolder: IsFolder<Id, Model, Item>;
    listResolver: ComponentType<ListProps<Id, Model, Item, Query, Options>>;
    shouldDisableItem?: (item: Item) => boolean;
    shouldShowItem?: (item: Item) => boolean;
}
export declare function NestedItemPicker<Id, Model extends string, Item extends TypeWithModel<Id, Model>, Query, Options extends EntityPickerOptions>({ onFolderSelect, onItemSelect, options, path, isFolder, listResolver: ListResolver, shouldDisableItem, shouldShowItem, }: NestedItemPickerProps<Id, Model, Item, Query, Options>): import("react/jsx-runtime").JSX.Element;
