import { type DataFrame } from '@grafana/data';
import { type VizLegendOptions } from '@grafana/schema';
import { type VizLayoutLegendProps } from '../VizLayout/VizLayout';
import { type UPlotConfigBuilder } from './config/UPlotConfigBuilder';
interface PlotLegendProps extends VizLegendOptions, Omit<VizLayoutLegendProps, 'children'> {
    data: DataFrame[];
    config: UPlotConfigBuilder;
    enableFacetedFilter?: boolean;
    facetedFilterPinned?: boolean;
    onPinnedToSidebarChange?: (pinned: boolean) => void;
}
/**
 * mostly duplicates logic in PlotLegend below :(
 *
 * @internal
 */
export declare function hasVisibleLegendSeries(config: UPlotConfigBuilder, data: DataFrame[]): boolean;
export declare const PlotLegend: import("react").MemoExoticComponent<({ data, config, placement, calcs, displayMode, limit, enableFacetedFilter, facetedFilterPinned, onPinnedToSidebarChange, ...vizLayoutLegendProps }: PlotLegendProps) => import("react/jsx-runtime").JSX.Element>;
export {};
