import { UmbContextBase } from '../../../libs/class-api/index.js'; import { UmbInteractionMemoryManager } from '../interaction-memory/index.js'; import type { UmbControllerHost } from '../../../libs/controller-api/index.js'; import type { UmbItemRepository } from '../repository/index.js'; import { type UmbModalToken, type UmbPickerModalData, type UmbPickerModalValue } from '../modal/index.js'; import type { UmbItemModel } from '../entity-item/index.js'; export declare class UmbPickerInputContext = UmbPickerModalData, PickerModalValueType extends UmbPickerModalValue = UmbPickerModalValue> extends UmbContextBase { #private; modalAlias?: string | UmbModalToken, PickerModalValueType>; repository?: UmbItemRepository; readonly selection: import("rxjs").Observable; readonly selectedItems: import("rxjs").Observable; readonly statuses: import("rxjs").Observable; readonly interactionMemory: UmbInteractionMemoryManager; get modalRoute(): import("rxjs").Observable; /** * Define a maximum amount of selected items in this input, for this input to be valid. * @returns {number} The maximum number of items required. */ get max(): number; set max(value: number); private _max; /** * Define a minimum amount of selected items in this input, for this input to be valid. * @returns {number} The minimum number of items required. */ get min(): number; set min(value: number); private _min; /** * Creates an instance of UmbPickerInputContext. * @param {UmbControllerHost} host - The host for the controller. * @param {string} repositoryAlias - The alias of the repository to use. * @param {(string | UmbModalToken, PickerModalValueType>)} modalAlias - The alias of the modal to use. * @memberof UmbPickerInputContext */ constructor(host: UmbControllerHost, repositoryAlias: string, modalAlias?: string | UmbModalToken, PickerModalValueType>); getSelection(): string[]; getSelectedItems(): PickedItemType[]; getSelectedItemByUnique(unique: string): PickedItemType | undefined; setSelection(selection: Array): void; /** * Sets the modal alias/token to use for the picker modal. * @param {string | UmbModalToken} modalAlias The modal alias or token. * @memberof UmbPickerInputContext */ setModalAlias(modalAlias: string | UmbModalToken, PickerModalValueType>): void; /** * Gets the modal alias/token used for the picker modal. * @returns {string | UmbModalToken, PickerModalValueType>} The modal alias or token. * @memberof UmbPickerInputContext */ getModalAlias(): string | UmbModalToken, PickerModalValueType> | undefined; /** * Sets modal data that will be used as base configuration for both direct openPicker() calls and modal route setup. * @param {Partial} modalData The modal data to store. * @memberof UmbPickerInputContext */ setModalData(modalData?: Partial): void; /** * Gets the stored modal data. * @returns {Partial | undefined} The stored modal data. * @memberof UmbPickerInputContext */ getModalData(): Partial | undefined; openPicker(pickerData?: Partial): Promise; protected _combinePickableFilters(internalFilter: (item: ItemType) => boolean, externalFilter?: (item: ItemType) => boolean): (item: ItemType) => boolean; protected _requestItemName(unique: string): Promise; requestRemoveItem(unique: string): Promise; protected _removeItem(unique: string): void; }