import { RawElement } from '../types/raw';
import { WrunProperties } from './WrunProperties';
import { WparagraphProperties } from './WparagraphProperties';
export type StyleType = 'paragraph' | 'character' | 'table' | 'numbering';
/**
 * 样式定义类
 */
export declare class WstyleDefinition {
    styleId: string;
    type: StyleType;
    name?: string;
    basedOn?: string;
    next?: string;
    isDefault?: boolean;
    qFormat?: boolean;
    semiHidden?: boolean;
    uiPriority?: number;
    pPr?: WparagraphProperties;
    rPr?: WrunProperties;
    attrs?: any;
    constructor(styleId: string, type: StyleType, options?: Partial<WstyleDefinition>);
    /**
     * 从原始 XML JSON 转换为 WstyleDefinition 实例
     */
    static fromXmlJson(json: RawElement): WstyleDefinition | null;
    /**
     * 将 WstyleDefinition 实例转换为原始 XML JSON
     */
    static toXmlJson(style: WstyleDefinition): RawElement;
    /**
     * 更新样式属性
     */
    update(updates: Partial<WstyleDefinition>): void;
    /**
     * 克隆样式
     */
    clone(newStyleId?: string): WstyleDefinition;
}
