import { RunProperty } from "./run-property"; import * as wasm from "./pkg"; import { TextAlignmentType } from "./json/bindings/TextAlignmentType"; import { Tab } from "./json/bindings/Tab"; import { AlignmentType } from "./json/bindings/AlignmentType"; import { TabValueType } from "./json/bindings/TabValueType"; import { TabLeaderType } from "./json/bindings/TabLeaderType"; export { AlignmentType } from "./json/bindings/AlignmentType"; export type SpecialIndentKind = "firstLine" | "hanging"; export type LineSpacingType = "atLeast" | "auto" | "exact"; export type FrameProperty = { h?: number; hRule?: string; hAnchor?: string; hSpace?: number; vAnchor?: string; vSpace?: number; w?: number; wrap?: string; x?: number; xAlign?: string; y?: number; yAlign?: string; }; export declare class LineSpacing { _before?: number; _after?: number; _beforeLines?: number; _afterLines?: number; _line?: number; _lineRule?: LineSpacingType; before(v: number): this; after(v: number): this; beforeLines(v: number): this; afterLines(v: number): this; line(v: number): this; lineRule(v: LineSpacingType): this; } export declare class ParagraphProperty { _align?: AlignmentType; _textAlignment?: TextAlignmentType; styleId?: string; indent?: { left: number; specialIndentKind?: SpecialIndentKind; specialIndentSize?: number; right?: number; }; numbering?: { id: number; level: number; }; lineSpacing?: LineSpacing; runProperty: RunProperty; keepNext: boolean; keepLines: boolean; pageBreakBefore: boolean; widowControl: boolean; paragraphPropertyChange?: ParagraphPropertyChange; outlineLvl?: number | null; _snapToGrid?: boolean; _adjustRightInd?: number; _tabs?: Tab[]; frameProperty?: FrameProperty; constructor(); tabs(tabs: { val: TabValueType | null; leader: TabLeaderType | null; pos: number | null; }[]): this; align(type: AlignmentType): this; textAlignment(type: TextAlignmentType): this; adjustRightInd(v: number): this; snapToGrid(v: boolean): this; style(id: string): this; } export declare const createDefaultParagraphProperty: () => ParagraphProperty; export declare const createParagraphAlignment: (align?: AlignmentType | undefined) => wasm.AlignmentType | null; export declare const createParagraphTextAlignment: (align?: TextAlignmentType | undefined) => wasm.TextAlignmentType | null; export declare class ParagraphPropertyChange { _author: string; _date: string; _property: ParagraphProperty; author(a: string): this; date(a: string): this; align(type: AlignmentType): this; textAlignment(type: TextAlignmentType): this; adjustRightInd(v: number): this; style(id: string): this; indent(left: number, specialIndentKind?: SpecialIndentKind, specialIndentSize?: number): this; numbering(id: number, level: number): this; } export declare const buildLineSpacing: (p: ParagraphProperty) => wasm.LineSpacing | null; export declare const setParagraphProperty: (target: T, property: ParagraphProperty) => T; export declare const createParagraphProperty: (property: ParagraphProperty) => wasm.ParagraphProperty;