/**
 * Loads a palette and sets the value of each input point to one of the colors.
 *
 * @remarks
 * This is using [https://github.com/kgolid/chromotome#readme](https://github.com/kgolid/chromotome#readme)
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { PaletteController } from '../utils/color/PaletteController';
import { NodeContext } from '../../poly/NodeContext';
import { AttribClass } from '../../../core/geometry/Constant';
import { SopType } from '../../poly/registers/nodes/types/Sop';
declare class PaletteSopParamsConfig extends NodeParamsConfig {
    /** @param the attribute class (geometry or object) */
    class: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param name of the palette */
    paletteName: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    /** @param click to set the node to the next palette */
    pickNext: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
    /** @param click to set the node to the previous palette */
    pickPrevious: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
    /** @param click to set the node to a random palette */
    pickRandom: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
    colorsCount: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param palette color 1 */
    color1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.COLOR>;
    /** @param palette color 2 */
    color2: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.COLOR>;
    /** @param palette color 3 */
    color3: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.COLOR>;
    /** @param palette color 4 */
    color4: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.COLOR>;
    /** @param palette color 5 */
    color5: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.COLOR>;
}
export declare class PaletteSopNode extends TypedSopNode<PaletteSopParamsConfig> {
    paramsConfig: PaletteSopParamsConfig;
    static type(): SopType;
    readonly paletteController: PaletteController<NodeContext.SOP>;
    initializeNode(): void;
    private _operation;
    cook(input_contents: CoreGroup[]): void;
    setAttribClass(attribClass: AttribClass): void;
    attribClass(): AttribClass;
}
export {};
