import { type UmbPickerModalData } from '../../../core/modal/index.js';
import { type UmbTreeItemModel } from '../../../core/tree/index.js';
import { UmbPickerInputContext } from '../../../core/picker-input/index.js';
import type { UmbControllerHost } from '../../../../libs/controller-api/index.js';
import { type UmbPickerDataSource } from '../../../core/picker-data-source/index.js';
import type { UmbItemModel } from '../../../core/entity-item/index.js';
import type { UmbConfigCollectionModel } from '../../../core/utils/index.js';
export declare class UmbEntityDataPickerInputContext extends UmbPickerInputContext<UmbItemModel, UmbItemModel | UmbTreeItemModel> {
    #private;
    constructor(host: UmbControllerHost);
    /**
     * Sets the data source API for the input context and updates the modal token accordingly.
     * @param {UmbPickerDataSource | undefined} api The data source API to set for the input context.
     * @memberof UmbEntityDataPickerInputContext
     */
    setDataSourceApi(api: UmbPickerDataSource | undefined): void;
    /**
     * Gets the data source API for the input context.
     * @returns {(UmbPickerDataSource | undefined)} The data source API for the input context.
     * @memberof UmbEntityDataPickerInputContext
     */
    getDataSourceApi(): UmbPickerDataSource | undefined;
    /**
     * Sets the data source config for the input context.
     * @param {(UmbPropertyEditorDataSourceConfigModel | undefined)} config The data source config.
     * @memberof UmbEntityDataPickerInputContext
     */
    setDataSourceConfig(config: UmbConfigCollectionModel | undefined): void;
    /**
     * Gets the data source config for the input context.
     * @returns {(UmbPropertyEditorDataSourceConfigModel | undefined)} The data source config.
     * @memberof UmbEntityDataPickerInputContext
     */
    getDataSourceConfig(): UmbConfigCollectionModel | undefined;
    /**
     * Sets the picker views configuration for the input context.
     * @param {(Array<{ alias: string }> | undefined)} views The picker views configuration.
     * @memberof UmbEntityDataPickerInputContext
     */
    setPickerViews(views: Array<{
        alias: string;
    }> | undefined): void;
    /**
     * Gets the picker views configuration for the input context.
     * @returns {(Array<{ alias: string }> | undefined)} The picker views configuration.
     * @memberof UmbEntityDataPickerInputContext
     */
    getPickerViews(): Array<{
        alias: string;
    }> | undefined;
    openPicker(pickerData?: Partial<UmbPickerModalData<UmbItemModel>>): Promise<void>;
}
