import { type WorkDocumentPageMargins } from './work-document-page-margins'; import { type WorkDocumentPageBorders } from './work-document-page-borders'; import { type WorkDocumentPageGeometry, type WorkDocumentPaperSource } from './work-document-page-size'; import type { WorkDocumentColumns, WorkDocumentGrid, WorkDocumentLnNumType, WorkDocumentPaperSize, WorkDocumentFootnotePr, WorkDocumentEndnotePr, WorkDocumentPgNumType, WorkDocumentSectionBreakType, WorkDocumentSectionTextDirection, WorkDocumentSectionVerticalAlign } from './work-types'; export declare const DOCUMENT_SECTION_CHANGE_ATTRIBUTES: readonly ["sectionChangeKind", "sectionChangeId", "sectionChangeAuthor", "sectionChangeDate", "sectionChangeBefore"]; /** * Column layout for reviewable section-property revisions. * Equal-width snapshots omit `custom`; unequal-width snapshots include it. */ export interface DocumentSectionColumnsSnapshot { count: number; spacing: number; separator: boolean; custom?: Array<{ widthPercent: number; spacing: number; }>; } /** @deprecated Use {@link DocumentSectionColumnsSnapshot}. */ export type DocumentSectionEqualColumnsSnapshot = DocumentSectionColumnsSnapshot; /** * Prior snapshot for reviewable section-property revisions. * At least one of orientation, pageGeometry, pageMargins, paperSource, * columns, differentFirstPage, rtlGutter, documentGrid, lnNumType, pgNumType, * formProt, noEndnote, verticalAlign, textDirection, bidi, footnotePr, * endnotePr, breakAfter, or pageBorders must be present. */ export interface DocumentSectionFormattingSnapshot { orientation?: 'portrait' | 'landscape'; /** Section break type (`w:type` / ST_SectionMark); current-section field. */ breakAfter?: WorkDocumentSectionBreakType; pageGeometry?: WorkDocumentPageGeometry; pageMargins?: WorkDocumentPageMargins; paperSource?: WorkDocumentPaperSource; /** Bounded section page borders (`w:pgBorders`). */ pageBorders?: WorkDocumentPageBorders; columns?: DocumentSectionColumnsSnapshot; differentFirstPage?: boolean; rtlGutter?: boolean; documentGrid?: WorkDocumentGrid; lnNumType?: WorkDocumentLnNumType; pgNumType?: WorkDocumentPgNumType; formProt?: boolean; noEndnote?: boolean; verticalAlign?: WorkDocumentSectionVerticalAlign; textDirection?: WorkDocumentSectionTextDirection; bidi?: boolean; footnotePr?: WorkDocumentFootnotePr; endnotePr?: WorkDocumentEndnotePr; } export declare function serializeDocumentSectionFormatting(attributes: { orientation?: unknown; breakAfter?: unknown; pageGeometry?: unknown; pageMargins?: unknown; paperSource?: unknown; pageBorders?: unknown; columns?: unknown; differentFirstPage?: unknown; rtlGutter?: unknown; documentGrid?: unknown; lnNumType?: unknown; pgNumType?: unknown; formProt?: unknown; noEndnote?: unknown; verticalAlign?: unknown; textDirection?: unknown; bidi?: unknown; footnotePr?: unknown; endnotePr?: unknown; }): string; export declare function parseDocumentSectionFormatting(value: unknown): DocumentSectionFormattingSnapshot | null; export declare function normalizeDocumentSectionFormattingSnapshot(attributes: { orientation?: unknown; breakAfter?: unknown; pageGeometry?: unknown; pageMargins?: unknown; paperSource?: unknown; pageBorders?: unknown; columns?: unknown; differentFirstPage?: unknown; rtlGutter?: unknown; documentGrid?: unknown; lnNumType?: unknown; pgNumType?: unknown; formProt?: unknown; noEndnote?: unknown; verticalAlign?: unknown; textDirection?: unknown; bidi?: unknown; footnotePr?: unknown; endnotePr?: unknown; }): DocumentSectionFormattingSnapshot | null; export declare function clearDocumentSectionChangeAttributes(attributes: Record): Record; export declare function restoredDocumentSectionAttributes(attributes: Record, serialized: unknown): Record | null; export declare function sectionFormattingSnapshotFromLayout(layout: { orientation: 'portrait' | 'landscape'; breakAfter?: WorkDocumentSectionBreakType; margins: { top: number; right: number; bottom: number; left: number; }; pageMargins?: WorkDocumentPageMargins; pageGeometry?: WorkDocumentPageGeometry; pageSize?: WorkDocumentPaperSize; paperSource?: WorkDocumentPaperSource; columns?: WorkDocumentColumns; pageChrome?: unknown; documentGrid?: WorkDocumentGrid; lnNumType?: WorkDocumentLnNumType; pgNumType?: WorkDocumentPgNumType; formProt?: boolean; noEndnote?: boolean; verticalAlign?: WorkDocumentSectionVerticalAlign; textDirection?: WorkDocumentSectionTextDirection; bidi?: boolean; footnotePr?: WorkDocumentFootnotePr; endnotePr?: WorkDocumentEndnotePr; pageBorders?: WorkDocumentPageBorders; pageNumberStart?: number; headerText?: string; footerText?: string; showPageNumbers?: boolean; }): DocumentSectionFormattingSnapshot | null; export declare function serializeDocumentFootnotePr(value: WorkDocumentFootnotePr): string; export declare function parseDocumentFootnotePr(value: unknown): WorkDocumentFootnotePr | undefined; export declare function serializeDocumentEndnotePr(value: WorkDocumentEndnotePr): string; export declare function parseDocumentEndnotePr(value: unknown): WorkDocumentEndnotePr | undefined;