ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
60 lines (59 loc) • 2.05 kB
TypeScript
import type { DynamicContext } from 'ag-charts-core';
import { BaseProperties } from 'ag-charts-core';
import type { AgCaptionTooltipRendererParams, FontStyle, FontWeight, Renderer, TextAlign, TextOrSegments, TextWrap } from 'ag-charts-types';
import type { ChartRegistry } from '../module/moduleContext';
import { RotatableText } from '../scene/shape/text';
import type { CaptionLike } from './captionLike';
type CaptionNodeDatum = {
visible: boolean;
text: TextOrSegments | undefined;
textBaseline: string;
x: number;
y: number;
rotationCenterX: number;
rotationCenterY: number;
rotation: number;
};
declare class CaptionTooltipProperties extends BaseProperties {
visible?: 'auto' | 'always' | 'never';
text?: string;
renderer?: Renderer<AgCaptionTooltipRendererParams, never>;
}
export declare class Caption extends BaseProperties implements CaptionLike {
static readonly className = "Caption";
readonly id: string;
readonly node: RotatableText<CaptionNodeDatum>;
enabled: boolean;
text?: TextOrSegments;
textAlign: TextAlign;
fontStyle?: FontStyle;
fontWeight?: FontWeight;
fontSize: number;
fontFamily: string;
color?: string;
spacing?: number;
maxWidth?: number;
maxHeight?: number;
wrapping: TextWrap;
truncate: boolean;
padding: number;
layoutStyle: 'block' | 'overlay';
readonly tooltip: CaptionTooltipProperties;
private truncated;
private proxyText?;
private proxyTextListeners?;
private lastProxyTextContent?;
private lastProxyBBox?;
registerInteraction(moduleCtx: DynamicContext<ChartRegistry>, where: 'beforebegin' | 'afterend'): () => void;
computeTextWrap(containerWidth: number, containerHeight: number): void;
private updateA11yText;
private getEffectiveTooltipVisible;
private getTooltipContent;
private showTooltip;
private handleMouseMove;
private handleFocus;
private handleTooltipHide;
destroy(): void;
private destroyProxyText;
}
export {};