import { RawElement } from '../types';
import { ModelGroup, ModelNode, ModelGroupOptions } from '../base';
export type WlayoutXmlJson = RawElement & {
    name: 'w:lyt';
    /** 布局坐标信息 */
    '@layout'?: {
        x: number;
        y: number;
        width?: number;
        height?: number;
        zIndex?: number;
    };
};
export interface WlayoutOptions extends ModelGroupOptions<ModelNode> {
    raw?: WlayoutXmlJson;
    x?: number;
    y?: number;
    width?: number;
    height?: number;
    zIndex?: number;
}
/**
 * 布局容器
 */
export declare class Wlayout extends ModelGroup<ModelNode> {
    /** 节点名称 */
    name: 'w:lyt';
    /** 节点类型 */
    type: "element";
    /** 原始 XML */
    raw?: WlayoutXmlJson;
    x: number;
    y: number;
    width?: number;
    height?: number;
    zIndex: number;
    parent?: ModelNode;
    constructor(options: WlayoutOptions);
    /**
     * XML -> Wlayout
     */
    static fromXmlJson(json: WlayoutXmlJson): Wlayout;
    /**
     * XML JSON 输出
     */
    toXmlJson(): WlayoutXmlJson;
    /** 获取组件信息 */
    getWrPageWidget(): RawElement | ModelNode | undefined;
    /**
     * 调整容器尺寸
     * @param width 新宽度
     * @param height 新高度
     */
    resize(pos: {
        x?: number;
        y?: number;
        width?: number;
        height?: number;
    }): void;
    /**
     * 从模板创建 layout
     */
    static fromTemplate(opts: {
        x: number;
        y: number;
        width: number;
        height: number;
        zIndex: number;
    }): Wlayout;
}
