import { IProcessor } from '../../common/processor';
import { BookmarkApi } from './bookmark';
import { CharacterPropertiesApi, ICharacterProperties } from './character-properties';
import { BookmarkCollection } from './collections/bookmark-collection';
import { FieldCollection } from './collections/field-collection';
import { FontCollection } from './collections/fonts-collection';
import { HyperlinkCollection } from './collections/hyperlink-collection';
import { ListCollection } from './collections/numbered-list-collection';
import { ParagraphCollection } from './collections/paragraph-collection';
import { RangePermissionCollection } from './collections/range-permission-collection';
import { SectionCollection } from './collections/section-collection';
import { SubDocumentCollection as SubDocumentCollection } from './collections/sub-documents-collection';
import { TableCollection } from './collections/table/table-collection';
import { IInterval, IntervalApi } from './interval';
import { IParagraphProperties, ParagraphApi, ParagraphPropertiesApi } from './paragraph';
import { SectionApi } from './section';
import { SizeApi } from './size';
import { SectionBreakTypeApi, SubDocumentApi } from './sub-document';
export declare class RichEditDocumentApi {
    protected readonly _processor: IProcessor;
    constructor(processor: IProcessor);
    get fonts(): FontCollection;
    get subDocuments(): SubDocumentCollection<SubDocumentApi>;
    get sections(): SectionCollection;
    get bookmarks(): BookmarkCollection<BookmarkApi>;
    get rangePermissions(): RangePermissionCollection;
    get paragraphs(): ParagraphCollection;
    get tables(): TableCollection;
    get fields(): FieldCollection;
    get hyperlinks(): HyperlinkCollection;
    get lists(): ListCollection;
    get length(): number;
    get interval(): IntervalApi;
    get isProtected(): boolean;
    protect(password: string): void;
    unprotect(): void;
    checkProtectionPassword(password: string): boolean;
    insertText(position: number, text: string): IntervalApi;
    insertLineBreak(position: number): IntervalApi;
    insertColumnBreak(position: number): IntervalApi;
    insertPageBreak(position: number): IntervalApi;
    insertSectionBreak(position: number, type: SectionBreakTypeApi): SectionApi;
    insertPicture(position: number, base64: string, size?: SizeApi, callback?: (interval: IntervalApi) => void): void;
    insertParagraph(position: number): ParagraphApi;
    deleteText(interval: IInterval): void;
    getText(interval?: IntervalApi): string;
    getCharacterProperties(interval: IInterval): CharacterPropertiesApi;
    setCharacterProperties(interval: IInterval, characterProperties: ICharacterProperties): void;
    getParagraphProperties(interval: IInterval): ParagraphPropertiesApi;
    setParagraphProperties(interval: IInterval, paragraphProperties: IParagraphProperties): void;
    getDefaultCharacterProperties(): CharacterPropertiesApi;
    setDefaultCharacterProperties(characterProperties: ICharacterProperties): void;
}
