import { AFM, Execution } from "@gooddata/typings";
import { IColorAssignment, IColorMapping, IColorPalette } from "../../../interfaces/Config";
import { IColorStrategy, ICreateColorAssignmentReturnValue } from "./colorFactory";
declare abstract class ColorStrategy implements IColorStrategy {
    protected palette: string[];
    protected fullColorAssignment: IColorAssignment[];
    protected outputColorAssignment: IColorAssignment[];
    constructor(colorPalette: IColorPalette, colorMapping: IColorMapping[], viewByAttribute: any, stackByAttribute: any, executionResponse: Execution.IExecutionResponse, afm: AFM.IAfm, occupiedMeasureBucketsLocalIdentifiers?: string[]);
    getColorByIndex(index: number): string;
    getColorAssignment(): IColorAssignment[];
    getFullColorAssignment(): IColorAssignment[];
    protected createPalette(colorPalette: IColorPalette, colorAssignment: IColorAssignment[], _viewByAttribute: any, _stackByAttribute: any): string[];
    protected abstract createColorAssignment(colorPalette: IColorPalette, colorMapping: IColorMapping[], viewByAttribute: any, stackByAttribute: any, executionResponse: Execution.IExecutionResponse, afm: AFM.IAfm, occupiedMeasureBucketsLocalIdentifiers?: string[]): ICreateColorAssignmentReturnValue;
}
export default ColorStrategy;
