Skip to content
SumOfficeSumOfficeSumOffice

DTO · Tables: cells and formatting

55 interfaces and 20 type aliases from the `api-edit.ts` module — cell content, borders, shading, merging, and alignment.

55 interfaces and 20 type aliases — cell content, borders, shading, merging, and alignment.

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 — 75

InterfaceDeclaration · api-edit.ts

interface ShellTableCellBorder {
edge: string;
style: string;
size_eighths?: number | null;
width_milli_px?: number | null;
color_rgb?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type D37TablePencilEraserSemanticOperation = "eraser-merge-horizontal" | "merge-rectangular" | "merge-vertical" | "pencil-split-cell" | "pencil-split-cell-vertical" | "pencil-split-cell-rectangular" | "draw-table-partial-span-cell-split" | "split-cell-grid";

InterfaceDeclaration · api-edit.ts

interface D37TablePencilEraserSemanticRequest {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
spanCount: number;
rowCount?: number | null;
columnCount?: number | null;
operation: D37TablePencilEraserSemanticOperation;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TablePencilEraserSemanticResult {
schema: "fastdoc.shell.d37-table-pencil-eraser-semantic.v1";
operationKind: "eraser-merge-table-cells-horizontal" | "merge-table-cells-rectangular" | "merge-table-cells-vertical" | "pencil-split-table-cell" | "pencil-split-table-cell-vertical" | "pencil-split-table-cell-rectangular" | "split-table-cell-grid";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
spanCount: number | null;
requestedSpanCount: number;
tableInputProvenance: string | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionPencilEraserAction = "merge-selected-horizontal" | "merge-selected-rectangular" | "merge-selected-vertical" | "split-selected-horizontal" | "split-selected-vertical" | "split-selected-rectangular" | "split-draw-table-ordinary-cell" | "split-selected-cell";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionPencilEraserRange {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionPencilEraserRequest {
selection: D37TableSelectionPencilEraserRange;
action: D37TableSelectionPencilEraserAction;
splitRows?: number | null;
splitColumns?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionPencilEraserResult {
schema: "fastdoc.shell.d37-table-selection-pencil-eraser.v1";
action: D37TableSelectionPencilEraserAction;
selection: D37TableSelectionPencilEraserRange;
computedOperation: D37TablePencilEraserSemanticOperation;
computedSpanCount: number;
pencilEraserResult: D37TablePencilEraserSemanticResult;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionPencilEraserCommandState {
schema: "fastdoc.shell.d37-table-selection-pencil-eraser-command-state.v1";
action: D37TableSelectionPencilEraserAction;
selection: D37TableSelectionPencilEraserRange;
computedOperation: D37TablePencilEraserSemanticOperation;
computedSpanCount: number | null;
operationKind: D37TablePencilEraserSemanticResult["operationKind"];
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableEqualizeMode = "row-heights" | "column-widths" | "column-widths-from-existing";

InterfaceDeclaration · api-edit.ts

interface D37TableEqualizeRequest {
bodyBlockIndex: number;
equalizeMode: D37TableEqualizeMode;
heightTwips?: number | null;
heightRule?: "exact" | "atLeast" | "auto" | "fit-content" | null;
widthTwips?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableEqualizeResult {
schema: "fastdoc.shell.d37-table-equalize-dimensions.v1";
operationKind: "equalize-table-row-heights" | "equalize-table-column-widths" | "equalize-table-column-widths-from-existing";
applied: boolean;
unchanged: boolean;
historyEntryCreated: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
equalizeMode: D37TableEqualizeMode;
resultKind: string | null;
writebackResultKind: string | null;
tableDimensionTwips: number | null;
rowCount: number | null;
columnCount: number | null;
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionEqualizeColumnsAction = "equalize-selected-table-columns";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionEqualizeColumnsRange {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionEqualizeColumnsRequest {
selection: D37TableSelectionEqualizeColumnsRange;
action: D37TableSelectionEqualizeColumnsAction;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionEqualizeColumnsResult {
schema: "fastdoc.shell.d37-table-selection-equalize-columns.v1";
action: D37TableSelectionEqualizeColumnsAction;
selection: D37TableSelectionEqualizeColumnsRange;
computedEqualizeMode: "column-widths-from-existing";
equalizeResult: D37TableEqualizeResult;
}

D37TableSelectionEqualizeColumnsCommandState

Section titled “D37TableSelectionEqualizeColumnsCommandState”

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionEqualizeColumnsCommandState {
schema: "fastdoc.shell.d37-table-selection-equalize-columns-command-state.v1";
operationKind: "equalize-table-column-widths-from-existing";
action: D37TableSelectionEqualizeColumnsAction;
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionEqualizeColumnsRange;
computedEqualizeMode: "column-widths-from-existing";
resultKind: string | null;
writebackResultKind: string | null;
tableDimensionTwips: number | null;
rowCount: number | null;
columnCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableStyleRequest {
bodyBlockIndex: number;
styleKind?: "banded-blue" | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableStyleResult {
schema: "fastdoc.shell.d37-table-style.v1";
operationKind: "apply-table-style-banded-blue";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
styleKind: "banded-blue";
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableStyleOptions {
headerRow: boolean;
totalRow: boolean;
bandedRows: boolean;
firstColumn: boolean;
lastColumn: boolean;
bandedColumns: boolean;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellRangeFormatRequest {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
fillColorRgb?: string | null;
borderColorRgb?: string | null;
borderStyle?: "single" | "dotted" | "dashed" | "dashSmallGap" | "thick" | null;
borderSizeEighths?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellRangeFormatResult {
schema: "fastdoc.shell.d37-table-cell-range-format.v1";
operationKind: "format-table-cell-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
range: {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
};
fillColorRgb: string | null;
borderColorRgb: string | null;
borderStyle: string | null;
borderSizeEighths: number | null;
fillResultKind: string | null;
fillWritebackResultKind: string | null;
borderResultKind: string | null;
borderWritebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
fillSnapshot: unknown;
borderSnapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionCellRangeFormatPreset = "market-emphasis" | "review-attention";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionCellRangeFormatRange {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionCellRangeFormatRequest {
selection: D37TableSelectionCellRangeFormatRange;
preset: D37TableSelectionCellRangeFormatPreset;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionCellRangeFormatResult {
schema: "fastdoc.shell.d37-table-selection-cell-range-format.v1";
preset: D37TableSelectionCellRangeFormatPreset;
selection: D37TableSelectionCellRangeFormatRange;
computedFillColorRgb: string;
computedBorderColorRgb: string;
computedBorderStyle: "single" | "thick";
computedBorderSizeEighths: number;
cellRangeFormatResult: D37TableCellRangeFormatResult;
}

D37TableSelectionCellRangeFormatCommandState

Section titled “D37TableSelectionCellRangeFormatCommandState”

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionCellRangeFormatCommandState {
schema: "fastdoc.shell.d37-table-selection-cell-range-format-command-state.v1";
operationKind: "format-table-cell-range";
preset: D37TableSelectionCellRangeFormatPreset;
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedFillColorRgb: string;
computedBorderColorRgb: string;
computedBorderStyle: "single" | "thick";
computedBorderSizeEighths: number;
fillResultKind: string | null;
fillWritebackResultKind: string | null;
borderResultKind: string | null;
borderWritebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
supportMarkerKinds: string[];
fillSnapshot: unknown;
borderSnapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionAllBordersAction = "set-selected-all-borders" | "clear-selected-all-borders";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAllBordersRequest {
selection: D37TableSelectionCellRangeFormatRange;
action: D37TableSelectionAllBordersAction;
borderColorRgb?: string | null;
borderStyle?: "nil" | "single" | "dotted" | "dashed" | "dashSmallGap" | "thick" | null;
borderSizeEighths?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAllBordersResult {
schema: "fastdoc.shell.d37-table-selection-all-borders.v1";
action: D37TableSelectionAllBordersAction;
operationKind: "set-table-cell-all-borders-range" | "clear-table-cell-all-borders-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedBorderColorRgb: string | null;
computedBorderStyle: string | null;
computedBorderSizeEighths: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAllBordersCommandState {
schema: "fastdoc.shell.d37-table-selection-all-borders-command-state.v1";
action: D37TableSelectionAllBordersAction;
operationKind: "set-table-cell-all-borders-range" | "clear-table-cell-all-borders-range";
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedBorderColorRgb: string | null;
computedBorderStyle: string | null;
computedBorderSizeEighths: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionOutsideBordersAction = "set-selected-outside-borders" | "clear-selected-outside-borders";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionOutsideBordersRequest {
selection: D37TableSelectionCellRangeFormatRange;
action: D37TableSelectionOutsideBordersAction;
borderColorRgb?: string | null;
borderStyle?: "single" | "dotted" | "dashed" | "dashSmallGap" | "thick" | null;
borderSizeEighths?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionOutsideBordersResult {
schema: "fastdoc.shell.d37-table-selection-outside-borders.v1";
action: D37TableSelectionOutsideBordersAction;
operationKind: "set-table-cell-outside-borders-range" | "clear-table-cell-outside-borders-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedBorderColorRgb: string | null;
computedBorderStyle: string | null;
computedBorderSizeEighths: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
snapshot: unknown;
}

D37TableSelectionOutsideBordersCommandState

Section titled “D37TableSelectionOutsideBordersCommandState”

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionOutsideBordersCommandState {
schema: "fastdoc.shell.d37-table-selection-outside-borders-command-state.v1";
action: D37TableSelectionOutsideBordersAction;
operationKind: "set-table-cell-outside-borders-range" | "clear-table-cell-outside-borders-range";
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedBorderColorRgb: string | null;
computedBorderStyle: string | null;
computedBorderSizeEighths: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionInsideBordersAction = "set-selected-inside-borders" | "clear-selected-inside-borders";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionInsideBordersRequest {
selection: D37TableSelectionCellRangeFormatRange;
action: D37TableSelectionInsideBordersAction;
borderColorRgb?: string | null;
borderStyle?: "single" | "dotted" | "dashed" | "dashSmallGap" | "thick" | null;
borderSizeEighths?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionInsideBordersResult {
schema: "fastdoc.shell.d37-table-selection-inside-borders.v1";
action: D37TableSelectionInsideBordersAction;
operationKind: "set-table-cell-inside-borders-range" | "clear-table-cell-inside-borders-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedBorderColorRgb: string | null;
computedBorderStyle: string | null;
computedBorderSizeEighths: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
snapshot: unknown;
}

D37TableSelectionInsideBordersCommandState

Section titled “D37TableSelectionInsideBordersCommandState”

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionInsideBordersCommandState {
schema: "fastdoc.shell.d37-table-selection-inside-borders-command-state.v1";
action: D37TableSelectionInsideBordersAction;
operationKind: "set-table-cell-inside-borders-range" | "clear-table-cell-inside-borders-range";
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionCellRangeFormatRange;
computedBorderColorRgb: string | null;
computedBorderStyle: string | null;
computedBorderSizeEighths: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableAlignmentMode = "left" | "center" | "right";

InterfaceDeclaration · api-edit.ts

interface D37TableAlignmentRequest {
bodyBlockIndex: number;
alignment: D37TableAlignmentMode;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableAlignmentResult {
schema: "fastdoc.shell.d37-table-alignment.v1";
operationKind: "set-table-alignment";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
alignment: D37TableAlignmentMode;
resultKind: string | null;
writebackResultKind: string | null;
tableAlignment: string | null;
rowCount: number | null;
columnCount: number | null;
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionAlignmentAction = "align-selected-table-left" | "align-selected-table-center" | "align-selected-table-right";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAlignmentRange {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAlignmentRequest {
selection: D37TableSelectionAlignmentRange;
action: D37TableSelectionAlignmentAction;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAlignmentResult {
schema: "fastdoc.shell.d37-table-selection-alignment.v1";
action: D37TableSelectionAlignmentAction;
selection: D37TableSelectionAlignmentRange;
computedAlignment: D37TableAlignmentMode;
alignmentResult: D37TableAlignmentResult;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionAlignmentCommandState {
schema: "fastdoc.shell.d37-table-selection-alignment-command-state.v1";
operationKind: "set-table-alignment";
action: D37TableSelectionAlignmentAction;
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionAlignmentRange;
computedAlignment: D37TableAlignmentMode;
resultKind: string | null;
writebackResultKind: string | null;
tableAlignment: string | null;
rowCount: number | null;
columnCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableWidthMode = "centimeters" | "percent" | "fit-contents" | "fit-window" | "fixed-column-width";

InterfaceDeclaration · api-edit.ts

interface D37TableWidthRequest {
bodyBlockIndex: number;
widthMode: D37TableWidthMode;
widthCentimetersHundredths?: number | null;
widthPercent?: number | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableWidthResult {
schema: "fastdoc.shell.d37-table-width.v1";
operationKind: "set-table-width-centimeters" | "set-table-width-percent" | "fit-table-width-to-contents" | "fit-table-width-to-window" | "fixed-table-column-width";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
widthMode: D37TableWidthMode;
resultKind: string | null;
writebackResultKind: string | null;
tableWidthUnit: string | null;
tableWidthValue: number | null;
tableWidthTwips: number | null;
computedTableWidthToContentsTwips: number | null;
tableWidthPercentX50: number | null;
tableDimensionTwips: number | null;
rowCount: number | null;
columnCount: number | null;
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableSelectionWidthFitAction = "fit-selected-table-to-contents";

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionWidthFitRange {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionWidthFitRequest {
selection: D37TableSelectionWidthFitRange;
action: D37TableSelectionWidthFitAction;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionWidthFitResult {
schema: "fastdoc.shell.d37-table-selection-width-fit.v1";
action: D37TableSelectionWidthFitAction;
selection: D37TableSelectionWidthFitRange;
computedWidthMode: "fit-contents";
tableWidthResult: D37TableWidthResult;
}

InterfaceDeclaration · api-edit.ts

interface D37TableSelectionWidthFitCommandState {
schema: "fastdoc.shell.d37-table-selection-width-fit-command-state.v1";
operationKind: "fit-table-width-to-contents";
action: D37TableSelectionWidthFitAction;
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
selection: D37TableSelectionWidthFitRange;
computedWidthMode: "fit-contents";
resultKind: string | null;
writebackResultKind: string | null;
tableWidthUnit: string | null;
tableWidthValue: number | null;
tableWidthTwips: number | null;
computedTableWidthToContentsTwips: number | null;
tableWidthPercentX50: number | null;
tableDimensionTwips: number | null;
rowCount: number | null;
columnCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableCellContentVerticalAlignment = "top" | "center" | "middle" | "bottom";

TypeAliasDeclaration · api-edit.ts

type D37TableCellContentHorizontalAlignment = "left" | "center" | "right";

InterfaceDeclaration · api-edit.ts

interface D37TableCellContentAlignmentRequest {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number;
columnCount: number;
verticalAlignment: D37TableCellContentVerticalAlignment;
horizontalAlignment: D37TableCellContentHorizontalAlignment;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

TypeAliasDeclaration · api-edit.ts

type D37TableCellVerticalAlignment = "top" | "center" | "middle" | "bottom";

TypeAliasDeclaration · api-edit.ts

type D37TableCellVerticalAlignmentMode = "cell" | "range";

InterfaceDeclaration · api-edit.ts

interface D37TableCellVerticalAlignmentRequest {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount?: number | null;
columnCount?: number | null;
alignment: D37TableCellVerticalAlignment;
applyMode?: D37TableCellVerticalAlignmentMode | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellContentAlignmentResult {
schema: "fastdoc.shell.d37-table-cell-content-alignment.v1";
operationKind: "set-table-cell-alignment-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number | null;
columnCount: number | null;
requestedVerticalAlignment: D37TableCellContentVerticalAlignment;
requestedHorizontalAlignment: D37TableCellContentHorizontalAlignment;
verticalAlignment: string | null;
horizontalAlignment: string | null;
resultKind: string | null;
writebackResultKind: string | null;
spanCount: number | null;
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellVerticalAlignmentResult {
schema: "fastdoc.shell.d37-table-cell-vertical-alignment.v1";
operationKind: "set-table-cell-vertical-alignment" | "set-table-cell-vertical-alignment-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number | null;
columnCount: number | null;
applyMode: D37TableCellVerticalAlignmentMode;
requestedAlignment: D37TableCellVerticalAlignment;
cellVerticalAlignment: string | null;
resultKind: string | null;
writebackResultKind: string | null;
spanCount: number | null;
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellContentAlignmentCommandState {
schema: "fastdoc.shell.d37-table-cell-content-alignment-command-state.v1";
operationKind: "set-table-cell-alignment-range";
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number | null;
columnCount: number | null;
requestedVerticalAlignment: D37TableCellContentVerticalAlignment;
requestedHorizontalAlignment: D37TableCellContentHorizontalAlignment;
verticalAlignment: string | null;
horizontalAlignment: string | null;
resultKind: string | null;
writebackResultKind: string | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellVerticalAlignmentCommandState {
schema: "fastdoc.shell.d37-table-cell-vertical-alignment-command-state.v1";
operationKind: D37TableCellVerticalAlignmentResult["operationKind"];
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number | null;
columnCount: number | null;
applyMode: D37TableCellVerticalAlignmentMode;
requestedAlignment: D37TableCellVerticalAlignment;
cellVerticalAlignment: string | null;
resultKind: string | null;
writebackResultKind: string | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellExactSizeRequest {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
widthTwips: number;
heightTwips: number;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellExactSizeResult {
schema: "fastdoc.shell.d37-table-cell-exact-size.v1";
operationKind: "set-table-cell-exact-size";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
widthTwips: number | null;
heightTwips: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellExactSizeCommandState {
schema: "fastdoc.shell.d37-table-cell-exact-size-command-state.v1";
operationKind: "set-table-cell-exact-size";
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
widthTwips: number | null;
heightTwips: number | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type D37TableCellTextDirection = "horizontal" | "normal" | "rotate_down" | "down" | "vertical" | "rotate_up" | "up" | "0deg" | "90deg" | "270deg" | "-90deg";

TypeAliasDeclaration · api-edit.ts

type D37TableCellTextDirectionMode = "single" | "range";

InterfaceDeclaration · api-edit.ts

interface D37TableCellTextDirectionRequest {
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount?: number | null;
columnCount?: number | null;
direction: D37TableCellTextDirection;
applyMode?: D37TableCellTextDirectionMode | null;
reopenAfterWrite?: boolean;
outputPath?: string | null;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellTextDirectionResult {
schema: "fastdoc.shell.d37-table-cell-text-direction.v1";
operationKind: "set-table-cell-text-direction" | "set-table-cell-text-direction-range";
applied: boolean;
documentPath: string | null;
outputPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
requestedDirection: D37TableCellTextDirection;
textDirection: string | null;
resultKind: string | null;
writebackResultKind: string | null;
rowCount: number | null;
columnCount: number | null;
spanCount: number | null;
snapshot: unknown;
}

InterfaceDeclaration · api-edit.ts

interface D37TableCellTextDirectionCommandState {
schema: "fastdoc.shell.d37-table-cell-text-direction-command-state.v1";
operationKind: D37TableCellTextDirectionResult["operationKind"];
canApply: boolean;
disabledReason: string | null;
documentPath: string | null;
bodyBlockIndex: number;
rowIndex: number;
columnIndex: number;
rowCount: number | null;
columnCount: number | null;
applyMode: D37TableCellTextDirectionMode;
requestedDirection: D37TableCellTextDirection;
textDirection: string | null;
resultKind: string | null;
writebackResultKind: string | null;
spanCount: number | null;
supportMarkerKinds: string[];
snapshot: unknown;
}

TypeAliasDeclaration · api-edit.ts

type EditorV0TableCellParagraphTextTarget = {
kind: "table-cell";
bodyBlockIndex: number;
rowIndex: number;
cellIndex: number;
paragraphIndex: number;
} | {
kind: "nested-table-cell";
bodyBlockIndex: number;
outerRowIndex: number;
outerCellIndex: number;
nestedTableBlockIndex: number;
rowIndex: number;
cellIndex: number;
paragraphIndex: number;
};

TypeAliasDeclaration · api-edit.ts

type EditorV0TableCellTextRangeEndpoint = EditorV0TableCellParagraphTextTarget & {
offset: number;
};

Documentation assistant

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