import { default as Konva } from 'konva';
export declare class TextUtil {
    /** 字体度量缓存限制 */
    private static readonly FONT_METRICS_CACHE_LIMIT;
    /** 布局大小缓存限制 */
    private static readonly LAYOUT_SIZE_CACHE_LIMIT;
    private static fontMetricsCache;
    private static layoutSizeCache;
    /**
     * 验证中文字符
     * @param char
     * @returns
     */
    static isHanChar(char: string): boolean;
    /**
     * 计算度量 - 基于 JSON 序列化的缓存（LRU）
     * 将最终的 config 序列化为缓存键，相同配置直接返回缓存结果
     * 最近使用的项会被移到末尾，超限时删除最古老的项
     * @param payload
     * @returns
     */
    static getFontMetrics(payload: Konva.TextConfig): {
        ascent: number;
        descent: number;
    };
    /**
     * 计算单个字符布局大小 - 基于 JSON 序列化的缓存（LRU）
     * @param payload
     * @returns
     */
    static getLayoutSize(payload: Konva.TextConfig): {
        width: number;
        height: number;
    };
    /**
     * 清除度量结果缓存
     */
    static clearMeasureCache(): void;
    /**
     * 获取缓存大小信息
     * @returns 返回测量缓存的大小 {fontMetrics, layoutSize}
     */
    static getMeasureCacheSize(): {
        fontMetrics: number;
        layoutSize: number;
    };
}
