API reference / Common / Engine types / TableRow
Type Alias: TableRow
type TableRow =
| {
regular: TableRegularRow;
}
| {
control: TableControlRow;
}
| {
customXml: TableCustomXmlRow;
};One row of a Table — what OOXML lets sit directly inside w:tbl, where a row may sit.
Row is the category, and w:tr is one member of it: the plain row is the Regular variant, carrying a [TableRegularRow], and a container wrapping consecutive rows is a row of this sequence as much as that is. The shape TextSpan takes for w:r, for the same reason — the schema puts them in one choice group.
A bookmark's markers are legal in the group and are no variant: a bookmark's marks are spans of a paragraph, so import moves one written between rows into the nearest cell's story. What else sits here is not settled: w:commentRangeStart, w:permStart and w:proofErr are legal too, and it is still open whether they become variants or ride on [TableRegularRow] as properties — as a tracked row insertion already does, being w:trPr/w:ins rather than a wrapper.
The grid does not see this sequence. Rows carry the axis (TableRowId), a control carries none, and Table::grid_rows descends through the controls so that (row, column) still addresses every cell.