import { SmzDocumentFontFamilies, SmzDocumentRenderers, SmzDocumentState } from '../../modules/smz-documents/models/smz-document';
import { SmzDocumentContentBuilder } from './document-content';
import { SmzDocumentConfig } from '../../modules/smz-documents/models/smz-document-config';
import { SmzBuilderUtilities } from '../common/smz-builder-utilities';
import { SmzDocumentViewerBuilder } from './document-viewer';
import { HTMLOptions, jsPDFOptions } from 'jspdf';
import { SmzDocumentPageFormats } from '../../modules/smz-documents/models/smz-page-formats';
export declare class SmzDocumentBuilder extends SmzBuilderUtilities<SmzDocumentBuilder> {
    protected that: this;
    private defaultConfig;
    _state: SmzDocumentState;
    private applyConfig;
    private applyMargin;
    private initJsPDFOptions;
    private updateHtml2pdfOptions;
    private setPageConfig;
    private updateHTMLOptions;
    constructor(state?: SmzDocumentState);
    setPaddingCompensation(pixels: number): SmzDocumentBuilder;
    setPageOverlapCompensation(pixels: number): SmzDocumentBuilder;
    setUnit(unit: 'mm' | 'cm'): SmzDocumentBuilder;
    setRenderer(render: SmzDocumentRenderers): SmzDocumentBuilder;
    setQuality(scale: number): SmzDocumentBuilder;
    overrideDefaultConfigs(newConfig: SmzDocumentConfig): SmzDocumentBuilder;
    setPage(format: SmzDocumentPageFormats | number[], orientation: 'portrait' | 'p' | 'l' | 'landscape'): SmzDocumentBuilder;
    overrideJsPDFOptions(options: jsPDFOptions): SmzDocumentBuilder;
    overrideHTMLOptions(options: HTMLOptions): SmzDocumentBuilder;
    setFilename(filename: string): SmzDocumentBuilder;
    viewer(): SmzDocumentViewerBuilder;
    pageBreak(): SmzDocumentBuilder;
    content(): SmzDocumentContentBuilder;
    header(): SmzDocumentContentBuilder;
    debugMode(): SmzDocumentBuilder;
    hidePageNumbers(): SmzDocumentBuilder;
    hidePrintHour(): SmzDocumentBuilder;
    setSummaryText(text: string): SmzDocumentBuilder;
    setPreviewScale(scale: number): SmzDocumentBuilder;
    setFontFamily(fontFamily: SmzDocumentFontFamilies): SmzDocumentBuilder;
    setMargins(left?: number, right?: number, top?: number, bottom?: number): SmzDocumentBuilder;
    setLocale(language: 'pt-BR' | 'en-US'): SmzDocumentBuilder;
    build(): SmzDocumentState;
}
