import { ComponentOption, ZRColor, VisualOptionFixed } from '../../util/types'; import ComponentModel from '../../model/Component'; import BrushTargetManager from '../helper/BrushTargetManager'; import { BrushCoverCreatorConfig, BrushMode, BrushCoverConfig, BrushDimensionMinMax, BrushAreaRange, BrushTypeUncertain, BrushType } from '../helper/BrushController'; import { ModelFinderObject } from '../../util/model'; export interface BrushAreaParam extends ModelFinderObject { brushType: BrushCoverConfig['brushType']; id?: BrushCoverConfig['id']; range?: BrushCoverConfig['range']; panelId?: BrushCoverConfig['panelId']; coordRange?: BrushAreaRange; coordRanges?: BrushAreaRange[]; } export interface BrushAreaParamInternal extends BrushAreaParam { brushMode: BrushMode; brushStyle: BrushCoverConfig['brushStyle']; transformable: BrushCoverConfig['transformable']; removeOnClick: BrushCoverConfig['removeOnClick']; z: BrushCoverConfig['z']; __rangeOffset?: { offset: BrushDimensionMinMax | BrushDimensionMinMax[]; xyMinMax: BrushDimensionMinMax[]; }; } export declare type BrushToolboxIconType = BrushType | 'keep' | 'clear'; export interface BrushOption extends ComponentOption, ModelFinderObject { toolbox?: BrushToolboxIconType[]; brushLink?: number[] | 'all' | 'none'; throttleType?: 'fixRate' | 'debounce'; throttleDelay?: number; inBrush?: VisualOptionFixed; outOfBrush?: VisualOptionFixed; brushType?: BrushTypeUncertain; brushStyle?: { borderWidth?: number; color?: ZRColor; borderColor?: ZRColor; }; transformable?: boolean; brushMode?: BrushMode; removeOnClick?: boolean; } declare class BrushModel extends ComponentModel { static type: "brush"; type: "brush"; static dependencies: string[]; static defaultOption: BrushOption; areas: BrushAreaParamInternal[]; brushType: BrushTypeUncertain; brushOption: BrushCoverCreatorConfig; brushTargetManager: BrushTargetManager; optionUpdated(newOption: BrushOption, isInit: boolean): void; setAreas(areas?: BrushAreaParam[]): void; setBrushOption(brushOption: BrushCoverCreatorConfig): void; } export default BrushModel;