Skip to content
Mog is in active development. The GitHub repo, SDK packages, and community channels are not yet available. Follow for launch updates

ws.outline

WorksheetOutline

Sub-API for outline (row/column grouping) operations on a worksheet.

14 methods

groupRows

Promise<void>
groupRows(startRow: number, endRow: number): Promise<void>;
ParameterTypeRequired
startRownumberrequired
endRownumberrequired

Group rows in a range. @param startRow - Start row index (0-based, inclusive) @param endRow - End row index (0-based, inclusive)

ungroupRows

Promise<void>
ungroupRows(startRow: number, endRow: number): Promise<void>;
ParameterTypeRequired
startRownumberrequired
endRownumberrequired

Ungroup rows in a range. @param startRow - Start row index (0-based, inclusive) @param endRow - End row index (0-based, inclusive)

groupColumns

Promise<void>
groupColumns(startCol: number, endCol: number): Promise<void>;
ParameterTypeRequired
startColnumberrequired
endColnumberrequired

Group columns in a range. @param startCol - Start column index (0-based, inclusive) @param endCol - End column index (0-based, inclusive)

ungroupColumns

Promise<void>
ungroupColumns(startCol: number, endCol: number): Promise<void>;
ParameterTypeRequired
startColnumberrequired
endColnumberrequired

Ungroup columns in a range. @param startCol - Start column index (0-based, inclusive) @param endCol - End column index (0-based, inclusive)

toggleCollapsed

Promise<void>
toggleCollapsed(groupId: string): Promise<void>;
ParameterTypeRequired
groupIdstringrequired

Toggle the collapsed state of a group. @param groupId - Group identifier

expandAll

Promise<void>
expandAll(): Promise<void>;

Expand all groups in the worksheet.

collapseAll

Promise<void>
collapseAll(): Promise<void>;

Collapse all groups in the worksheet.

getState

Promise<GroupState>
getState(): Promise<GroupState>;

Get the full group state for the worksheet. @returns Group state including row groups, column groups, and max levels

getLevel

Promise<number>
getLevel(type: 'row' | 'column', index: number): Promise<number>;
ParameterTypeRequired
type'row' | 'column'required
indexnumberrequired

Get the outline level of a specific row or column. @param type - Whether to query a row or column @param index - Row or column index (0-based) @returns The outline level (0 if not in any group)

getMaxLevel

Promise<number>
getMaxLevel(type: 'row' | 'column'): Promise<number>;
ParameterTypeRequired
type'row' | 'column'required

Get the maximum outline level for rows or columns. @param type - Whether to query rows or columns @returns The maximum outline level

subtotal

Promise<void>
subtotal(config: SubtotalConfig): Promise<void>;
ParameterTypeRequired
configSubtotalConfigrequired

Apply automatic subtotals. @param config - Subtotal configuration

getSettings

Promise<OutlineSettings>
getSettings(): Promise<OutlineSettings>;

Get the outline display settings. @returns Current outline settings

setSettings

Promise<void>
setSettings(settings: Partial<OutlineSettings>): Promise<void>;
ParameterTypeRequired
settingsPartial<OutlineSettings>required

Update outline display settings. @param settings - Partial outline settings to update

showOutlineLevels

Promise<void>
showOutlineLevels(rowLevels: number, colLevels: number): Promise<void>;
ParameterTypeRequired
rowLevelsnumberrequired
colLevelsnumberrequired

Show outline to a specific level for rows and/or columns. Groups at levels > the specified level are collapsed; groups at levels <= are expanded. Pass 0 to collapse all, or a number > maxLevel to expand all. @param rowLevels - Target outline level for rows (0 = collapse all rows) @param colLevels - Target outline level for columns (0 = collapse all columns)