import { AbstractFormatter } from '../Formatter'; import { TypedValue } from '../DataPrimitive'; import { DataPoint } from '../DataPoint'; export interface SetColorChannelConfig { channel: string; value: string | number; } /** * SetColorChannel can be used to modify a given color. * * ```js * backgroundColor | setColorChannel(rowBGConfig)', // #330e00 * headerColor: '> backgroundColor | setColorChannel(headerColorConfig)', // #a82e00 * }} * dataSources={{ * primary: { * data: { * fields: [{ name: 'foo' }] * columns: [[100, 200]] * } * } * }} * /> * ``` * Leverages [Chromajs.set](https://gka.github.io/chroma.js/#color-set) to change the color * * ## Config Object * * **channel**: 'string' refers to channel of the color. For ex: 'hsl.l' or 'hsl.s' or 'rgb.b' * * **value**: 'string' or 'number'. Can be used to set absolute. For ex: setColorChannel({channel: 'hsl.h', value: 0}). Can be used as relative. For ex: setColorChannel({channel: 'lab.l', value: '*0.5'}) * */ export declare class SetColorChannel extends AbstractFormatter<'color', 'color'> { private readonly config; constructor(config: SetColorChannelConfig); protected formatTypedValue(p: DataPoint<'color'>): TypedValue<'color'>; }