import { DocumentLayout } from '../../layout/document-layout';
import { DocumentModel } from '../../model/document-model';
import { SubDocument } from '../../model/sub-document';
export declare class ManagerParams {
    name: string;
    func: () => string;
    constructor(name: string, func?: (() => string));
}
export declare class SimpleObjectsManager {
    private map;
    createdVariables: string[];
    constructor();
    add(obj: any, constructorName: string, params: ManagerParams[]): string;
}
export declare class Options {
    defineBorderInfo: boolean;
    defineTableBorderInfo: boolean;
    defineTableCellBorderInfo: boolean;
    defineFullTableProperties: boolean;
    defineFullTableRowProperties: boolean;
    defineFullTableCellProperties: boolean;
    constructor();
    enableSeparateBorderInfo(): this;
    enableSeparateTableBorderInfo(): this;
    enableSeparateTableCellBorderInfo(): this;
    enableFullTableProperties(): this;
    enableFullTableRowProperties(): this;
    enableFullTableCellProperties(): this;
}
export declare class Creator {
    get documentModel(): string;
    private str;
    private options;
    private idMap;
    private get tables();
    private get table();
    private tblIndex;
    private subDocument;
    private subDocumentVariableName;
    private model;
    private layout;
    static create(model: DocumentModel, layout?: DocumentLayout, options?: Options): string;
    constructor(model: DocumentModel, layout?: DocumentLayout, options?: Options);
    static getSubDocumentVariableName(sd: SubDocument): string;
    private escape;
    private fillFields;
    private fillBookmarks;
    private fillModel;
    private tableWidthUnit;
    private borderInfo;
    private tableBorders;
    private asEnum;
    private tableCellMargins;
    private tableProperties;
    private tableLookTypes;
    private tableStyle;
    private tableRowProperties;
    private tblCellRuns;
    private tableCellborders;
    private tableCellProperties;
    private internalTables;
    private mergeLastStrings;
    private tableCells;
    private fillTableRows;
    private fillTable;
    private fillTables;
    private fillSections;
    private fillParagraphs;
    private fillChunks;
    private size;
    private point;
    private anchorInfo;
    private shape;
    private textBoxProps;
    private fillRuns;
    private pushRectangleProps;
    private fillPage;
    private fillPageArea;
    private fillColumn;
    private fillRow;
    private fillBox;
}
