import type { Canvas as NodeCanvas } from "canvas";
export type CanvasTextBlockOptions = {
    color?: string;
    backgroundColor?: string;
    fontFamily?: string;
    fontSize?: number;
    lineHeight?: number;
    padding?: number;
    weight?: string;
    ellipsis?: boolean;
    overflow?: boolean;
};
export default class CanvasTextBlock {
    private canvas;
    private context;
    private x;
    private y;
    private width;
    private height;
    private options;
    constructor(canvas: HTMLCanvasElement | NodeCanvas, x: number, y: number, width: number, height: number, options?: CanvasTextBlockOptions);
    private getTextBlockMaxWidth;
    private getOptions;
    private getMaxLineCount;
    private setBackgroundColor;
    private getStartingLineXPos;
    private getStartingLineYPos;
    setText: (text: string) => void;
    private getLinesFromText;
}
