import { type Length } from '../utilities/length.js'; import { type SectionProperties } from './section-properties.js'; import { type Border, type LineBorderType, type Shading } from './shared-properties.js'; import { type TextProperties } from './text-properties.js'; export declare function getTwipOrNull(length: Length | null | undefined): number | null; /** * All the formatting properties that can be given to a paragraph. * * Serializes to the element. * http://officeopenxml.com/WPparagraphProperties.php * http://www.datypic.com/sc/ooxml/e-w_pPr-6.html */ export declare type ParagraphProperties = { /** * The horizontal alignment of text in this paragraph. */ alignment?: 'left' | 'right' | 'center' | 'both' | null; /** * The level or indentation at which this paragraph lives as a table-of-contents item. */ outlineLvl?: number | null; /** * Show this paragraph according to the style that is referenced through this style identifier. */ style?: string | null; /** * Extra vertical whitespace before, after and/or between the lines of this paragraph. */ spacing?: { before?: Length | null; after?: Length | null; line?: Length | null; lineRule?: 'atLeast' | 'exactly' | 'auto' | null; afterAutoSpacing?: boolean | null; beforeAutoSpacing?: boolean | null; } | null; /** * Extra horizontal whitespace before or after this paragraph, or for the first line only. */ indentation?: { hanging?: Length | null; hangingChars?: number | null; firstLine?: Length | null; firstLineChars?: number | null; start?: Length | null; startChars?: number | null; end?: Length | null; endChars?: number | null; } | null; /** * The border on any side of this paragraph, or between other paragraphs of the same style. */ borders?: null | { top?: null | Border; left?: null | Border; bottom?: null | Border; right?: null | Border; between?: null | Border; }; /** * The background color of this paragraph, optionally with a pattern in a secondary color. */ shading?: null | Shading; /** * Configuration of the list bulleting given to this paragraph. */ listItem?: null | { numbering?: null | number; depth?: null | number; }; /** * Change tracking info for this paragraph. */ change?: null | ({ id: number; author: string; date: Date; } & Omit); /** * Formatting of the pilcrow signn */ pilcrow?: TextProperties | null; /** * Properties in styles for tabs. */ tabs?: Array>; }; export declare function paragraphPropertiesFromNode(node?: Node | null): ParagraphProperties; export declare function paragraphPropertiesToNode(data?: ParagraphProperties, sectionProperties?: SectionProperties | null): Node | null;