import type { ComponentOptions, PrefixStyleProps } from '../../../core'; import { Component } from '../../../core'; import type { GroupStyleProps, PathStyleProps, RectStyleProps } from '../../../shapes'; import { Group } from '../../../shapes'; export type Interpolate = (val: number) => T; export type RibbonStyleProps = GroupStyleProps & PrefixStyleProps & PrefixStyleProps & { block?: boolean; color: string[] | Interpolate; length: number; orientation?: 'horizontal' | 'vertical'; /** partition of the block ,the length of it is the block count */ partition?: number[]; /** select area, 0~1 */ range?: [number, number]; size: number; type?: 'size' | 'color'; }; export type RibbonOptions = ComponentOptions; type RequiredRibbonStyleProps = Required; export declare class Ribbon extends Component { constructor(options: RibbonOptions); render(attribute: RequiredRibbonStyleProps, container: Group): void; } export {};