import type { IRenderableSeries } from "../Visuals/RenderableSeries/IRenderableSeries";
import type { IFillPaletteProvider, IStrokePaletteProvider, TPointMarkerArgb } from "./IPaletteProvider";
import { EFillPaletteMode, EStrokePaletteMode } from "./IPaletteProvider";
import type { IPointMetadata } from "./IPointMetadata";
export interface IColorMetadata extends IPointMetadata {
    stroke?: string | number;
    fill?: string | number;
}
export declare class MetadataPaletteProvider implements IFillPaletteProvider, IStrokePaletteProvider {
    strokePaletteMode: EStrokePaletteMode;
    fillPaletteMode: EFillPaletteMode;
    /**
     * @inheritDoc
     */
    onAttached(parentSeries: IRenderableSeries): void;
    /**
     * @inheritDoc
     */
    onDetached(): void;
    /**
     * @inheritDoc
     */
    overrideFillArgb(xValue: number, yValue: number, index: number, opacity?: number, metadata?: IColorMetadata): number;
    /**
     * @inheritDoc
     */
    overrideStrokeArgb(xValue: number, yValue: number, index: number, opacity?: number, metadata?: IColorMetadata): number;
    /**
     * @inheritDoc
     */
    overridePointMarkerArgb(xValue: number, yValue: number, index: number, opacity?: number, metadata?: IColorMetadata): TPointMarkerArgb;
}
