Skip to content
SumOfficeSumOfficeSumOffice

DTO · Fields, footnotes, and references

34 interfaces and 8 type aliases from the `api-edit.ts` module — footnotes, table of contents, bibliography, indexes, mail merge, and form fields.

34 interfaces and 8 type aliases — footnotes, table of contents, bibliography, indexes, mail merge, and form fields.

Contract module: api-edit.ts.

Other topics in this module: Text and paragraphs · Tables: structure · Tables: cells and formatting · Tables: placement on the page · Page setup and document structure · Objects and drawings · Fields, footnotes, and references.

Types on this page — 42

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertDateFieldRequest {
paragraphIndex: number;
offset?: number | null;
isoDate: string;
picture?: string | null;
language?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertDateTimeFieldRequest {
paragraphIndex: number;
offset?: number | null;
isoDateTime: string;
picture?: string | null;
language?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0DateFieldKind = "date" | "date-time";

InterfaceDeclaration · api-edit.ts

interface EditorV0UpdateDateFieldResultRequest {
paragraphIndex: number;
fieldKind?: EditorV0DateFieldKind | null;
currentResult: string;
updatedResult: string;
picture?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertFootnoteRequest {
paragraphIndex: number;
offset?: number | null;
noteText?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0ManageNoteKind = "footnote" | "endnote";

TypeAliasDeclaration · api-edit.ts

type EditorV0ManageNoteAction = "edit" | "delete";

InterfaceDeclaration · api-edit.ts

interface EditorV0ManageNoteRequest {
kind: EditorV0ManageNoteKind;
action: EditorV0ManageNoteAction;
noteId?: number | null;
noteText?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0CrossReferenceFieldKind = "REF" | "PAGEREF" | "NOTEREF";

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertCrossReferenceRequest {
paragraphIndex: number;
fieldKind?: EditorV0CrossReferenceFieldKind | null;
targetBookmark: string;
resultText: string;
targetKind?: "bookmark" | "caption" | null;
referenceKind?: "stored-result" | "only-label-and-number" | null;
captionLabel?: string | null;
captionParagraphIndex?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

EditorV0UpdateCrossReferenceFieldResultRequest

Section titled “EditorV0UpdateCrossReferenceFieldResultRequest”

InterfaceDeclaration · api-edit.ts

interface EditorV0UpdateCrossReferenceFieldResultRequest {
paragraphIndex: number;
fieldKind?: EditorV0CrossReferenceFieldKind | null;
targetBookmark: string;
currentResult: string;
updatedResult: string;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0UpdateSequenceFieldResultRequest {
paragraphIndex: number;
fieldLabel: string;
currentResult: string;
updatedResult: string;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0BibliographyStyleRequest {
selectedStyle: string;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0BibliographyCommandAction = "insert-citation" | "add-source" | "insert-bibliography";

InterfaceDeclaration · api-edit.ts

interface EditorV0BibliographyCommandRequest {
action: EditorV0BibliographyCommandAction;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0IndexAuthoritiesCommandAction = "mark-index-entry" | "insert-index" | "update-index" | "mark-authority-citation" | "insert-table-of-authorities" | "update-table-of-authorities";

InterfaceDeclaration · api-edit.ts

interface EditorV0IndexAuthoritiesCommandRequest {
action: EditorV0IndexAuthoritiesCommandAction;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0MailMergeCommandAction =
| "start-mail-merge"
| "select-recipients"
| "edit-recipient-list"
| "filter-recipients"
| "insert-merge-field"
| "insert-greeting-line"
| "insert-rule-if"
| "update-labels"
| "preview-results"
| "first-record"
| "previous-record"
| "next-record"
| "last-record"
| "finish-merge";

InterfaceDeclaration · api-edit.ts

interface EditorV0MailMergeCommandRequest {
action: EditorV0MailMergeCommandAction;
recordIndex?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0FormsFieldsBusinessAction = "insert-form-controls" | "protect-forms" | "fill-form-values" | "attempt-body-edit-while-protected" | "unprotect-forms" | "insert-business-fields" | "update-business-fields" | "insert-merge-placeholders" | "merge-from-data";

InterfaceDeclaration · api-edit.ts

interface EditorV0FormsFieldsBusinessRequest {
action: EditorV0FormsFieldsBusinessAction;
dataSourcePath?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertEndnoteRequest {
paragraphIndex: number;
offset?: number | null;
noteText?: string | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertHyperlinkRequest {
paragraphIndex: number;
offset?: number | null;
deleteCount?: number | null;
hyperlinkUrl: string;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertBookmarkRequest {
paragraphIndex: number;
offset: number;
deleteCount: number;
bookmarkName: string;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertDateFieldResult {
schema: "fastdoc.shell.editor-v0-insert-date-field-action.v1";
operationKind: "insert-date-field";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
reopenAfterWrite: boolean;
reopenedDocumentPath: string | null;
paragraphIndex: number;
offset: number;
isoDate: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertDateTimeFieldResult {
schema: "fastdoc.shell.editor-v0-insert-date-time-field-action.v1";
operationKind: "insert-date-time-field";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
reopenAfterWrite: boolean;
reopenedDocumentPath: string | null;
paragraphIndex: number;
offset: number;
isoDateTime: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0UpdateDateFieldResultResult {
schema: "fastdoc.shell.editor-v0-update-date-field-result-action.v1";
operationKind: "update-date-field-result";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
reopenAfterWrite: boolean;
reopenedDocumentPath: string | null;
paragraphIndex: number;
fieldKind: EditorV0DateFieldKind;
currentResult: string;
updatedResult: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertFootnoteResult {
schema: "fastdoc.shell.editor-v0-insert-footnote-action.v1";
operationKind: "insert-footnote";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
paragraphIndex: number;
offset: number;
noteText: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0ManageNoteResult {
schema: "fastdoc.shell.editor-v0-manage-note-action.v1";
operationKind: "edit-footnote" | "delete-footnote" | "edit-endnote" | "delete-endnote";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
kind: EditorV0ManageNoteKind;
action: EditorV0ManageNoteAction;
noteId: number;
noteText: string | null;
previousText: string;
noteCountBefore: number;
noteCountAfter: number;
referenceCountBefore: number;
referenceCountAfter: number;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertCrossReferenceResult {
schema: "fastdoc.shell.editor-v0-insert-cross-reference-action.v1";
operationKind: "insert-cross-reference";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
paragraphIndex: number;
fieldKind: EditorV0CrossReferenceFieldKind;
targetBookmark: string;
resultText: string;
targetKind: "bookmark" | "caption";
referenceKind: "stored-result" | "only-label-and-number";
captionLabel: string | null;
captionParagraphIndex: number | null;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

EditorV0UpdateCrossReferenceFieldResultResult

Section titled “EditorV0UpdateCrossReferenceFieldResultResult”

InterfaceDeclaration · api-edit.ts

interface EditorV0UpdateCrossReferenceFieldResultResult {
schema: "fastdoc.shell.editor-v0-update-cross-reference-field-result-action.v1";
operationKind: "update-cross-reference-field-result";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
reopenAfterWrite: boolean;
reopenedDocumentPath: string | null;
paragraphIndex: number;
fieldKind: EditorV0CrossReferenceFieldKind;
targetBookmark: string;
currentResult: string;
updatedResult: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0UpdateSequenceFieldResultResult {
schema: "fastdoc.shell.editor-v0-update-sequence-field-result-action.v1";
operationKind: "update-sequence-field-result";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
reopenAfterWrite: boolean;
reopenedDocumentPath: string | null;
paragraphIndex: number;
fieldLabel: string;
currentResult: string;
updatedResult: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0BibliographyStyleResult {
schema: "fastdoc.shell.editor-v0-bibliography-style-action.v1";
operationKind: "set-bibliography-style";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
selectedStyle: string;
previousStyle: string | null;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0BibliographyCommandResult {
schema: "fastdoc.shell.editor-v0-bibliography-command-action.v1";
operationKind: "bibliography-command";
action: EditorV0BibliographyCommandAction;
applied: boolean;
documentPath: string | null;
outputPath: string | null;
documentPathAfterReopen: string | null;
currentDocumentReopened: boolean;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
sourceCountBefore: number | null;
sourceCountAfter: number | null;
fieldCountBefore: number | null;
fieldCountAfter: number | null;
citationFieldCountBefore: number | null;
citationFieldCountAfter: number | null;
bibliographyFieldCountBefore: number | null;
bibliographyFieldCountAfter: number | null;
insertedCitationTag: string | null;
insertedCitationResultText: string | null;
addedSourceTag: string | null;
insertedBibliographyResultText: string | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0IndexAuthoritiesCommandResult {
schema: "fastdoc.shell.editor-v0-index-authorities-command-action.v1";
operationKind: "index-authorities-command";
action: EditorV0IndexAuthoritiesCommandAction;
applied: boolean;
documentPath: string | null;
outputPath: string | null;
documentPathAfterReopen: string | null;
currentDocumentReopened: boolean;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
fieldCountBefore: number | null;
fieldCountAfter: number | null;
xeFieldCountBefore: number | null;
xeFieldCountAfter: number | null;
indexFieldCountBefore: number | null;
indexFieldCountAfter: number | null;
taFieldCountBefore: number | null;
taFieldCountAfter: number | null;
toaFieldCountBefore: number | null;
toaFieldCountAfter: number | null;
insertedIndexEntryText: string | null;
insertedIndexResultText: string | null;
updatedIndexResultText: string | null;
insertedAuthorityEntryText: string | null;
insertedTableOfAuthoritiesResultText: string | null;
updatedTableOfAuthoritiesResultText: string | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
fullWordFieldEngineClaim: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0MailMergeCommandResult {
schema: "fastdoc.shell.editor-v0-mail-merge-command-action.v1";
operationKind: "mail-merge-command";
action: EditorV0MailMergeCommandAction;
applied: boolean;
documentPath: string | null;
outputPath: string | null;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
fieldCountBefore: number | null;
fieldCountAfter: number | null;
mergeFieldCountBefore: number | null;
mergeFieldCountAfter: number | null;
ifFieldCountBefore: number | null;
ifFieldCountAfter: number | null;
settingsMailMergeBefore: boolean | null;
settingsMailMergeAfter: boolean | null;
recipientCount: number | null;
activeRecordIndexBefore: number | null;
activeRecordIndexAfter: number | null;
activeRecordDisplayText: string | null;
insertedMergeFieldNames: string[];
previewRecordIndex: number | null;
previewResultText: string | null;
finishRecordIndex: number | null;
finishResultText: string | null;
labelsResultText: string | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
externalDataSourceClaim: false;
outlookDeliveryClaim: false;
fullWordMailMergeEngineClaim: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0FormsFieldsBusinessResult {
schema: "fastdoc.shell.editor-v0-forms-fields-business-action.v1";
operationKind: "forms-fields-business-command";
action: EditorV0FormsFieldsBusinessAction;
applied: boolean;
documentPath: string | null;
outputPath: string | null;
dataSourcePath: string | null;
documentPathAfterReopen: string | null;
currentDocumentReopened: boolean;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
formTextInputCountAfter: number | null;
formCheckboxCountAfter: number | null;
formDropdownCountAfter: number | null;
formValueCountAfter: number | null;
protectionEditAfter: string | null;
bodyEditBlocked: boolean | null;
unprotectRestoresEditing: boolean | null;
dateFieldCountAfter: number | null;
documentPropertyFieldCountAfter: number | null;
refFieldCountAfter: number | null;
calculatedFieldCountAfter: number | null;
fieldsUpdated: boolean | null;
mergePlaceholderCountAfter: number | null;
mergeRecordCount: number | null;
mergeTemplatePreserved: boolean | null;
mergeOutputDocxTruth: boolean | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
passwordOrEncryptionParityClaim: false;
fullWordFieldEngineClaim: false;
fullWordMailMergeEngineClaim: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertTocResult {
schema: "fastdoc.shell.editor-v0-insert-toc-action.v1";
operationKind: "insert-toc";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
documentPathAfterReopen: string | null;
currentDocumentReopened: boolean;
insertedInstructionText: string | null;
insertedResultText: string | null;
tocFieldCountBefore: number | null;
tocFieldCountAfter: number | null;
headingCount: number | null;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0RemoveTocResult {
schema: "fastdoc.shell.editor-v0-remove-toc-action.v1";
operationKind: "remove-toc";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
documentPathAfterReopen: string | null;
currentDocumentReopened: boolean;
removedResultText: string | null;
removedBlockIndex: number | null;
tocFieldCountBefore: number | null;
tocFieldCountAfter: number | null;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertEndnoteResult {
schema: "fastdoc.shell.editor-v0-insert-endnote-action.v1";
operationKind: "insert-endnote";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
paragraphIndex: number;
offset: number;
noteText: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertHyperlinkResult {
schema: "fastdoc.shell.editor-v0-insert-hyperlink-action.v1";
operationKind: "auto-create-hyperlink";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
paragraphIndex: number;
offset: number;
deleteCount: number;
hyperlinkUrl: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

InterfaceDeclaration · api-edit.ts

interface EditorV0InsertBookmarkResult {
schema: "fastdoc.shell.editor-v0-insert-bookmark-action.v1";
operationKind: "insert-bookmark";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
paragraphIndex: number;
offset: number;
deleteCount: number;
bookmarkName: string;
resultKind: string | null;
writebackResultKind: string | null;
writebackChangedPartCount: number | null;
snapshot: unknown;
popupWarningShown: false;
technicalPanelAdded: false;
wordParityClaim: false;
pixelParityClaim: false;
muscleMemoryParityClaim: false;
}

Documentation assistant

Answers are assembled from the documentation and may be inaccurate — check the sources.