@mescius/dspdfviewer
Version:
Document Solutions PDF Viewer
47 lines (46 loc) • 2.25 kB
TypeScript
import { ReplaceTextModel } from "../Models/ViewerTypes";
/**
* Represents a set of local modifications to a document.
* These modifications will be sent to the SupportApi service.
* @typedef {Object} LocalDocumentModification
* @property {boolean} [renderInteractiveForms] Indicates whether interactive forms should be rendered.
* @property {number} [rotation] The rotation angle of the document.
* @property {*} [formData] Data related to form fields.
* @property {Object} [annotationsData] Data related to annotations.
* @property {Array} annotationsData.newAnnotations Newly added annotations.
* @property {Array} annotationsData.updatedAnnotations Updated annotations.
* @property {Array} annotationsData.removedAnnotations Removed annotations.
* @property {Object[]} [structureChanges] Changes to the document structure.
* @property {number} structureChanges.pageIndex Index of the page affected by the change.
* @property {boolean} structureChanges.add Indicates whether an element is being added.
* @property {number} structureChanges.checkNumPages Number of pages to check.
* @property {Object.<number, string[]>} annotationsOrderTable Table mapping annotation keys to their respective order.
* @property {Array} optionalContentVisibility Visibility settings for optional content groups.
* @property {string} optionalContentVisibility.groupId ID of the optional content group.
* @property {string} optionalContentVisibility.groupName Name of the optional content group.
* @property {boolean} optionalContentVisibility.visible Indicates whether the group is visible.
*/
export type LocalDocumentModification = {
renderInteractiveForms?: boolean;
rotation?: number;
formData?: any;
annotationsData?: {
newAnnotations: any[];
updatedAnnotations: any[];
removedAnnotations: any[];
};
structureChanges?: {
pageIndex: number;
add: boolean;
checkNumPages: number;
}[];
annotationsOrderTable: {
[key: number]: string[];
};
optionalContentVisibility: {
groupId: string;
groupName: string;
visible: boolean;
}[];
replaceTextData?: ReplaceTextModel[];
};