| import { TextAlign, TextVerticalAlign, ImageLike, Dictionary, MapToType, FontWeight, FontStyle } from '../core/types'; | 
| import TSpan from './TSpan'; | 
| import ZRImage from './Image'; | 
| import Rect from './shape/Rect'; | 
| import BoundingRect from '../core/BoundingRect'; | 
| import { MatrixArray } from '../core/matrix'; | 
| import Displayable, { DisplayableStatePropNames, DisplayableProps } from './Displayable'; | 
| import { ZRenderType } from '../zrender'; | 
| import Animator from '../animation/Animator'; | 
| import Transformable from '../core/Transformable'; | 
| import { ElementCommonState } from '../Element'; | 
| import { GroupLike } from './Group'; | 
| export interface TextStylePropsPart { | 
|     text?: string; | 
|     fill?: string; | 
|     stroke?: string; | 
|     strokeNoScale?: boolean; | 
|     opacity?: number; | 
|     fillOpacity?: number; | 
|     strokeOpacity?: number; | 
|     lineWidth?: number; | 
|     lineDash?: false | number[]; | 
|     lineDashOffset?: number; | 
|     borderDash?: false | number[]; | 
|     borderDashOffset?: number; | 
|     font?: string; | 
|     textFont?: string; | 
|     fontStyle?: FontStyle; | 
|     fontWeight?: FontWeight; | 
|     fontFamily?: string; | 
|     fontSize?: number | string; | 
|     align?: TextAlign; | 
|     verticalAlign?: TextVerticalAlign; | 
|     lineHeight?: number; | 
|     width?: number | string; | 
|     height?: number; | 
|     tag?: string; | 
|     textShadowColor?: string; | 
|     textShadowBlur?: number; | 
|     textShadowOffsetX?: number; | 
|     textShadowOffsetY?: number; | 
|     backgroundColor?: string | { | 
|         image: ImageLike | string; | 
|     }; | 
|     padding?: number | number[]; | 
|     margin?: number; | 
|     borderColor?: string; | 
|     borderWidth?: number; | 
|     borderRadius?: number | number[]; | 
|     shadowColor?: string; | 
|     shadowBlur?: number; | 
|     shadowOffsetX?: number; | 
|     shadowOffsetY?: number; | 
| } | 
| export interface TextStyleProps extends TextStylePropsPart { | 
|     text?: string; | 
|     x?: number; | 
|     y?: number; | 
|     width?: number; | 
|     rich?: Dictionary<TextStylePropsPart>; | 
|     overflow?: 'break' | 'breakAll' | 'truncate' | 'none'; | 
|     lineOverflow?: 'truncate'; | 
|     ellipsis?: string; | 
|     placeholder?: string; | 
|     truncateMinChar?: number; | 
| } | 
| export interface TextProps extends DisplayableProps { | 
|     style?: TextStyleProps; | 
|     zlevel?: number; | 
|     z?: number; | 
|     z2?: number; | 
|     culling?: boolean; | 
|     cursor?: string; | 
| } | 
| export declare type TextState = Pick<TextProps, DisplayableStatePropNames> & ElementCommonState; | 
| export declare type DefaultTextStyle = Pick<TextStyleProps, 'fill' | 'stroke' | 'align' | 'verticalAlign'> & { | 
|     autoStroke?: boolean; | 
| }; | 
| export declare const DEFAULT_TEXT_ANIMATION_PROPS: MapToType<TextProps, boolean>; | 
| interface ZRText { | 
|     animate(key?: '', loop?: boolean): Animator<this>; | 
|     animate(key: 'style', loop?: boolean): Animator<this['style']>; | 
|     getState(stateName: string): TextState; | 
|     ensureState(stateName: string): TextState; | 
|     states: Dictionary<TextState>; | 
|     stateProxy: (stateName: string) => TextState; | 
| } | 
| declare class ZRText extends Displayable<TextProps> implements GroupLike { | 
|     type: string; | 
|     style: TextStyleProps; | 
|     overlap: 'hidden' | 'show' | 'blur'; | 
|     innerTransformable: Transformable; | 
|     isTruncated: boolean; | 
|     private _children; | 
|     private _childCursor; | 
|     private _defaultStyle; | 
|     constructor(opts?: TextProps); | 
|     childrenRef(): (ZRImage | Rect | TSpan)[]; | 
|     update(): void; | 
|     updateTransform(): void; | 
|     getLocalTransform(m?: MatrixArray): MatrixArray; | 
|     getComputedTransform(): MatrixArray; | 
|     private _updateSubTexts; | 
|     addSelfToZr(zr: ZRenderType): void; | 
|     removeSelfFromZr(zr: ZRenderType): void; | 
|     getBoundingRect(): BoundingRect; | 
|     setDefaultTextStyle(defaultTextStyle: DefaultTextStyle): void; | 
|     setTextContent(textContent: never): void; | 
|     protected _mergeStyle(targetStyle: TextStyleProps, sourceStyle: TextStyleProps): TextStyleProps; | 
|     private _mergeRich; | 
|     getAnimationStyleProps(): MapToType<TextProps, boolean>; | 
|     private _getOrCreateChild; | 
|     private _updatePlainTexts; | 
|     private _updateRichTexts; | 
|     private _placeToken; | 
|     private _renderBackground; | 
|     static makeFont(style: TextStylePropsPart): string; | 
| } | 
| export declare function parseFontSize(fontSize: number | string): string; | 
| export declare function hasSeparateFont(style: Pick<TextStylePropsPart, 'fontSize' | 'fontFamily' | 'fontWeight'>): string | number | true; | 
| export declare function normalizeTextStyle(style: TextStyleProps): TextStyleProps; | 
| export default ZRText; |