import { type ComponentType } from 'react'; import { type DataSourceInstanceSettings } from '@grafana/data'; import { type DataSourceRef } from '@grafana/schema'; /** * Component props description for the {@link DataSourcePicker} * * @internal */ export interface DataSourcePickerProps { onChange: (ds: DataSourceInstanceSettings) => void; current: DataSourceRef | string | undefined | null; hideTextValue?: boolean; onBlur?: () => void; autoFocus?: boolean; openMenuOnFocus?: boolean; placeholder?: string; tracing?: boolean; mixed?: boolean; dashboard?: boolean; metrics?: boolean; type?: string | string[]; annotations?: boolean; variables?: boolean; alerting?: boolean; pluginId?: string; /** If true,we show only DSs with logs; and if true, pluginId shouldnt be passed in */ logs?: boolean; noDefault?: boolean; width?: number; inputId?: string; filter?: (dataSource: DataSourceInstanceSettings) => boolean; onClear?: () => void; invalid?: boolean; disabled?: boolean; isLoading?: boolean; } type DataSourcePickerComponentType = ComponentType; /** * Used to bootstrap the DataSourcePicker during application start, so the * picker exposed to plugins renders the core Grafana implementation. * * @internal */ export declare function setDataSourcePicker(component: DataSourcePickerComponentType | undefined): void; /** * Component to be able to select a datasource from the list of installed and enabled * datasources in the current Grafana instance. * * @internal */ export declare function DataSourcePicker(props: DataSourcePickerProps): import("react").JSX.Element; /** * The original Select-based data source picker implementation. Rendered by * {@link DataSourcePicker} when no implementation has been set via * {@link setDataSourcePicker}, and by core Grafana when the * `grafana.unifiedDataSourcePicker` feature toggle is disabled. * * @internal */ export declare const LegacyDataSourcePicker: import("react").MemoExoticComponent<({ onChange, current, hideTextValue, onBlur, autoFocus, openMenuOnFocus, placeholder, tracing, mixed, dashboard, metrics, type, annotations, variables, alerting, pluginId, logs, noDefault, width, inputId, filter, onClear, invalid, disabled, isLoading, }: DataSourcePickerProps) => import("react").JSX.Element>; export {};