import { RawElement } from '../types/raw';
import { WstyleDefinition } from './WstyleDefinition';
import { WdocDefaults } from './WdocDefaults';
/**
 * w:styles 根元素的原始 JSON 类型
 */
type WstylesXmlJson = RawElement & {
    name: 'w:styles';
};
/**
 * 样式集合类
 */
export declare class Wstyles {
    type: 'styles';
    raw?: WstylesXmlJson;
    _docDefaults?: WdocDefaults;
    _styleDefinitions: WstyleDefinition[];
    constructor(raw: WstylesXmlJson);
    /**
     * 从原始 XML JSON 转换为 Wstyles 实例
     */
    static fromXmlJson(json: WstylesXmlJson): Wstyles;
    /**
     * 将 Wstyles 实例转换为原始 XML JSON
     */
    toXmlJson(): WstylesXmlJson | undefined;
    /**
     * 根据 styleId 获取样式
     */
    getStyleDef(styleId: string): WstyleDefinition | undefined;
    /**
     * 获取完整的样式（包含继承链）
     */
    resolveStyleDef(styleId: string): WstyleDefinition | undefined;
    /**
     * 合并两个样式（子样式覆盖父样式）
     */
    private _mergeStyles;
    /**
     * 与文档默认样式合并
     */
    private _mergeWithDefaults;
    /**
     * 合并段落属性
     */
    private _mergeParagraphProperties;
    /**
     * 合并字符属性
     */
    private _mergeRunProperties;
}
export {};
