import type { UmbExtensionCollectionFilterModel, UmbExtensionCollectionItemModel } from '../collection/types.js';
import type { UmbExtensionPickerDataSourceConfigCollectionModel } from './types.js';
import type { UmbPickerCollectionDataSource, UmbPickerCollectionDataSourceTextFilterFeature } from '../../picker-data-source/index.js';
import { UmbControllerBase } from '../../../../libs/class-api/index.js';
import { type UmbConfigCollectionModel } from '../../utils/index.js';
export declare class UmbExtensionPickerDataSource extends UmbControllerBase implements UmbPickerCollectionDataSource<UmbExtensionCollectionItemModel> {
    #private;
    readonly features: {
        supportsTextFilter: import("rxjs").Observable<UmbPickerCollectionDataSourceTextFilterFeature>;
    };
    setConfig(config: UmbExtensionPickerDataSourceConfigCollectionModel | undefined): void;
    getConfig(): UmbConfigCollectionModel | undefined;
    requestCollection(args: UmbExtensionCollectionFilterModel): Promise<{
        data: {
            items: UmbExtensionCollectionItemModel[];
            total: number;
        };
    }>;
    requestItems(uniques: Array<string>): Promise<{
        asObservable: () => undefined;
        data?: undefined;
        error?: undefined;
    } | {
        data: import("../types.js").UmbExtensionItemModel[] | undefined;
        error: Error | import("../../resources/umb-error.js").UmbApiError | import("../../resources/umb-error.js").UmbCancelError | import("../../resources/umb-error.js").UmbError | undefined;
        asObservable: () => import("rxjs").Observable<import("../types.js").UmbExtensionItemModel[]> | undefined;
    }>;
}
export { UmbExtensionPickerDataSource as api };
