import { BrushSelectionMode_$type } from "./BrushSelectionMode";
import { IgrBrushScale } from "./igr-brush-scale";
import { CustomPaletteBrushScale } from "./CustomPaletteBrushScale";
import { ensureEnum, brushToString } from "igniteui-react-core/ES2015/componentUtil";
/**
 * Represents a brush scale that uses index-based brush selection mode.
*/
export class IgrCustomPaletteBrushScale extends IgrBrushScale {
    createImplementation() {
        return new CustomPaletteBrushScale();
    }
    get i() {
        return this._implementation;
    }
    constructor(props) {
        super(props);
    }
    /**
     * Gets or sets the brush selection mode.
    */
    get brushSelectionMode() {
        return this.i.brushSelectionMode;
    }
    set brushSelectionMode(v) {
        this.i.brushSelectionMode = ensureEnum(BrushSelectionMode_$type, v);
    }
    /**
     * Checks if this scale is ready for useage with a series
    */
    get isReady() {
        return this.i.isReady;
    }
    getBrush1(index, total) {
        let iv = this.i.getBrush1(index, total);
        return brushToString(iv);
    }
}
