import { Paragraph, ParagraphOptions } from './Paragraph';
import { Table } from './Table';
import { LayoutGroup, BandContainer, OverlayContainer, LayoutGroupOptions } from './base';
import { IContainerMetrics } from './types';
import { Section } from './Section';
export type PageChild = Paragraph | Table;
export interface PageOptions extends LayoutGroupOptions {
    section: Section;
    pageIndex: number;
    initParagraph?: boolean;
    paragraphOptions?: ParagraphOptions;
}
export declare class Page extends LayoutGroup<PageChild> implements IContainerMetrics {
    section: Section;
    component: "paper";
    headerBand: BandContainer;
    footerBand: BandContainer;
    overlayBand: OverlayContainer;
    /** 当前页在所属 section 中的页码，从 1 开始 */
    /** 当前页的页码 */
    pageIndex: number;
    constructor(options: PageOptions);
    /**
     * 获取页面总宽度
     * 从所属章节的页面尺寸中获取
     */
    get width(): number;
    /**
     * 获取页面总高度
     * 从所属章节的页面尺寸中获取
     */
    get height(): number;
    /**
     * 获取页面内边距
     * 格式：[上, 右, 下, 左]，从所属章节中获取
     */
    get padding(): [number, number, number, number];
    /**
     * 原始页边距（来自 section，不含页眉/页脚内容占位）
     */
    get basePadding(): [number, number, number, number];
    /** 页眉内容高度 */
    get headerBandHeight(): number;
    /** 页脚内容高度 */
    get footerBandHeight(): number;
    /** 面板展示用：当前页眉实际占用的顶部 inset */
    get headerActualOccupiedHeight(): number;
    /** 面板展示用：当前页脚实际占用的底部 inset */
    get footerActualOccupiedHeight(): number;
    /**
     * 获取正文最大可用宽度
     * 总宽度 - 左右内边距
     */
    get contentMaxWidth(): number;
    /**
     * 获取正文最大可用高度
     * 总宽度 - 上下内边距
     */
    get contentMaxHeight(): number;
    /**
     * 获取当前页面所有子元素的总高度
     * 累加段落、表格等子组件的高度
     */
    getContentHeight(): number;
    /** 获取当前是第几页 */
    getCurrentIndex(): number;
    /**
     * 获取页面剩余可用空间高度
     * 正文最大高度 - 已占用内容高度
     */
    getRemainingSize(): number;
    layout(): void;
}
