{
  "_description": "Mog API method index. Keys are method names, values are one-line summaries. To get full signatures, fetch /docs/api/{InterfaceName}.",
  "_usage": "https://sheetmog.ai/docs/api/{InterfaceName}",
  "version": "0.6.0",
  "total_interfaces": 56,
  "total_methods": 830,
  "workbook": {
    "markClean": "Reset the dirty flag (call after a successful save).",
    "getSheet": "Get a sheet by name (case-insensitive)",
    "getSheetById": "Get a sheet by internal SheetId",
    "findSheet": "Find a worksheet by name (case-insensitive), returning null if not found",
    "getSheetByIndex": "Get a sheet by 0-based index",
    "getOrCreateSheet": "Get a sheet by name, creating it if it doesn't exist",
    "getSheets": "Get all worksheets in display order",
    "getSheetCount": "Get the count of sheets",
    "getSheetNames": "Get all sheet names in display order",
    "undoGroup": "Execute a group of operations as a single undo step",
    "batch": "Execute a group of operations as a single undo step with a label",
    "createCheckpoint": "Create a named checkpoint (version snapshot)",
    "restoreCheckpoint": "Restore the workbook to a previously saved checkpoint.",
    "listCheckpoints": "List all saved checkpoints.",
    "calculate": "Trigger recalculation of formulas",
    "getCalculationMode": "Get the current calculation mode (auto/manual/autoNoTable)",
    "setCalculationMode": "Set the calculation mode",
    "getIterativeCalculation": "Get whether iterative calculation is enabled for circular references",
    "getUsePrecisionAsDisplayed": "Whether to use displayed precision instead of full (15-digit) precision",
    "setUsePrecisionAsDisplayed": "Set whether to use displayed precision",
    "on": "Subscribe to an arbitrary event string",
    "executeCode": "Execute TypeScript/JavaScript code in the spreadsheet sandbox.",
    "getWorkbookSnapshot": "Get a summary snapshot of the entire workbook.",
    "getFunctionCatalog": "Get the catalog of all available spreadsheet functions.",
    "getFunctionInfo": "Get detailed info about a specific function.",
    "describeRanges": "Describe multiple ranges across multiple sheets in a single IPC call",
    "toXlsx": "Export the workbook as XLSX binary data.",
    "insertWorksheets": "Import sheets from XLSX data",
    "save": "Save the workbook to a file path or buffer",
    "captureScreenshot": "Capture a PNG screenshot of a cell range",
    "copyRangeFrom": "Copy a range from another workbook into this workbook.",
    "indexToAddress": "Convert row/col to A1 address: (0, 0) -> \"A1\"",
    "addressToIndex": "Convert A1 address to row/col: \"A1\" -> { row: 0, col: 0 }",
    "union": "Combine multiple range addresses into a single comma-separated address",
    "getCultureInfo": "Get full CultureInfo for the workbook's current culture setting",
    "getDecimalSeparator": "Get the decimal separator for the current culture (e.g",
    "getThousandsSeparator": "Get the thousands separator for the current culture (e.g",
    "searchAllSheets": "Search all sheets for cells matching regex patterns (single IPC call).",
    "getChartDataPointTrack": "Get whether chart data points track cell movement",
    "setChartDataPointTrack": "Set whether chart data points track cell movement.",
    "getSettings": "Get workbook-level settings.",
    "setSettings": "Update workbook-level settings.",
    "getCustomLists": "Get workbook-level custom fill/sort lists",
    "addCustomList": "Add a user-defined custom fill/sort list.",
    "updateCustomList": "Update a user-defined custom fill/sort list",
    "deleteCustomList": "Delete a user-defined custom fill/sort list",
    "setCustomLists": "Replace all user-defined custom fill/sort lists",
    "getCustomSetting": "Get a custom setting value by key",
    "setCustomSetting": "Set a custom setting value.",
    "deleteCustomSetting": "Delete a custom setting by key.",
    "listCustomSettings": "List all custom settings as key-value pairs.",
    "getCustomSettingCount": "Get the number of custom settings.",
    "close": "Close the workbook with optional save behavior",
    "dispose": "Dispose of the workbook and release resources",
    "[Symbol.asyncDispose]": "Async dispose for TC39 Explicit Resource Management",
    "getActiveCell": "Active cell",
    "getSelectedRanges": "Currently selected range(s) as A1 address strings",
    "getSelectedRange": "Primary selected range",
    "getActiveChart": "Active chart object ID, or null.",
    "getActiveShape": "Active shape object ID, or null.",
    "getActiveSlicer": "Active slicer object ID, or null.",
    "setActivePrincipal": "Set the active principal for this session",
    "activePrincipal": "Current active principal, or `null` if none is set.",
    "securityActive": "Whether access-control enforcement is currently active on this",
    "makePrincipal": "Canonicalize a tag list through the engine's intern pool and return"
  },
  "workbook.sub_apis": {
    "sheets (WorkbookSheets)": {
      "add": "Add a new sheet to the workbook",
      "remove": "Remove a sheet by index or name",
      "move": "Move a sheet to a new position",
      "rename": "Rename a sheet",
      "setActive": "Set the active sheet",
      "copy": "Copy a sheet within the workbook",
      "hide": "Hide a sheet",
      "show": "Show (unhide) a sheet",
      "setSelectedIds": "Set which sheets are selected (multi-sheet selection for collaboration)",
      "on": ""
    },
    "slicers (WorkbookSlicers)": {
      "list": "List all slicers across all sheets in the workbook",
      "get": "Get a slicer by ID from any sheet",
      "getItemAt": "Get a slicer by its zero-based index in the list",
      "getItems": "Get the items (values) available in a slicer by ID",
      "getItem": "Get a slicer item by its string key",
      "getItemOrNullObject": "Get a slicer item by its string key, or null if not found",
      "remove": "Remove a slicer by ID from any sheet",
      "getCount": "Get the total count of slicers across all sheets"
    },
    "slicerStyles (WorkbookSlicerStyles)": {
      "getDefault": "Get the workbook's default slicer style preset",
      "setDefault": "Set the workbook's default slicer style preset",
      "getCount": "Get the number of built-in slicer styles.",
      "getItem": "Get a specific slicer style by name",
      "list": "List all built-in slicer styles.",
      "add": "Add a new custom named slicer style",
      "get": "Get a custom named slicer style by name, or null if not found.",
      "remove": "Remove a custom named slicer style",
      "duplicate": "Duplicate an existing named slicer style"
    },
    "timelineStyles (WorkbookTimelineStyles)": {
      "getDefault": "Get the workbook's default timeline style preset",
      "setDefault": "Set the workbook's default timeline style preset",
      "getCount": "Get the number of built-in timeline styles.",
      "getItem": "Get a specific timeline style by name",
      "list": "List all built-in timeline styles.",
      "add": "Add a new custom named timeline style",
      "get": "Get a custom named timeline style by name, or null if not found.",
      "remove": "Remove a custom named timeline style",
      "duplicate": "Duplicate an existing named timeline style"
    },
    "pivotTableStyles (WorkbookPivotTableStyles)": {
      "getDefault": "Get the workbook's default pivot table style preset",
      "setDefault": "Set the workbook's default pivot table style preset",
      "getCount": "Get the count of built-in pivot table styles.",
      "getItem": "Get a pivot table style by name, or null if not found.",
      "list": "List all built-in pivot table styles."
    },
    "functions (WorkbookFunctions)": {
      "invoke": "Invoke any spreadsheet function by name with arbitrary arguments",
      "vlookup": "VLOOKUP function",
      "sum": "SUM function.",
      "average": "AVERAGE function.",
      "count": "COUNT function.",
      "max": "MAX function.",
      "min": "MIN function.",
      "concatenate": "CONCATENATE function."
    },
    "names (WorkbookNames)": {
      "add": "Define a new named range",
      "has": "Check if a named range exists",
      "getCount": "Get the total number of named ranges in the workbook",
      "get": "Get a named range by name",
      "getRange": "Get the parsed sheet reference for a named range",
      "remove": "Remove a named range",
      "update": "Update an existing named range",
      "clear": "Remove all named ranges from the workbook.",
      "list": "List all named ranges in the workbook",
      "createFromSelection": "Create named ranges from row/column labels in a selection",
      "getValue": "Get the computed value of a named item as a display-formatted string",
      "getType": "Get the API type of a named item's resolved value",
      "getArrayValues": "Get the 2D array of resolved values for a named range",
      "getArrayTypes": "Get the 2D array of type classifications for each cell in a named range",
      "getValueAsJson": "Get the raw typed value of a named item as a JSON-compatible value",
      "recalculateDependents": "Recalculate all formulas that depend on a given named range"
    },
    "scenarios (WorkbookScenarios)": {
      "add": "Add a what-if scenario",
      "list": "List all scenarios in the workbook",
      "getActiveScenarioId": "Return the session-scoped active scenario id, if a scenario is currently appl...",
      "getActiveScenarioState": "Return session-scoped active scenario state",
      "apply": "Apply a scenario's values to the worksheet",
      "restore": "Restore original values from a prior apply() call and deactivate the scenario",
      "update": "Update an existing scenario's configuration",
      "remove": "Remove a scenario"
    },
    "history (WorkbookHistory)": {
      "undo": "Undo the last operation.",
      "redo": "Redo the last undone operation.",
      "canUndo": "Check if undo is available",
      "canRedo": "Check if redo is available",
      "list": "Get the undo history entries",
      "goToIndex": "Undo to a specific index in the history",
      "getState": "Get the full undo/redo state from the compute engine",
      "subscribe": "Subscribe to undo/redo state changes",
      "setNextDescription": "Set the description for the next undo step"
    },
    "tableStyles (WorkbookTableStyles)": {
      "list": "Get all table styles (built-in + custom) with a `readOnly` flag.",
      "add": "Create a custom table style",
      "update": "Update a custom table style.",
      "remove": "Remove a custom table style.",
      "getDefault": "Get the default table style ID applied to new tables.",
      "setDefault": "Set the default table style ID for new tables",
      "duplicate": "Duplicate an existing table style"
    },
    "cellStyles (WorkbookCellStyles)": {
      "get": "Get a cell format (style) by its style ID",
      "getStyle": "Get a full cell style by ID",
      "list": "List cell styles",
      "getCatalog": "Get ordered style catalog data for gallery-style consumers.",
      "add": "Create a new custom cell style.",
      "update": "Update a custom cell style",
      "remove": "Delete a custom cell style"
    },
    "properties (WorkbookProperties)": {
      "getDocumentProperties": "Get all document properties (author, title, keywords, etc.).",
      "setDocumentProperties": "Update document properties (partial merge).",
      "getCustomProperty": "Get a custom document property by key.",
      "setCustomProperty": "Set a custom document property.",
      "removeCustomProperty": "Remove a custom document property.",
      "listCustomProperties": "List all custom document properties."
    },
    "protection (WorkbookProtection)": {
      "isProtected": "Check if the workbook structure is currently protected.",
      "getOptions": "Get the current protection options, or null if the workbook is not protected.",
      "protect": "Protect workbook structure with optional password and options.",
      "unprotect": "Unprotect the workbook"
    },
    "security (WorkbookSecurity)": {
      "addPolicy": "Add a new access policy",
      "removePolicy": "Remove a policy by ID",
      "updatePolicy": "Update fields on an existing policy",
      "getPolicies": "Get all policies currently on the document, in stable id-sorted order.",
      "getEffectiveAccess": "Get the effective access level for a principal at a target.",
      "explainAccess": "Explain why a principal has a given access level at a target",
      "applyTemplate": "Apply a named template, generating policies",
      "removeTemplate": "Remove all policies generated by a template."
    },
    "notifications (WorkbookNotifications)": {
      "getAll": "Get all active notifications",
      "subscribe": "Subscribe to notification changes",
      "notify": "Show a notification",
      "info": "Show an info notification",
      "success": "Show a success notification",
      "warning": "Show a warning notification",
      "error": "Show an error notification",
      "dismiss": "Dismiss a notification by ID",
      "dismissAll": "Dismiss all notifications"
    },
    "theme (WorkbookTheme)": {
      "getWorkbookTheme": "Get the workbook's OOXML theme definition (color palette + fonts)",
      "setWorkbookTheme": "Set the workbook's OOXML theme definition",
      "getChromeTheme": "Get the current chrome theme (canvas UI shell colors)",
      "setChromeTheme": "Set chrome theme with partial merge semantics"
    },
    "viewport (WorkbookViewport)": {
      "createRegion": "Create a tracked viewport region",
      "resetSheetRegions": "Reset all regions for a sheet (e.g., on sheet switch).",
      "setRenderScheduler": "Inject (or clear) the render scheduler for \"Write = Invalidate\" integration",
      "subscribe": "Subscribe to viewport state change events from all viewport coordinators",
      "setShowFormulas": "Set the show-formulas mode"
    },
    "changes (WorkbookChanges)": {
      "track": "Create a change tracker that accumulates cell-level change records"
    },
    "links (WorkbookLinks)": {
      "list": "",
      "get": "",
      "add": "",
      "create": "",
      "retarget": "",
      "update": "",
      "break": "",
      "delete": "",
      "getStatus": "",
      "refresh": "",
      "watchStatus": ""
    }
  },
  "worksheet": {
    "getName": "Get the sheet name",
    "setName": "Set the sheet name.",
    "getIndex": "Get the 0-based sheet index.",
    "getSheetId": "Get the internal sheet ID",
    "setCell": "Set a cell value by A1 address",
    "setDateValue": "Set a calendar date in a cell, automatically applying a date format",
    "setTimeValue": "Set a time-of-day in a cell, automatically applying a time format",
    "getCell": "Get cell data by A1 address.",
    "getRange": "Get a 2D array of cell data for a range (A1 notation).",
    "getRanges": "Get cell data for multiple ranges at once (spreadsheet special-cell typeWorks...",
    "setRange": "Set a 2D array of values into a range (A1 notation)",
    "setArrayFormula": "Enter a CSE (`Ctrl+Shift+Enter`) array formula on the given range",
    "clearData": "Clear all cell data (values and formulas) in a range (A1 notation, e.g",
    "clear": "Unified clear with mode selection (spreadsheet special-cell typeRange.clear e...",
    "clearOrResetContents": "Clear cell contents with form control awareness (spreadsheet special-cell typ...",
    "getControl": "Get the cell control (e.g., checkbox) for a cell by A1 address",
    "setControl": "Set or clear a cell control by A1 address",
    "getValue": "Get the computed value of a cell by A1 address",
    "getData": "Get all cell values in the used range as a 2D array",
    "getValues": "Get cell values for a range as a 2D array",
    "evaluate": "Evaluate a formula expression in the context of this sheet without writing",
    "validateFormulaSyntax": "Validate a formula expression in the context of this sheet without writing",
    "getFormula": "Get the formula of a cell by A1 address (null if not a formula cell).",
    "getFormulas": "Get formulas for a range",
    "getFormulasR1C1": "Get formulas for a range in R1C1 notation",
    "getFormulaArray": "Get the array formula for a cell that is part of a dynamic array spill",
    "getRawCellData": "Get raw cell data (value, formula, format, borders, etc.) by A1 address.",
    "getRawRangeData": "Get raw data for a range as a 2D array (A1 notation or CellRange).",
    "getRangeWithIdentity": "Get all non-empty cells in a range with stable CellId identity",
    "describe": "Get a human-readable description of a cell or the entire used range",
    "describeRange": "Get a tabular description of a range with formula abbreviation.",
    "summarize": "Get a sheet overview summary for agent context.",
    "getUsedRange": "Get the used range, or null if the sheet is empty.",
    "getCurrentRegion": "Get the contiguous data region around a cell (Excel's Ctrl+Shift+* / CurrentR...",
    "findDataEdge": "Find the data edge in a direction (Excel's Ctrl+Arrow)",
    "findLastRow": "Find the last populated row in a column",
    "findLastColumn": "Find the last populated column in a row",
    "findCells": "Find all cells matching a predicate",
    "findByValue": "Find all cells with a specific value",
    "findByFormula": "Find all cells whose formula matches a regex pattern",
    "regexSearch": "Search cells using regex patterns.",
    "signCheck": "Detect cells whose numeric sign disagrees with their neighbors",
    "findInRange": "Find the first cell matching text within a range (spreadsheet special-cell ty...",
    "replaceAll": "Find and replace all occurrences within a range (spreadsheet special-cell typ...",
    "getExtendedRange": "Get the extended range in a direction (spreadsheet special-cell typeRange.get...",
    "isEntireColumn": "Check if a range represents entire column(s) (e.g., \"A:C\")",
    "isEntireRow": "Check if a range represents entire row(s) (e.g., \"1:5\")",
    "getVisibleView": "Get only the visible (non-hidden) rows from a range (visible range-view equiv...",
    "getSpecialCells": "Find cells matching a special cell type (spreadsheet special-cell typeRange.g...",
    "getValueForEditing": "Get the edit-mode string representation of a cell value",
    "getDisplayValue": "Get the display value (formatted string) for a cell by A1 address.",
    "getDisplayValues": "Get the formatted display values for a range as a 2D array",
    "getValueTypes": "Get per-cell value type classification for a range (spreadsheet special-cell ...",
    "getNumberFormatCategories": "Get per-cell number format category for a range (spreadsheet special-cell typ...",
    "sortRange": "Sort a range by the specified options (A1 notation).",
    "sortByColor": "Sort a range by cell or font color, putting matched-color rows on top or bottom",
    "autoFill": "Autofill from source range into target range",
    "fillSeries": "Fill a range with a series (Edit > Fill > Series dialog equivalent)",
    "moveTo": "Move (relocate) cells from a source range to a target position",
    "copyFrom": "Copy cells from a source range to a target range with optional paste-special ...",
    "setCells": "Bulk-write scattered cell values and/or formulas in a single IPC call",
    "toCSV": "Export the used range as a CSV string (RFC 4180 compliant)",
    "toJSON": "Export the used range as an array of row objects",
    "getDependents": "Get cells that depend on this cell by A1 address.",
    "getPrecedents": "Get cells that this cell depends on by A1 address.",
    "enableCalculation": "Per-sheet toggle that controls whether formulas on this sheet are",
    "calculate": "Force recalculation of this sheet",
    "getSelectionAggregates": "Get aggregates (SUM, COUNT, AVG, MIN, MAX) for selected ranges.",
    "formatValues": "Batch-format values using number format codes",
    "getVisibility": "Get the visibility state of the sheet ('visible', 'hidden', or 'veryHidden').",
    "setVisibility": "Set the visibility state of the sheet.",
    "getNext": "Returns the next worksheet",
    "getNextOrNull": "Returns the next worksheet, or null if none exists",
    "getPrevious": "Returns the previous worksheet",
    "getPreviousOrNull": "Returns the previous worksheet, or null if none exists",
    "on": "",
    "refreshActiveCellData": "Refresh the active-cell metadata cache (Stream C fix)",
    "refreshActiveCellEditSource": "Refresh the active-cell edit-source read model for the given cell",
    "getActiveCellEditSource": "Synchronously read the active-cell edit-source cache when it matches the",
    "setBoundsReader": "Inject the bounds reader (from the renderer's SceneGraphBoundsReader) so that"
  },
  "worksheet.sub_apis": {
    "cells (WorksheetCellsAccessor)": {
      "get": "Read a typed cell record by A1 address (e.g"
    },
    "whatIf (WorksheetWhatIf)": {
      "goalSeek": "Find the input value that makes a formula produce a target result",
      "dataTable": "Compute a sensitivity/scenario table by evaluating a formula with",
      "createDataTable": "Create a persistent two-variable Data Table over the selected table range"
    },
    "smartArt (WorksheetSmartArt)": {
      "add": "Add a diagram to the sheet",
      "get": "Get a diagram by object ID, or null if not found.",
      "has": "Check if a diagram exists by object ID.",
      "getCount": "Get the total number of diagrams on this sheet.",
      "remove": "Remove a diagram by object ID.",
      "list": "List all diagrams on the sheet.",
      "clear": "Remove all diagrams from the sheet.",
      "duplicate": "Duplicate a diagram",
      "addNode": "Add a node to a diagram",
      "removeNode": "Remove a node from a diagram.",
      "updateNode": "Update a node's properties.",
      "moveNode": "Move a node in the hierarchy.",
      "getNode": "Get a node by ID.",
      "getDiagram": "@deprecated Use `get(objectId)` instead",
      "getDiagramsOnSheet": "@deprecated Use `list()` instead",
      "changeLayout": "Change the diagram layout.",
      "changeQuickStyle": "Change the quick style.",
      "changeColorTheme": "Change the color theme.",
      "getComputedLayout": "Get the computed layout for a diagram",
      "invalidateLayout": "Invalidate the cached layout for a diagram.",
      "invalidateAllLayouts": "Invalidate all cached layouts."
    },
    "changes (WorksheetChanges)": {
      "track": "Create a change tracker that accumulates cell-level change records"
    },
    "formats (WorksheetFormats)": {
      "set": "Set format for a single cell",
      "setRange": "Set format for a contiguous range",
      "setRanges": "Set format for multiple ranges, with full row/column optimization",
      "hasExplicit": "Check if a cell has explicit formatting applied (not just inherited from row/...",
      "clearCell": "Clear format from a single cell, resetting it to default",
      "clear": "Clear all cell formats in the worksheet, resetting to defaults.",
      "clearRange": "Clear all format properties from cells in a contiguous range",
      "clearRanges": "Clear all format properties from cells in multiple ranges",
      "get": "Get the fully-resolved format of a single cell",
      "getDisplayedCellProperties": "Get the fully-resolved displayed format of a single cell",
      "getDisplayedRangeProperties": "Get displayed formats for a rectangular range",
      "adjustIndent": "Adjust the indent level of a cell by a relative amount",
      "clearFill": "Clear only fill properties of a cell (backgroundColor, patternType, patternFo...",
      "clearFillForRanges": "Clear only fill properties for multiple ranges",
      "getNumberFormatCategory": "Get the auto-derived number format category for a cell based on its format code",
      "getNumberFormatLocal": "Get the locale-aware number format for a cell (spreadsheet special-cell typeR...",
      "setNumberFormatLocal": "Set the locale-aware number format for a cell (spreadsheet special-cell typeR...",
      "applyPattern": "Apply a format pattern from a source range to a target range",
      "getCellProperties": "Get effective (resolved) cell formats for a rectangular range",
      "setCellProperties": "Set cell formats for a batch of individual cells with heterogeneous formats",
      "getRowProperties": "Get row-level formats for the specified rows",
      "setRowProperties": "Set row-level formats for multiple rows",
      "getColumnProperties": "Get column-level formats for the specified columns",
      "setColumnProperties": "Set column-level formats for multiple columns"
    },
    "layout (WorksheetLayout)": {
      "getRowHeight": "Get the height of a row in pixels",
      "setRowHeight": "Set the height of a row",
      "getColumnWidth": "Get the width of a column in pixels",
      "setColumnWidth": "Set the width of a column in pixels",
      "getColumnWidthChars": "Get the width of a column in character-width units",
      "setColumnWidthChars": "Set the width of a column in character-width units",
      "setColumnWidths": "Set multiple column widths in pixels",
      "setColumnWidthsChars": "Set multiple column widths in character-width units",
      "autoFitColumn": "Auto-fit a column width to its content",
      "autoFitColumns": "Auto-fit multiple columns to their content in a single batch call",
      "autoFitRow": "Auto-fit a row height to its content",
      "autoFitRows": "Auto-fit multiple rows to their content in a single batch call",
      "getRowHeightsBatch": "Get row heights for a range of rows",
      "getColWidthsBatch": "Get column widths for a range of columns in pixels",
      "getColWidthsBatchChars": "Get column widths for a range of columns in character-width units",
      "setRowVisible": "Set the visibility of a single row",
      "setColumnVisible": "Set the visibility of a single column",
      "isRowHidden": "Check whether a row is hidden",
      "isColumnHidden": "Check whether a column is hidden",
      "unhideRows": "Unhide all rows in a range",
      "unhideColumns": "Unhide all columns in a range",
      "hideRows": "Hide multiple rows by index",
      "hideColumns": "Hide multiple columns by index",
      "getHiddenRowsBitmap": "Get the set of all hidden row indices",
      "getHiddenColumnsBitmap": "Get the set of all hidden column indices",
      "resetRowHeight": "Reset a row's height to the sheet default",
      "resetColumnWidth": "Reset a column's width to the sheet default",
      "getRowPosition": "Get the pixel offset of a row's top edge from the worksheet origin",
      "getColPosition": "Get the pixel offset of a column's left edge from the worksheet origin",
      "getRangePosition": "Get the pixel bounds of a range (top, left, height, width)"
    },
    "view (WorksheetView)": {
      "freezeRows": "Freeze the top N rows",
      "freezeColumns": "Freeze the left N columns",
      "freezePanes": "Freeze rows and columns simultaneously",
      "unfreeze": "Remove all frozen panes (both rows and columns).",
      "getFrozenPanes": "Get the current frozen panes configuration",
      "freezeAt": "Freeze rows and columns simultaneously using a range reference",
      "getSplitConfig": "Get the current split view configuration",
      "setSplitConfig": "Set or clear the split view configuration",
      "setGridlines": "Show or hide gridlines",
      "setHeadings": "Show or hide row/column headings",
      "getViewOptions": "Get the current view options (gridlines, headings)",
      "setShowFormulas": "Show formula source text in cells instead of calculated display values",
      "getTabColor": "Get the tab color of this worksheet",
      "setTabColor": "Set or clear the tab color for this worksheet",
      "getScrollPosition": "Get the persistent scroll position (cell-level) for this sheet.",
      "setScrollPosition": "Set the persistent scroll position (cell-level) for this sheet."
    },
    "structure (WorksheetStructure)": {
      "insertRows": "Insert rows starting at the given 0-based index.",
      "deleteRows": "Delete rows starting at the given 0-based index.",
      "insertColumns": "Insert columns starting at the given 0-based index.",
      "deleteColumns": "Delete columns starting at the given 0-based index.",
      "insertCellsWithShift": "Insert cells by shifting existing cells in the specified direction.",
      "deleteCellsWithShift": "Delete cells by shifting remaining cells in the specified direction.",
      "getRowCount": "Get the number of rows with data.",
      "getColumnCount": "Get the number of columns with data.",
      "textToColumns": "Split text in a column into multiple columns.",
      "removeDuplicates": "Remove duplicate rows in a range.",
      "merge": "Merge cells by A1 range.",
      "unmerge": "Unmerge cells by A1 range.",
      "getMergedRegions": "Get all merged regions in the sheet.",
      "getMergeAtCell": "Get the merge containing a cell by A1 address, or null if not merged."
    },
    "charts (WorksheetCharts)": {
      "add": "Add a chart to the sheet",
      "get": "Get a chart by ID, or null if not found.",
      "update": "Update a chart's configuration.",
      "remove": "Remove a chart by ID.",
      "list": "List all charts in the sheet.",
      "clear": "Remove all charts from the sheet.",
      "duplicate": "Duplicate a chart, offsetting the copy by 2 rows",
      "exportImage": "Export a chart as an image",
      "setDataRange": "Set a chart's data range (A1 notation).",
      "setType": "Set a chart's type and optional sub-type.",
      "has": "Check if a chart exists by ID.",
      "getCount": "Get the total number of charts on this sheet.",
      "getByName": "Find a chart by its name, or null if not found.",
      "bringToFront": "Bring a chart to the front (highest z-index).",
      "sendToBack": "Send a chart to the back (lowest z-index).",
      "bringForward": "Bring a chart forward by one layer.",
      "sendBackward": "Send a chart backward by one layer.",
      "linkToTable": "Link a chart to a table so it auto-updates with the table's data.",
      "unlinkFromTable": "Unlink a chart from its source table.",
      "isLinkedToTable": "Check whether a chart is linked to a table.",
      "addSeries": "Add a data series to a chart",
      "removeSeries": "Remove a data series by index.",
      "getSeries": "Get a data series by index.",
      "updateSeries": "Update a data series at the given index.",
      "getSeriesCount": "Get the number of data series in a chart.",
      "reorderSeries": "Reorder a series from one index to another.",
      "setSeriesValues": "Set the values range for a series (A1 notation).",
      "setSeriesCategories": "Set the categories range for a series (A1 notation).",
      "getSeriesBinOptions": "Get per-series histogram bin options, or null if not set (falls back to chart...",
      "setSeriesBinOptions": "Set per-series histogram bin options (overrides chart-level histogram config).",
      "getSeriesBoxwhiskerOptions": "Get per-series box/whisker options, or null if not set (falls back to chart-l...",
      "setSeriesBoxwhiskerOptions": "Set per-series box/whisker options (overrides chart-level boxplot config).",
      "formatPoint": "Format an individual data point within a series.",
      "setPointDataLabel": "Set the data label configuration for an individual data point.",
      "addTrendline": "Add a trendline to a series",
      "removeTrendline": "Remove a trendline from a series by index.",
      "getTrendline": "Get a trendline configuration by index, or null if not found.",
      "getTrendlineCount": "Get the number of trendlines on a series.",
      "getDataTable": "Get the chart's data table configuration, or null if none.",
      "getItemAt": "Get a chart by its positional index, or null if out of range.",
      "setBubbleSizes": "Set the bubble sizes range for a series (A1 notation).",
      "onActivated": "Register a handler for chart activation events",
      "onDeactivated": "Register a handler for chart deactivation events",
      "getAxisItem": "Get an axis by spreadsheet special-cell typetype/group identifiers.",
      "setAxisTitle": "Set axis title from a formula string.",
      "setCategoryNames": "Set category axis labels from a cell range (A1 notation).",
      "getSeriesDimensionValues": "Get computed values for a series dimension.",
      "getSeriesDimensionDataSourceString": "Get the range/formula string for a series dimension.",
      "getSeriesDimensionDataSourceType": "Get the data source type for a series dimension ('range' | 'literal' | 'formu...",
      "getDataLabelSubstring": "Get a rich text substring from a data label.",
      "setDataLabelHeight": "Set the height of a data label.",
      "setDataLabelWidth": "Set the width of a data label.",
      "getDataLabelTailAnchor": "Get the tail anchor point for a data label's leader line.",
      "setTitleFormula": "Set chart title from a formula string.",
      "getTitleSubstring": "Get a rich text substring from the chart title.",
      "activate": "Activate (select + focus) a chart"
    },
    "objects (WorksheetObjectCollection)": {
      "get": "Get a floating object handle by ID",
      "getInfo": "Get summary info (with spatial fields) for a floating object",
      "list": "List all floating objects on the sheet.",
      "removeMany": "Remove multiple floating objects",
      "remove": "Remove a single floating object by ID",
      "bringToFront": "Bring a floating object to the front (highest z-order).",
      "sendToBack": "Send a floating object to the back (lowest z-order).",
      "bringForward": "Bring a floating object forward by one layer.",
      "sendBackward": "Send a floating object backward by one layer.",
      "update": "Update arbitrary properties of a floating object.",
      "convertToWordArt": "Convert a text box to decorative text by applying text-effect styling.",
      "convertToTextBox": "Convert decorative text back to a regular text box by removing text-effect st...",
      "computeObjectBounds": "Compute pixel bounding box for a floating object (async — uses ComputeBridge).",
      "computeAllObjectBounds": "Batch-compute pixel bounds for all floating objects on this sheet.",
      "group": "Group multiple floating objects",
      "ungroup": "Ungroup a floating object group."
    },
    "shapes (WorksheetShapeCollection)": {
      "get": "",
      "list": "",
      "add": "",
      "getItemAt": "Get a shape by zero-based index"
    },
    "pictures (WorksheetPictureCollection)": {
      "get": "",
      "list": "",
      "add": ""
    },
    "textBoxes (WorksheetTextBoxCollection)": {
      "get": "",
      "list": "",
      "add": ""
    },
    "drawings (WorksheetDrawingCollection)": {
      "get": "",
      "list": "",
      "add": ""
    },
    "equations (WorksheetEquationCollection)": {
      "get": "",
      "list": "",
      "add": "",
      "getDefaultStyle": "",
      "getDefaults": ""
    },
    "wordArt (WorksheetWordArtCollection)": {
      "get": "",
      "list": "",
      "add": "",
      "getDefaultConfig": "",
      "getDefaults": ""
    },
    "connectors (WorksheetConnectorCollection)": {
      "get": "",
      "list": ""
    },
    "filters (WorksheetFilters)": {
      "add": "Add an auto-filter to the sheet",
      "applyAdvanced": "Apply an Excel Advanced Filter",
      "byColor": "Filter a column by cell or font color",
      "get": "Get the current auto-filter state",
      "clear": "Clear the auto-filter from the sheet",
      "setAutoFilter": "@deprecated Use {@link add} instead",
      "clearAutoFilter": "@deprecated Use {@link clear} instead",
      "getAutoFilter": "@deprecated Use {@link get} instead",
      "getForRange": "Get the filter overlapping a range, or null if none",
      "remove": "Remove a specific filter by its ID",
      "setColumnFilter": "Set filter criteria for a column on an auto-filter",
      "applyDynamicFilter": "Apply a dynamic filter rule to a column on an auto-filter",
      "clearColumnFilter": "Clear filter criteria for a column on an auto-filter",
      "getUniqueValues": "Get unique values in a column (for filter dropdowns)",
      "setCriteria": "@deprecated Use {@link setColumnFilter} instead",
      "clearCriteria": "@deprecated Use {@link clearColumnFilter} instead",
      "clearAllCriteria": "Clear all filter criteria for a filter",
      "apply": "Apply a filter (Rust evaluates criteria and updates row visibility)",
      "getInfo": "Get detailed filter info including resolved range and column filters",
      "getFilterUniqueValues": "@deprecated Use {@link getUniqueValues} instead",
      "list": "List all filters in the sheet with full detail (resolved numeric ranges",
      "isEnabled": "Whether any auto-filter exists on the sheet",
      "isDataFiltered": "Whether any filter on the sheet has active criteria applied",
      "listDetails": "@deprecated Use {@link list} instead, which now returns full detail",
      "getSortState": "Get the sort state for a filter",
      "setSortState": "Set the sort state for a filter"
    },
    "formControls (WorksheetFormControls)": {
      "add": "Add a checkbox or comboBox form control on this sheet.",
      "addCheckbox": "Add a checkbox form control on this sheet.",
      "addComboBox": "Add a comboBox form control on this sheet.",
      "list": "Get all form controls on this sheet.",
      "get": "Get a specific form control by ID",
      "getAtPosition": "Get form controls at a specific cell position (for hit testing).",
      "update": "Update a control on this sheet",
      "move": "Move a control on this sheet to a new anchor cell.",
      "resize": "Resize a control on this sheet.",
      "remove": "Remove a control from this sheet"
    },
    "conditionalFormats (WorksheetConditionalFormatting)": {
      "add": "Add a new conditional format with ranges and rules",
      "get": "Get a conditional format by its ID",
      "has": "Check if a conditional format exists by ID",
      "getCount": "Get the total number of conditional formats on this sheet",
      "update": "Update an existing conditional format",
      "clearRuleStyle": "Clear the style of a specific rule within a conditional format, resetting",
      "changeRuleType": "Change the type and configuration of a specific rule within a conditional for...",
      "getItemAt": "Get a conditional format by its index in the priority-ordered list",
      "remove": "Remove a conditional format by ID",
      "removeRule": "Remove a single rule from a conditional format",
      "list": "Get all conditional formats on the sheet",
      "clear": "Clear all conditional formats from the sheet.",
      "clearInRanges": "Clear conditional formats that intersect with the given ranges",
      "reorder": "Reorder conditional formats by format ID array (first = highest priority)",
      "cloneForPaste": "Clone conditional formats from source to target with offset"
    },
    "validations (WorksheetValidation)": {
      "set": "Set a validation rule on a cell or range",
      "remove": "Remove validation from a cell (deletes any range schema covering the cell)",
      "get": "Get the validation rule for a cell",
      "peek": "Synchronously read a validation rule when this sheet's validation cache is",
      "has": "Check if a cell has a validation rule",
      "getCount": "Get the total number of validation rules on this sheet",
      "getDropdownItems": "Get dropdown items for a cell with list validation",
      "list": "List all validation rules on the sheet",
      "clear": "Clear all validation rules from the sheet",
      "clearInRange": "Clear validation rules that overlap a range",
      "removeById": "Remove a validation rule by its ID",
      "validate": "Validate a candidate value for a cell against the rule covering it",
      "getErrorsInRange": "Get cells with validation errors in a range"
    },
    "tables (WorksheetTables)": {
      "add": "Create a new table from a cell range",
      "get": "Get a table by name",
      "has": "Check if a table exists by name",
      "list": "List all tables in this worksheet",
      "getCount": "Get the total number of tables on this worksheet",
      "getItemAt": "Get a table by its position in the list of tables on this worksheet",
      "getFirst": "Get the first table on this worksheet",
      "getColumnByName": "Look up a column in a table by its header name",
      "remove": "Remove a table definition, converting it back to a plain range",
      "clear": "Remove all tables from this worksheet.",
      "rename": "Rename a table",
      "update": "Update a table's properties",
      "getAtCell": "Get the table at a specific cell position, if one exists",
      "clearFilters": "Clear all column filters on a table",
      "setStylePreset": "Set the visual style preset for a table",
      "resize": "Resize a table to a new range",
      "addColumn": "Add a column to a table",
      "removeColumn": "Remove a column from a table by index",
      "toggleTotalsRow": "@deprecated Use {@link setShowTotals} instead",
      "toggleHeaderRow": "@deprecated Use {@link setShowHeaders} instead",
      "applyAutoExpansion": "Apply auto-expansion to a table, extending it to include adjacent data",
      "setCalculatedColumn": "Set a calculated column formula for all data cells in a table column",
      "clearCalculatedColumn": "Clear the calculated column formula from a table column, replacing with empty...",
      "getDataBodyRange": "Get the A1-notation range covering the data body of a table (excludes header ...",
      "getHeaderRowRange": "Get the A1-notation range covering the header row of a table",
      "getTotalRowRange": "Get the A1-notation range covering the totals row of a table",
      "addRow": "Add a data row to a table",
      "deleteRow": "Delete a data row from a table",
      "deleteRows": "Delete multiple data rows from a table by their data-body-relative indices",
      "deleteRowsAt": "Delete one or more contiguous data rows from a table starting at `index`",
      "getRowCount": "Get the number of data rows in a table (excludes header and totals rows)",
      "getRowRange": "Get the A1-notation range for a specific data row",
      "getRowValues": "Get the cell values of a specific data row",
      "setRowValues": "Set the cell values of a specific data row",
      "getColumnDataBodyRange": "Get the A1-notation range covering the data body cells of a table column",
      "getColumnHeaderRange": "Get the A1-notation range covering the header cell of a table column",
      "getColumnRange": "Get the A1-notation range covering the entire table column (header + data + t...",
      "getColumnTotalRange": "Get the A1-notation range covering the totals cell of a table column",
      "getColumnValues": "Get the cell values of a table column (data body only)",
      "setColumnValues": "Set the cell values of a table column (data body only)",
      "setHighlightFirstColumn": "Set whether the first column is highlighted",
      "setHighlightLastColumn": "Set whether the last column is highlighted",
      "setShowBandedColumns": "Set whether banded columns are shown",
      "setShowBandedRows": "Set whether banded rows are shown",
      "setShowFilterButton": "Set whether filter buttons are shown on the header row",
      "setShowHeaders": "Set whether the header row is visible",
      "setShowTotals": "Set whether the totals row is visible",
      "applyIconFilter": "Apply an icon filter to a table column",
      "getAutoFilter": "Get the auto-filter associated with a table",
      "getRows": "Get a collection-like wrapper around the table's data rows"
    },
    "pivots (WorksheetPivots)": {
      "add": "Create a new pivot table on this worksheet",
      "addWithSheet": "Atomically create a new sheet AND a pivot table on it",
      "remove": "Remove a pivot table by name",
      "clear": "Remove all pivot tables from this worksheet.",
      "rename": "Rename a pivot table by name",
      "list": "List all pivot tables on this worksheet",
      "get": "Get a pivot table handle by name",
      "getInfo": "Get plain data information about a pivot table by name",
      "has": "Check if a pivot table exists by name",
      "getCount": "Get the total number of pivot tables on this worksheet",
      "addPlacement": "",
      "updatePlacement": "",
      "removePlacement": "",
      "movePlacement": "",
      "renameValuePlacement": "",
      "setSortByValue": "",
      "addField": "Add a field to a pivot table area, resolved by pivot name",
      "removeField": "Remove a field from a pivot table area, resolved by pivot name",
      "moveField": "Move a field to a different area or position, resolved by pivot name",
      "setAggregateFunction": "",
      "setShowValuesAs": "",
      "setSortOrder": "",
      "resetPlacement": "",
      "setAggregateFunctionLegacy": "Set the aggregate function for a value field, resolved by pivot name",
      "setShowValuesAsLegacy": "Set the \"Show Values As\" calculation for a value field",
      "setSortOrderLegacy": "Set the sort order for a row or column field, resolved by pivot name",
      "setFilter": "Set (add or update) a filter on a field, resolved by pivot name",
      "removeFilter": "Remove a filter from a field, resolved by pivot name",
      "resetField": "Reset a field placement to defaults, resolved by pivot name",
      "setLayout": "Set layout options for a pivot table, resolved by pivot name",
      "setStyle": "Set style options for a pivot table, resolved by pivot name",
      "detectFields": "Detect fields from source data for pivot table creation",
      "compute": "Compute a pivot table result by name (uses cache if available)",
      "queryPivot": "Query a pivot table by name, returning flat records optionally filtered by di...",
      "refresh": "Refresh a pivot table by name (recompute without cache)",
      "refreshAll": "Refresh all pivot tables on this worksheet.",
      "getDrillDownData": "Get drill-down data for a pivot table cell, resolved by pivot name",
      "addCalculatedField": "",
      "addCalculatedFieldAndPlace": "",
      "updateCalculatedField": "",
      "removeCalculatedField": "",
      "addCalculatedFieldLegacy": "Add a calculated field to a pivot table, resolved by pivot name",
      "removeCalculatedFieldLegacy": "Remove a calculated field from a pivot table, resolved by pivot name",
      "updateCalculatedFieldLegacy": "Update a calculated field on a pivot table, resolved by pivot name",
      "getRange": "Get the full range occupied by the rendered pivot table, resolved by pivot name",
      "getDataBodyRange": "Get the range of the data body, resolved by pivot name",
      "getColumnLabelRange": "Get the range of column label headers, resolved by pivot name",
      "getRowLabelRange": "Get the range of row label headers, resolved by pivot name",
      "getFilterAxisRange": "Get the range of the filter area, resolved by pivot name",
      "getAllPivotItems": "Get pivot items for all placed fields, resolved by pivot name",
      "setPivotItemVisibility": "Set visibility of specific items in a field, resolved by pivot name",
      "toggleExpanded": "Toggle expansion state for a header, resolved by pivot name",
      "setAllExpanded": "Set expansion state for all headers, resolved by pivot name",
      "getExpansionState": "Get the current expansion state, resolved by pivot name",
      "getDataSourceType": "Get the data source type of a pivot table (range, table, or external)",
      "setDataSource": "Change the source data range for a pivot table without refreshing it",
      "getAllowMultipleFiltersPerField": "Get whether multiple filters per field are allowed on a pivot table",
      "setAllowMultipleFiltersPerField": "Set whether multiple filters per field are allowed on a pivot table",
      "getAutoFormat": "Get whether the pivot table auto-formats when refreshed",
      "setAutoFormat": "Set whether the pivot table auto-formats when refreshed",
      "getPreserveFormatting": "Get whether custom formatting is preserved on refresh",
      "setPreserveFormatting": "Set whether custom formatting is preserved on refresh",
      "getDataHierarchy": "Identify which data hierarchy (value field) a pivot cell belongs to",
      "getPivotItems": "Identify which row/column items intersect at a given pivot output cell",
      "getEnableMultipleFilterItems": "Get whether multiple filter items per field are enabled for a specific field",
      "setEnableMultipleFilterItems": "Set whether multiple filter items per field are enabled for a specific field"
    },
    "slicers (WorksheetSlicers)": {
      "add": "Create a new slicer on this worksheet",
      "remove": "Remove a slicer from this worksheet",
      "clear": "Remove all slicers from this worksheet.",
      "list": "List all slicers on this worksheet",
      "has": "Check if a slicer exists by ID",
      "getCount": "Get the total number of slicers on this worksheet",
      "get": "Get a slicer by ID, including full state",
      "getByName": "Find a slicer by its name, or null if not found",
      "getItemAt": "Get a slicer by its zero-based index in the list",
      "getItems": "Get the items (values) available in a slicer",
      "getItem": "Get a slicer item by its string key",
      "getItemOrNullObject": "Get a slicer item by its string key, or null if not found",
      "setSelection": "Set the selected items in a slicer, replacing any existing selection",
      "clearSelection": "Clear all selections in a slicer (show all items)",
      "duplicate": "Duplicate a slicer with an optional position offset",
      "update": "Update a slicer's configuration",
      "getState": "Get the enriched runtime state of a slicer"
    },
    "sparklines (WorksheetSparklines)": {
      "add": "Add a sparkline to a cell (A1 address form)",
      "addGroup": "Add a group of sparklines with shared settings",
      "get": "Get a sparkline by ID",
      "getAtCell": "Get the sparkline at a specific cell",
      "list": "List all sparklines in the worksheet",
      "getGroup": "Get a sparkline group by ID",
      "listGroups": "List all sparkline groups in the worksheet",
      "update": "Update a sparkline's settings",
      "updateGroup": "Update a sparkline group's settings (applies to all members)",
      "remove": "Remove a sparkline",
      "removeGroup": "Remove a sparkline group and all its member sparklines",
      "clearInRange": "Clear all sparklines whose cell falls within a range",
      "clear": "Clear all sparklines in the worksheet.",
      "clearAll": "Clear all sparklines in the worksheet",
      "addToGroup": "Add a sparkline to a group",
      "removeFromGroup": "Remove a sparkline from its group (becomes standalone)",
      "ungroupAll": "Ungroup all sparklines in a group (members become standalone)",
      "has": "Check if a cell has a sparkline",
      "getCount": "Get the total number of sparklines on this sheet",
      "getWithDataInRange": "Get sparklines whose data range intersects with a given range"
    },
    "comments (WorksheetComments)": {
      "addNote": "Add a note to a cell (options object form)",
      "setNote": "@deprecated Use the options-object overload instead",
      "getNote": "Get the note for a cell as a Note object",
      "removeNote": "Remove the note from a cell",
      "getCount": "Get the total number of comments (notes + threaded) on this worksheet.",
      "noteCount": "Get the number of notes (legacy comments) in the worksheet",
      "listNotes": "List all notes (legacy comments) in the worksheet",
      "getNoteAt": "Get a note by index from the list of all notes",
      "setNoteVisible": "Set the visibility of a note at the given cell address",
      "setNoteHeight": "Set the height of a note callout box in points",
      "setNoteWidth": "Set the width of a note callout box in points",
      "add": "Add a threaded comment to a cell (options object form)",
      "update": "Update an existing comment",
      "remove": "Remove a threaded comment by ID",
      "resolveThread": "Set the resolved state of a comment thread",
      "list": "List all comments in the worksheet",
      "getForCell": "Get all comments for a specific cell",
      "addReply": "Add a reply to an existing comment",
      "convertNoteToThread": "Convert a legacy note into a modern threaded comment",
      "getThread": "Get all comments in a thread (root + replies), sorted by createdAt",
      "getById": "Get a single comment by its ID",
      "getLocation": "Get the A1-style cell address for a comment",
      "getParentByReplyId": "Get the parent comment for a reply",
      "getReplyCount": "Get the number of replies in a thread (excluding the root comment)",
      "getReplyAt": "Get a reply at a specific index within a thread (zero-based, excludes root)",
      "getNoteLocation": "Get the A1-style cell address for a note",
      "hasComment": "Check if a cell has any comments",
      "removeForCell": "Remove all comments on a cell",
      "clear": "Clear all comments on the worksheet.",
      "clean": "Remove orphaned comments (comments referencing non-existent cells)"
    },
    "customProperties (WorksheetCustomProperties)": {
      "get": "Get a custom property value by key",
      "set": "Set a custom property",
      "delete": "Delete a custom property",
      "getAll": "Get all custom properties as a record",
      "count": "Get the count of custom properties"
    },
    "hyperlinks (WorksheetHyperlinks)": {
      "set": "Set a hyperlink on a cell",
      "get": "Get the hyperlink URL for a cell",
      "has": "Check if a cell has a hyperlink",
      "remove": "Remove a hyperlink from a cell",
      "list": "List all hyperlinks in the worksheet",
      "clear": "Remove all hyperlinks from the worksheet."
    },
    "outline (WorksheetOutline)": {
      "groupRows": "Group rows in a range",
      "ungroupRows": "Ungroup rows in a range",
      "groupColumns": "Group columns in a range",
      "ungroupColumns": "Ungroup columns in a range",
      "toggleCollapsed": "Toggle the collapsed state of a group",
      "expandAll": "Expand all groups in the worksheet.",
      "collapseAll": "Collapse all groups in the worksheet.",
      "getState": "Get the full group state for the worksheet",
      "getLevel": "Get the outline level of a specific row or column",
      "getMaxLevel": "Get the maximum outline level for rows or columns",
      "subtotal": "Apply automatic subtotals",
      "getSettings": "Get the outline display settings",
      "setSettings": "Update outline display settings",
      "showOutlineLevels": "Show outline to a specific level for rows and/or columns"
    },
    "protection (WorksheetProtection)": {
      "isProtected": "Check whether the sheet is currently protected",
      "protect": "Protect the sheet with an optional password",
      "protectWithOptions": "Protect the sheet with an optional password and granular permission options",
      "unprotect": "Unprotect the sheet",
      "canEditCell": "Check whether a specific cell can be edited under current protection",
      "canEditCellFast": "Synchronous protection fast path for edit-entry commands",
      "canDoStructureOp": "Check whether a structural operation is allowed under current protection",
      "canSort": "Check whether sorting is allowed under current protection",
      "getConfig": "Get the full protection configuration for the sheet",
      "getSelectionMode": "Get the current selection mode when the sheet is protected",
      "setSelectionMode": "Set the selection mode for when the sheet is protected",
      "pauseProtection": "Temporarily suspend sheet protection",
      "resumeProtection": "Re-enable previously paused protection with the original configuration.",
      "checkPassword": "Check if the given password matches the current protection password",
      "setPassword": "Change the protection password without needing to unprotect/re-protect",
      "updateOptions": "Update protection options without needing to unprotect/re-protect"
    },
    "print (WorksheetPrint)": {
      "getSettings": "Get the current print settings for the sheet",
      "setSettings": "Update print settings",
      "getArea": "Get the current print area as an A1-notation range string",
      "setArea": "Set the print area to the specified A1-notation range",
      "clearArea": "Clear the print area so the entire sheet prints.",
      "addPageBreak": "Add a manual page break at the specified position",
      "removePageBreak": "Remove a manual page break at the specified position",
      "getPageBreaks": "Get all manual page breaks in the sheet",
      "clearPageBreaks": "Remove all manual page breaks from the sheet.",
      "setPrintTitleRows": "Set the rows to repeat at the top of each printed page (print titles)",
      "setPrintTitleColumns": "Set the columns to repeat at the left of each printed page (print titles)",
      "getPrintTitleRows": "Get the rows configured to repeat at the top of each printed page",
      "getPrintTitleColumns": "Get the columns configured to repeat at the left of each printed page",
      "clearPrintTitles": "Clear all print titles (both repeat rows and repeat columns)",
      "setPrintMargins": "Set page margins with unit conversion",
      "getCellAfterBreak": "Get the cell position immediately after a page break",
      "getHeaderFooterImages": "Get all header/footer images for this sheet",
      "setHeaderFooterImage": "Set or replace a header/footer image at the specified position",
      "removeHeaderFooterImage": "Remove the header/footer image at the specified position"
    },
    "settings (WorksheetSettings)": {
      "get": "Get all sheet settings",
      "set": "Set an individual sheet setting by key",
      "getStandardHeight": "Get the standard (default) row height in pixels",
      "getStandardWidth": "Get the standard (default) column width in pixels",
      "setStandardWidth": "Set the standard (default) column width in pixels"
    },
    "bindings (WorksheetBindings)": {
      "list": "List all data bindings on the sheet",
      "get": "Get a data binding by ID",
      "getCount": "Get the total number of data bindings on this sheet",
      "clear": "Remove all data bindings from the sheet.",
      "add": "Add a new data binding on the sheet",
      "remove": "Remove a data binding by ID",
      "getProjectionRange": "Get the spill range for a projected (dynamic array) cell",
      "getProjectionSource": "Get the source cell of a projected value",
      "isProjectedPosition": "Check whether a cell position is a projected (spilled) value",
      "getViewportProjectionData": "Get all projection data overlapping a viewport range (batch query)"
    },
    "names (WorksheetNames)": {
      "add": "Add a named range scoped to this sheet",
      "has": "Check if a named range exists in this sheet's scope",
      "getCount": "Get the total number of named ranges scoped to this sheet",
      "get": "Get a named range by name, scoped to this sheet",
      "getRange": "Get the range reference for a named range scoped to this sheet",
      "remove": "Remove a named range scoped to this sheet",
      "update": "Update a named range scoped to this sheet",
      "clear": "Remove all named ranges scoped to this sheet.",
      "list": "List all named ranges scoped to this sheet"
    },
    "styles (WorksheetStyles)": {
      "applyStyle": "Apply a named style to a cell",
      "applyStyleToRange": "Apply a named style to a range",
      "getStyle": "Get the name of the named style that matches a cell's format (best-effort)"
    }
  }
}