import type { LabelStyleProps } from '../../elements/shapes/label';
import type { RuntimeContext } from '../../runtime/types';
import type { Prefix } from '../../types';
import type { BasePluginOptions } from '../base-plugin';
import { BasePlugin } from '../base-plugin';
declare const titleKey = "title";
declare const subtitleKey = "subtitle";
/**
* 标题的样式
*
* Title styles
*/
export type TitleStyle = Prefix>;
/**
* 副标题的样式
*
* Subtitle styles
*/
export type SubTitleStyle = Prefix>;
/**
* 标题插件配置项
*
* Title plugin options
*/
export interface TitleOptions extends BasePluginOptions, TitleStyle, SubTitleStyle {
/**
* 整个标题的高度
*
* whole title height
* @defaultValue 44
*/
size?: number;
/**
* 整个标题位于图的位置
*
* The entire title is located at the position of the graph
* @defaultValue 'left'
*/
align?: 'left' | 'center' | 'right';
/**
* 主标题、副标题之间的上下间距
*
* The y spacing between the title and subtitle
* @defaultValue 8
*/
spacing?: number;
/**
* 标题内边距
*
* whole title padding
* @defaultValue [16, 24, 0, 24]
*/
padding?: number | number[];
/**
* 标题内容
*
* title text
*/
[titleKey]: string;
/**
* 副标题内容
*
* subtitle text
*/
[subtitleKey]?: string | null;
/**
* 标题画布类名,传入外置容器时不生效
*
* The class name of the title canvas, which does not take effect when an external container is passed in
*/
className?: string;
}
export declare class Title extends BasePlugin {
private canvas;
private container;
private get padding();
constructor(context: RuntimeContext, options: TitleOptions);
private onRender;
private bindEvents;
private unbindEvents;
destroy(): void;
private updateCanvas;
private renderTitle;
}
export {};