import type { RangeLegendColor, RangeColorLegendConfigInterface } from '@cosmograph/ui'; export interface CosmographRangeColorLegendConfigInterface { /** * Whether to use the data from the links instead of the points for the size legend. * Default: `false` */ useLinksData?: boolean; /** * Whether to select the points/links with the corresponding values when clicking on the legend elements. * Default: `true` */ selectOnClick?: boolean; /** * Specifies the number of color gradations in the range legend. * * The `CosmographRangeColorLegend` divides the current accessor's extent into this many discrete steps. * Each step corresponds to a color value derived from the current {@link CosmographConfig.pointColorByFn pointColorByFn} or {@link CosmographConfig.linkColorByFn linkColorByFn}. * * Overridden if `overrideColors` is provided by `overrideColors` length. * * Default: 10 */ steps?: number; /** * The color scheme for the color range legend, specified as an array of colors. * The first color represents the start of the range, and the last color represents the end of the range. * Can be an array of `[number, number, number, number]` or `string`. * The colors can be specified as a 4-element array of [r, g, b, a] values (where each component is between 0 and 255), * or as a CSS color string (e.g. '#ff0000' for red). */ overrideColors?: RangeLegendColor[]; /** * When true and `overrideColors` is provided, displays the legend colors as discrete bands * instead of a continuous gradient. This creates clear separation between color categories. * Has no effect if `overrideColors` is not provided. * * Default: false */ useDiscreteColors?: boolean; /** * Whether to use quantiles to get size legend min/max. * Has no effect if {@link useLinksData} is `false` and active point color strategy is {@link PointColorStrategy.PreciseDegree} (won't use quantiles) or {@link PointColorStrategy.Degree} (will always use quantiles). */ useQuantiles?: boolean; /** * Preserves the selection on unmount. * * @default false */ preserveSelectionOnUnmount?: boolean; /** * The label for the legend. Can be a string or a function that returns a string based on an accessor. */ labelResolver?: string | ((accessor?: string) => string); } export declare const defaultCosmographRangeColorLegendConfig: CosmographRangeColorLegendConfig; export interface CosmographRangeColorLegendConfig extends CosmographRangeColorLegendConfigInterface, Omit { }