import { MaskInputOptions, SlimDOMOptions } from 'rrweb-snapshot'; import { mutationRecord, blockClass, maskTextClass, mutationCallBack, MaskTextFn } from '../types'; import { IframeManager } from './iframe-manager'; import { ShadowDomManager } from './shadow-dom-manager'; export default class MutationBuffer { private frozen; private locked; private texts; private attributes; private removes; private mapRemoves; private movedMap; private addedSet; private movedSet; private droppedSet; private emissionCallback; private blockClass; private blockSelector; private maskTextClass; private maskTextSelector; private inlineStylesheet; private maskInputOptions; private maskTextFn; private recordCanvas; private slimDOMOptions; private doc; private iframeManager; private shadowDomManager; init(cb: mutationCallBack, blockClass: blockClass, blockSelector: string | null, maskTextClass: maskTextClass, maskTextSelector: string | null, inlineStylesheet: boolean, maskInputOptions: MaskInputOptions, maskTextFn: MaskTextFn | undefined, recordCanvas: boolean, slimDOMOptions: SlimDOMOptions, doc: Document, iframeManager: IframeManager, shadowDomManager: ShadowDomManager): void; freeze(): void; unfreeze(): void; isFrozen(): boolean; lock(): void; unlock(): void; processMutations: (mutations: mutationRecord[]) => void; emit: () => void; private processMutation; private genAdds; }