import { Component, CSSProperties, SVGProps } from 'react'; declare const defaultProps: Readonly<{ x: number; y: number; dx: number; dy: number; angle: number; width: number | undefined; height: number | undefined; lineHeight: number; capHeight: number; scaleToFit: false; textAnchor: "end" | "start" | "middle" | "inherit"; verticalAnchor: "end" | "start" | "middle"; }>; declare const getInitialState: (props: Props) => { wordsByLines: { words: string[]; width: number; }[]; }; type Props = { children: string; } & SVGProps & typeof defaultProps; type State = typeof getInitialState; export declare class Multiline extends Component { static defaultProps: Readonly<{ x: number; y: number; dx: number; dy: number; angle: number; width: number | undefined; height: number | undefined; lineHeight: number; capHeight: number; scaleToFit: false; textAnchor: "end" | "start" | "middle" | "inherit"; verticalAnchor: "end" | "start" | "middle"; }>; state: { wordsByLines: { words: string[]; width: number; }[]; }; spaceWidth: number; wordsWithComputedWidth: { word: string; width: number; }[]; componentDidMount(): void; componentDidUpdate(previousProps: Readonly): void; shouldCalculateWidth: (previousProps: Readonly) => boolean; calculateWordWidths: (props: Readonly) => { wordsWithComputedWidth: { word: string; width: number; }[]; spaceWidth: number; } | null; getStringWidth(str: string, style?: CSSProperties): number; calculateStringWidth(divElem: any, fn: any): any; updateWordsByLines(props: Readonly, needCalculate: boolean): void; updateWordsWithoutCalculate(props: Readonly): void; calculateWordsByLines(wordsWithComputedWidth: { word: string; width: number; }[], spaceWidth: number, lineWidth?: number): { words: string[]; width: number; }[]; render(): JSX.Element; } export {};