import { PlaitBoard, PlaitElement, RectangleClient } from '@plait/core'; import { Generator, GeneratorOptions } from './generator'; export interface ActiveGeneratorExtraData { selected: boolean; } export interface ActiveGeneratorOptions extends GeneratorOptions { getRectangle: (element: T) => RectangleClient; getStrokeWidth: () => number; getStrokeOpacity: () => number; hasResizeHandle: () => boolean; } export declare const createActiveGenerator: (board: PlaitBoard, options: ActiveGeneratorOptions) => ActiveGenerator; export declare class ActiveGenerator extends Generator> { board: PlaitBoard; options: ActiveGeneratorOptions; static key: string; hasResizeHandle: boolean; constructor(board: PlaitBoard, options: ActiveGeneratorOptions); canDraw(element: T, data: ActiveGeneratorExtraData): boolean; draw(element: T, data: ActiveGeneratorExtraData): SVGGElement; }