import { HeaderFooterType } from '../section/enums'; import { SectionHeadersFooters } from '../section/header-footer'; import { Section } from '../section/section'; import { FooterSubDocumentInfo, HeaderFooterSubDocumentInfoBase, HeaderSubDocumentInfo } from '../sub-document-infos'; import { BaseManipulator } from './base-manipulator'; export declare abstract class HeaderFooterManipulatorBase extends BaseManipulator { createObject(type: HeaderFooterType): number; changeObjectIndex(sectionIndex: number, type: HeaderFooterType, objectIndex: number): number; insertHeaderFooter(sectionIndex: number, isHeader: boolean, type: HeaderFooterType): void; getHeaderFooterManipulator(isHeader: boolean): HeaderManipulator | FooterManipulator; protected abstract createObjectCore(): T; protected abstract getObjectsCache(): T[]; protected abstract isHeader(): boolean; protected abstract getContainer(section: Section): SectionHeadersFooters; } export declare class HeaderManipulator extends HeaderFooterManipulatorBase { protected createObjectCore(): HeaderSubDocumentInfo; protected getObjectsCache(): HeaderSubDocumentInfo[]; protected isHeader(): boolean; protected getContainer(section: Section): SectionHeadersFooters; } export declare class FooterManipulator extends HeaderFooterManipulatorBase { protected createObjectCore(): FooterSubDocumentInfo; protected getObjectsCache(): FooterSubDocumentInfo[]; protected isHeader(): boolean; protected getContainer(section: Section): SectionHeadersFooters; }