@antv/s2
Version:
effective spreadsheet render core lib
30 lines (29 loc) • 1.55 kB
TypeScript
/**
* Utils to render all g supported shape
* https://github.com/antvis/g
*/
import { Circle, Group, Line, Polygon, Polyline, Rect, type CircleStyleProps, type DisplayObject, type LineStyleProps, type PolygonStyleProps, type PolylineStyleProps, type RectStyleProps, type TextStyleProps } from '@antv/g';
import { GuiIcon, type GuiIconCfg } from '../common/icons/gui-icon';
import { CustomText } from '../engine/CustomText';
export declare function renderRect(group: Group, style: RectStyleProps): Rect;
export declare function renderPolygon(group: Group, style: PolygonStyleProps): Polygon;
export declare function renderPolyline(group: Group, style: PolylineStyleProps): Polyline;
export declare function renderCircle(group: Group, style: CircleStyleProps): Circle;
/**
* @description 如果在单元格内绘制, 是使用 cell.renderTextShape(options)
*/
export declare function renderText<T>(options: {
group: Group;
textShape?: DisplayObject;
style: TextStyleProps;
appendInfo?: T;
}): CustomText;
export declare function renderLine(group: Group, options: LineStyleProps): Line;
export declare function updateShapeAttr(shapeGroup: DisplayObject | undefined | (DisplayObject | undefined)[], styleName: DisplayObject['style'], styleValue: string | number): void;
export declare function renderIcon(group: Group, iconCfg: GuiIconCfg): GuiIcon;
export declare function renderTreeIcon(options: {
group: Group;
isCollapsed?: boolean | null;
iconCfg: Omit<GuiIconCfg, 'name'>;
onClick?: () => void;
}): GuiIcon;