{
  "schemaVersion": "1.0.0",
  "readme": "",
  "modules": [
    {
      "kind": "javascript-module",
      "path": "src/define.ts",
      "declarations": [],
      "exports": [
        {
          "kind": "js",
          "name": "ApexGrid",
          "declaration": {
            "name": "ApexGrid",
            "module": "src/define.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/index.ts",
      "declarations": [],
      "exports": [
        {
          "kind": "js",
          "name": "ApexCellValueChangedEvent",
          "declaration": {
            "name": "ApexCellValueChangedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexCellValueChangingEvent",
          "declaration": {
            "name": "ApexCellValueChangingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexColumnMovedEvent",
          "declaration": {
            "name": "ApexColumnMovedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexColumnMovingEvent",
          "declaration": {
            "name": "ApexColumnMovingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexColumnPinnedEvent",
          "declaration": {
            "name": "ApexColumnPinnedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexColumnPinningEvent",
          "declaration": {
            "name": "ApexColumnPinningEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexFilteredEvent",
          "declaration": {
            "name": "ApexFilteredEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexFilteringEvent",
          "declaration": {
            "name": "ApexFilteringEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexGridEventMap",
          "declaration": {
            "name": "ApexGridEventMap",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexPageChangedEvent",
          "declaration": {
            "name": "ApexPageChangedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexPageChangingEvent",
          "declaration": {
            "name": "ApexPageChangingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexQuickFilterChangedEvent",
          "declaration": {
            "name": "ApexQuickFilterChangedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexQuickFilterChangingEvent",
          "declaration": {
            "name": "ApexQuickFilterChangingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexRowEditEndedEvent",
          "declaration": {
            "name": "ApexRowEditEndedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexRowEditStartedEvent",
          "declaration": {
            "name": "ApexRowEditStartedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexRowExpandedEvent",
          "declaration": {
            "name": "ApexRowExpandedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexRowExpandingEvent",
          "declaration": {
            "name": "ApexRowExpandingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexRowSelectedEvent",
          "declaration": {
            "name": "ApexRowSelectedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexRowSelectingEvent",
          "declaration": {
            "name": "ApexRowSelectingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexTreeRowExpandedEvent",
          "declaration": {
            "name": "ApexTreeRowExpandedEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexTreeRowExpandingEvent",
          "declaration": {
            "name": "ApexTreeRowExpandingEvent",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ColumnDropPosition",
          "declaration": {
            "name": "ColumnDropPosition",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexGrid",
          "declaration": {
            "name": "ApexGrid",
            "module": "./components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "CSVExportOptions",
          "declaration": {
            "name": "CSVExportOptions",
            "module": "./internal/export.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportCellValue",
          "declaration": {
            "name": "ExportCellValue",
            "module": "./internal/export.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportFormat",
          "declaration": {
            "name": "ExportFormat",
            "module": "./internal/export.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportOptions",
          "declaration": {
            "name": "ExportOptions",
            "module": "./internal/export.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportSource",
          "declaration": {
            "name": "ExportSource",
            "module": "./internal/export.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexCellContext",
          "declaration": {
            "name": "ApexCellContext",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexDetailContext",
          "declaration": {
            "name": "ApexDetailContext",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexEditorContext",
          "declaration": {
            "name": "ApexEditorContext",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexHeaderContext",
          "declaration": {
            "name": "ApexHeaderContext",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseApexCellContext",
          "declaration": {
            "name": "BaseApexCellContext",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseApexEditorContext",
          "declaration": {
            "name": "BaseApexEditorContext",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseColumnConfiguration",
          "declaration": {
            "name": "BaseColumnConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseColumnSortConfiguration",
          "declaration": {
            "name": "BaseColumnSortConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BasePropertyType",
          "declaration": {
            "name": "BasePropertyType",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ColumnConfiguration",
          "declaration": {
            "name": "ColumnConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ColumnFilterConfiguration",
          "declaration": {
            "name": "ColumnFilterConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ColumnSortConfiguration",
          "declaration": {
            "name": "ColumnSortConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "DataPipelineConfiguration",
          "declaration": {
            "name": "DataPipelineConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "DataPipelineHook",
          "declaration": {
            "name": "DataPipelineHook",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "DataPipelineParams",
          "declaration": {
            "name": "DataPipelineParams",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "DataType",
          "declaration": {
            "name": "DataType",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "EditMode",
          "declaration": {
            "name": "EditMode",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "EditTrigger",
          "declaration": {
            "name": "EditTrigger",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "GridEditingConfiguration",
          "declaration": {
            "name": "GridEditingConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "GridExpansionConfiguration",
          "declaration": {
            "name": "GridExpansionConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "GridSelectionConfiguration",
          "declaration": {
            "name": "GridSelectionConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "GridSortConfiguration",
          "declaration": {
            "name": "GridSortConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "GridTreeConfiguration",
          "declaration": {
            "name": "GridTreeConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "Keys",
          "declaration": {
            "name": "Keys",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "PaginationConfiguration",
          "declaration": {
            "name": "PaginationConfiguration",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "PaginationMode",
          "declaration": {
            "name": "PaginationMode",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "PaginationState",
          "declaration": {
            "name": "PaginationState",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "PinPosition",
          "declaration": {
            "name": "PinPosition",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "PropertyType",
          "declaration": {
            "name": "PropertyType",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "SelectionMode",
          "declaration": {
            "name": "SelectionMode",
            "module": "./internal/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BooleanOperands",
          "declaration": {
            "name": "BooleanOperands",
            "module": "./operations/filter/operands/boolean.js"
          }
        },
        {
          "kind": "js",
          "name": "NumberOperands",
          "declaration": {
            "name": "NumberOperands",
            "module": "./operations/filter/operands/number.js"
          }
        },
        {
          "kind": "js",
          "name": "StringOperands",
          "declaration": {
            "name": "StringOperands",
            "module": "./operations/filter/operands/string.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseFilterExpression",
          "declaration": {
            "name": "BaseFilterExpression",
            "module": "./operations/filter/types.js"
          }
        },
        {
          "kind": "js",
          "name": "FilterCriteria",
          "declaration": {
            "name": "FilterCriteria",
            "module": "./operations/filter/types.js"
          }
        },
        {
          "kind": "js",
          "name": "FilterExpression",
          "declaration": {
            "name": "FilterExpression",
            "module": "./operations/filter/types.js"
          }
        },
        {
          "kind": "js",
          "name": "FilterOperation",
          "declaration": {
            "name": "FilterOperation",
            "module": "./operations/filter/types.js"
          }
        },
        {
          "kind": "js",
          "name": "FilterOperationLogic",
          "declaration": {
            "name": "FilterOperationLogic",
            "module": "./operations/filter/types.js"
          }
        },
        {
          "kind": "js",
          "name": "OperandKeys",
          "declaration": {
            "name": "OperandKeys",
            "module": "./operations/filter/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseSortComparer",
          "declaration": {
            "name": "BaseSortComparer",
            "module": "./operations/sort/types.js"
          }
        },
        {
          "kind": "js",
          "name": "BaseSortExpression",
          "declaration": {
            "name": "BaseSortExpression",
            "module": "./operations/sort/types.js"
          }
        },
        {
          "kind": "js",
          "name": "SortComparer",
          "declaration": {
            "name": "SortComparer",
            "module": "./operations/sort/types.js"
          }
        },
        {
          "kind": "js",
          "name": "SortExpression",
          "declaration": {
            "name": "SortExpression",
            "module": "./operations/sort/types.js"
          }
        },
        {
          "kind": "js",
          "name": "SortingDirection",
          "declaration": {
            "name": "SortingDirection",
            "module": "./operations/sort/types.js"
          }
        },
        {
          "kind": "js",
          "name": "SortState",
          "declaration": {
            "name": "SortState",
            "module": "./operations/sort/types.js"
          }
        },
        {
          "kind": "js",
          "name": "ApexGridSetupOptions",
          "declaration": {
            "name": "ApexGridSetupOptions",
            "module": "./setup.js"
          }
        },
        {
          "kind": "js",
          "name": "setup",
          "declaration": {
            "name": "setup",
            "module": "./setup.js"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/setup.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "setup",
          "return": {
            "type": {
              "text": "void"
            }
          },
          "parameters": [
            {
              "name": "options",
              "default": "{}",
              "type": {
                "text": "ApexGridSetupOptions"
              }
            }
          ],
          "description": "One-call convenience: registers `<apex-grid>` and adopts a default host\nstylesheet so the virtualizer has a bounded height. The grid is styled\nout-of-the-box via `--ag-*` CSS custom properties — no theme import needed."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "setup",
          "declaration": {
            "name": "setup",
            "module": "src/setup.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/cell.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Component representing a DOM cell of the Apex grid.",
          "name": "ApexGridCell",
          "cssParts": [
            {
              "description": "The cell host element.",
              "name": "cell"
            },
            {
              "description": "The editor wrapper rendered while the cell is in edit mode.",
              "name": "editor"
            }
          ],
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "field",
              "name": "value",
              "type": {
                "text": "PropertyType<T>"
              },
              "privacy": "public",
              "description": "The value which will be rendered by the component."
            },
            {
              "kind": "field",
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              },
              "privacy": "public",
              "description": "A reference to the column configuration object."
            },
            {
              "kind": "field",
              "name": "active",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Indicates whether this is the active cell in the grid.",
              "attribute": "active",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "editing",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Whether the cell is currently in edit mode. Set by the parent row from the\nediting controller's state so cells re-render on edit state changes.",
              "attribute": "editing",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "row",
              "type": {
                "text": "ApexGridRow<T>"
              },
              "privacy": "public",
              "description": "The parent row component holding this cell."
            },
            {
              "kind": "field",
              "name": "editorElement",
              "type": {
                "text": "HTMLElement | null"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "context",
              "type": {
                "text": "ApexCellContext<T>"
              },
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "editingController",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "isEditing",
              "type": {
                "text": "boolean"
              },
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "isEditable",
              "type": {
                "text": "boolean"
              },
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "colindex",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "0",
              "description": "1-based column index used to populate `aria-colindex`. Accounts for the\nauto-rendered selection + expansion columns ahead of the data columns."
            },
            {
              "kind": "field",
              "name": "decorationVersion",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "0",
              "description": "Reactive token forwarded from StateController.decorationVersion.\nChanging it re-runs willUpdate so module-driven cell decoration is\nre-evaluated when it changes (e.g. while dragging a selection range). Stays\n`0` for the community grid, so cells are never re-decorated there."
            },
            {
              "kind": "field",
              "name": "#decoratedKeys",
              "privacy": "private",
              "type": {
                "text": "string[]"
              },
              "default": "[]",
              "description": "Decoration attribute keys applied on the previous update, for cleanup."
            },
            {
              "kind": "method",
              "name": "#applyDecoration",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Reflects module-contributed decoration attributes (see CellDecorator)\nonto the cell host, reconciling against the previous update so attributes\nthat are no longer present are removed. Inert for the community grid:\n`state.decorateCell` returns `null` with no modules, so nothing is set."
            },
            {
              "kind": "field",
              "name": "#handleClick",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleDoubleClick",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#startEdit",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#pendingValue",
              "privacy": "private",
              "type": {
                "text": "unknown"
              }
            },
            {
              "kind": "field",
              "name": "#commitWith",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#cancel",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleKeydown",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleBlur",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleCellKeydown",
              "privacy": "private",
              "description": "Cell-level keydown that catches keys bubbling out of registry-built\neditors (the default editor stops propagation on its own input).\n\n- Escape always cancels the edit.\n- Tab commits (or closes when there's no draft — `commitCell()` with\n  `undefined` value is treated as \"no change\" by the controller).\n\nPer-editor `keydown` handlers that need to consume Enter (e.g. the\nbuilt-in `<select>` editor) still get the first crack — they call\n`event.stopPropagation()` and we never see those keys here."
            },
            {
              "kind": "field",
              "name": "#handleCellFocusOut",
              "privacy": "private",
              "description": "Cell-level focus-out: commits the active edit when focus truly leaves\nthe cell (clicking another cell, tabbing past the editor, blurring to\nthe document body). The default editor's input also has `@blur` which\ncommits first; by that time `isEditing` is false and this is a no-op.\n\nFor built-in registry editors `commitCell()` with no explicit value\nresolves to the current data value — same shape as \"no change\", so\nlosing focus without picking discards the open editor without writing\nspurious data."
            },
            {
              "kind": "field",
              "name": "#handleTextInput",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleCheckboxChange",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "renderDefaultEditor",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderEditor",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderTreeAffordance",
              "privacy": "protected",
              "description": "Renders the tree affordance — depth-based indent + a chevron toggle (or\nleaf spacer) — that prefixes the group cell when ApexGrid.tree\nis enabled. Returns `nothing` for every other cell."
            },
            {
              "kind": "method",
              "name": "resolveDisplayValue",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "unknown"
                }
              },
              "description": "Resolves the value to display for the cell. Synthesized tree parents\n(those that appear only as a path segment with no backing data) render\ntheir last path segment in the group column and nothing elsewhere."
            },
            {
              "kind": "method",
              "name": "renderCellBody",
              "privacy": "protected"
            }
          ],
          "attributes": [
            {
              "name": "active",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Indicates whether this is the active cell in the grid.",
              "fieldName": "active"
            },
            {
              "name": "editing",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Whether the cell is currently in edit mode. Set by the parent row from the\nediting controller's state so cells re-render on edit state changes.",
              "fieldName": "editing"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexGridCell",
            "module": "src/components/cell.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/filter-row.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "ApexFilterRow",
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "isNumeric",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "filterController",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "condition",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "active",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false"
            },
            {
              "kind": "field",
              "name": "input",
              "type": {
                "text": "HTMLInputElement"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "conditionElement",
              "type": {
                "text": "HTMLElement"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "dropdown",
              "type": {
                "text": "HTMLElement"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "dropdownOpen",
              "type": {
                "text": "boolean"
              },
              "privacy": "protected",
              "default": "false"
            },
            {
              "kind": "field",
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              },
              "privacy": "public",
              "default": "DEFAULT_COLUMN_CONFIG"
            },
            {
              "kind": "field",
              "name": "expression",
              "type": {
                "text": "FilterExpression<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "#setDefaultExpression",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#removeExpression",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#show",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#applyCondition",
              "privacy": "private",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "OperandKeys<T[typeof this.column.key]>"
                  }
                }
              ]
            },
            {
              "kind": "field",
              "name": "#handleDropdownItemClick",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleOutsidePointer",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleDocumentKey",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#handleInput",
              "privacy": "private",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "Event"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#handleKeydown",
              "privacy": "private",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "KeyboardEvent"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#handleResetClick",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#openDropdownList",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "activeChanged",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "#chipCriteriaFor",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#chipSelectFor",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#chipRemoveFor",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderCriteriaButton",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "expr",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                },
                {
                  "name": "index",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderExpressionChip",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "props",
                  "type": {
                    "text": "ExpressionChipProps<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderActiveChips",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderFilterActions",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderDropdown",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderDropdownTarget",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderInputArea",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderActiveState",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderInactiveChips",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                },
                {
                  "name": "state",
                  "type": {
                    "text": "FilterExpressionTree<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderFilterState",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderInactiveState",
              "privacy": "protected"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexFilterRow",
            "module": "src/components/filter-row.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/grid.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Apex grid is a web component for displaying data in a tabular format quick and easy.\n\nOut of the box it provides row virtualization, sort and filter operations (client and server side),\nthe ability to template cells and headers and column hiding.",
          "name": "ApexGrid",
          "cssProperties": [
            {
              "description": "Brand color for selection, focus rings, and accents. Auto-tints from `--ig-primary-500` when igniteui is present.",
              "name": "--ag-brand"
            },
            {
              "description": "Brand color for hover / pressed states.",
              "name": "--ag-brand-strong"
            },
            {
              "description": "Grid edge/shadow override. Default is a flat 1px hairline edge; set to `var(--ag-shadow-card)` for the elevated card look, or `none` to remove it.",
              "name": "--ag-grid-shadow"
            },
            {
              "description": "Host card background. Defaults to a subtle light gradient; override with a flat color (or use `theme=\"dark\"`) for dark themes.",
              "name": "--ag-grid-bg"
            },
            {
              "description": "Grid card background (must be opaque).",
              "name": "--ag-surface"
            },
            {
              "description": "Alternating row tint.",
              "name": "--ag-surface-alt"
            },
            {
              "description": "Header background.",
              "name": "--ag-surface-elevated"
            },
            {
              "description": "Header / structural gridline color.",
              "name": "--ag-hairline"
            },
            {
              "description": "Row separator color.",
              "name": "--ag-border"
            },
            {
              "description": "Primary text color.",
              "name": "--ag-text"
            },
            {
              "description": "Row text color.",
              "name": "--ag-text-body"
            },
            {
              "description": "Muted text (roles, labels).",
              "name": "--ag-text-muted"
            },
            {
              "description": "Row hover wash.",
              "name": "--ag-row-hover"
            },
            {
              "description": "Row height.",
              "name": "--ag-row-h"
            },
            {
              "description": "Header height.",
              "name": "--ag-header-h"
            },
            {
              "description": "Outer card corner radius.",
              "name": "--ag-radius"
            },
            {
              "description": "Grid font family.",
              "name": "--ag-font"
            },
            {
              "description": "Cell font size.",
              "name": "--ag-fs-cell"
            }
          ],
          "cssParts": [
            {
              "description": "Visually-hidden ARIA live region used for screen-reader announcements.",
              "name": "live-region"
            }
          ],
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "description": "Registers `<apex-grid>` and its internal dependencies with the custom-element\nregistry. Idempotent — safe to call more than once."
            },
            {
              "kind": "field",
              "name": "stateController",
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "DOM",
              "privacy": "protected",
              "default": "new GridDOMController<T>(this, this.stateController)"
            },
            {
              "kind": "field",
              "name": "dataController",
              "privacy": "protected",
              "default": "new DataOperationsController<T>(this)"
            },
            {
              "kind": "method",
              "name": "createStateController",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "StateController<T>"
                }
              },
              "description": "Builds the grid's StateController. This is the single construction\nsite for `stateController` — overriding it (rather than re-declaring the\nfield) is the supported seam for derived grids to inject optional\nGridFeatureModules while preserving field-initializer ordering.\nThe community grid registers no extra modules."
            },
            {
              "kind": "field",
              "name": "stateProvider",
              "privacy": "protected",
              "default": "new ContextProvider(this, { context: gridStateContext, initialValue: this.stateController, })"
            },
            {
              "kind": "field",
              "name": "scrollContainer",
              "type": {
                "text": "ApexVirtualizer"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "headerRow",
              "type": {
                "text": "ApexGridHeaderRow<T>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "filterRow",
              "type": {
                "text": "ApexFilterRow<T>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "paginator",
              "type": {
                "text": "ApexGridPaginator<T>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "toolbar",
              "type": {
                "text": "ApexGridToolbar<T>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "dataState",
              "type": {
                "text": "Array<T>"
              },
              "privacy": "protected",
              "default": "[]"
            },
            {
              "kind": "field",
              "name": "_rows",
              "type": {
                "text": "NodeListOf<ApexGridRow<T>>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "columns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              },
              "privacy": "public",
              "default": "[]",
              "description": "Column configuration for the grid."
            },
            {
              "kind": "field",
              "name": "data",
              "type": {
                "text": "Array<T>"
              },
              "privacy": "public",
              "default": "[]",
              "description": "The data source for the grid."
            },
            {
              "kind": "field",
              "name": "autoGenerate",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Whether the grid will try to \"resolve\" its column configuration based on the passed\ndata source.",
              "attribute": "auto-generate"
            },
            {
              "kind": "field",
              "name": "sortConfiguration",
              "type": {
                "text": "GridSortConfiguration"
              },
              "privacy": "public",
              "default": "{ multiple: true, triState: true, }",
              "description": "Sort configuration property for the grid."
            },
            {
              "kind": "field",
              "name": "dataPipelineConfiguration",
              "type": {
                "text": "DataPipelineConfiguration<T>"
              },
              "privacy": "public",
              "description": "Configuration object which controls remote data operations for the grid."
            },
            {
              "kind": "field",
              "name": "pagination",
              "type": {
                "text": "PaginationConfiguration | undefined"
              },
              "privacy": "public",
              "description": "Pagination configuration for the grid."
            },
            {
              "kind": "field",
              "name": "quickFilter",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "default": "''",
              "description": "The quick-filter (global search) value applied to the dataView.",
              "attribute": "quick-filter"
            },
            {
              "kind": "field",
              "name": "showQuickFilter",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Whether the built-in quick-filter input is rendered in the toolbar.",
              "attribute": "show-quick-filter"
            },
            {
              "kind": "field",
              "name": "showExport",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Whether the built-in export menu is rendered in the toolbar.",
              "attribute": "show-export"
            },
            {
              "kind": "field",
              "name": "columnReordering",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Enables drag-and-drop column reordering on the column headers.",
              "attribute": "column-reordering"
            },
            {
              "kind": "field",
              "name": "editing",
              "type": {
                "text": "GridEditingConfiguration | undefined"
              },
              "privacy": "public",
              "description": "Inline editing configuration for the grid."
            },
            {
              "kind": "field",
              "name": "selection",
              "type": {
                "text": "GridSelectionConfiguration | undefined"
              },
              "privacy": "public",
              "description": "Row selection configuration for the grid."
            },
            {
              "kind": "field",
              "name": "selectedRows",
              "type": {
                "text": "T[]"
              },
              "privacy": "public",
              "description": "The currently selected rows, in insertion order."
            },
            {
              "kind": "method",
              "name": "selectRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Selects `row`, replacing the existing selection in `'single'` mode or\nadding to it in `'multiple'` mode."
            },
            {
              "kind": "method",
              "name": "deselectRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Deselects `row`. No-op if `row` is not currently selected."
            },
            {
              "kind": "method",
              "name": "toggleRowSelection",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Toggles selection of `row`."
            },
            {
              "kind": "method",
              "name": "selectAllRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Selects every row in the current view (dataView). No-op in\n`'single'` selection mode."
            },
            {
              "kind": "method",
              "name": "clearSelection",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Clears the row selection."
            },
            {
              "kind": "method",
              "name": "isRowSelected",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Whether `row` is currently selected."
            },
            {
              "kind": "field",
              "name": "expansion",
              "type": {
                "text": "GridExpansionConfiguration<T> | undefined"
              },
              "privacy": "public",
              "description": "Row-expansion (master-detail) configuration for the grid."
            },
            {
              "kind": "field",
              "name": "expandedRows",
              "type": {
                "text": "T[]"
              },
              "privacy": "public",
              "description": "The currently expanded rows, in insertion order."
            },
            {
              "kind": "method",
              "name": "expandRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Expands `row`. No-op when the row is already expanded, expansion is\ndisabled, or the optional `isExpandable` predicate rejects it."
            },
            {
              "kind": "method",
              "name": "collapseRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Collapses `row`. No-op when the row is not currently expanded."
            },
            {
              "kind": "method",
              "name": "toggleRowExpansion",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Toggles expansion of `row`."
            },
            {
              "kind": "method",
              "name": "expandAllRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Expands every row in ApexGrid.dataView that passes the optional\n`isExpandable` predicate."
            },
            {
              "kind": "method",
              "name": "collapseAllRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Collapses every currently expanded row."
            },
            {
              "kind": "method",
              "name": "isRowExpanded",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Whether `row` is currently expanded."
            },
            {
              "kind": "field",
              "name": "tree",
              "type": {
                "text": "GridTreeConfiguration<T> | undefined"
              },
              "privacy": "public",
              "description": "Tree-data (nested rows) configuration for the grid."
            },
            {
              "kind": "method",
              "name": "toggleTreeRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Toggles tree-expansion of `row`. No-op when tree mode is disabled or\nthe row has no children."
            },
            {
              "kind": "method",
              "name": "expandTreeRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Expands a tree row. No-op when the row is already expanded, has no\nchildren, or tree mode is disabled."
            },
            {
              "kind": "method",
              "name": "collapseTreeRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Collapses a tree row. No-op when the row is not currently expanded."
            },
            {
              "kind": "method",
              "name": "expandAllTreeRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Expands every parent row in the current tree."
            },
            {
              "kind": "method",
              "name": "collapseAllTreeRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Collapses every currently-expanded tree row."
            },
            {
              "kind": "method",
              "name": "isTreeRowExpanded",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Whether `row` is currently expanded in the tree."
            },
            {
              "kind": "field",
              "name": "sortExpressions",
              "privacy": "public",
              "description": "Get the sort state for the grid.",
              "type": {
                "text": "SortExpression<T>[]"
              }
            },
            {
              "kind": "field",
              "name": "filterExpressions",
              "privacy": "public",
              "description": "Get the filter state for the grid.",
              "type": {
                "text": "FilterExpression<T>[]"
              }
            },
            {
              "kind": "field",
              "name": "rows",
              "privacy": "public",
              "description": "Returns the collection of rendered row elements in the grid.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "dataView",
              "type": {
                "text": "ReadonlyArray<T>"
              },
              "privacy": "public",
              "description": "Returns the state of the data source after sort/filter operations\nhave been applied.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "displayColumns",
              "type": {
                "text": "ReadonlyArray<ColumnConfiguration<T>>"
              },
              "privacy": "public",
              "description": "The columns in visual render order: `'start'`-pinned columns first, then\nunpinned columns, then `'end'`-pinned columns.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "totalItems",
              "privacy": "public",
              "description": "The total number of items in the ApexGrid.dataView collection.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "pageItems",
              "type": {
                "text": "ReadonlyArray<T>"
              },
              "privacy": "public",
              "description": "The records currently rendered into the virtualized body.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "page",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The current zero-based page index."
            },
            {
              "kind": "field",
              "name": "pageSize",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The current page size."
            },
            {
              "kind": "field",
              "name": "pageCount",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The total number of pages computed from ApexGrid.totalItems and ApexGrid.pageSize.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "watchColumns",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "_",
                  "type": {
                    "text": "ColumnConfiguration<T>[]"
                  }
                },
                {
                  "name": "newConfig",
                  "default": "[]",
                  "type": {
                    "text": "ColumnConfiguration<T>[]"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "dataChanged",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "pipeline",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "paginationChanged",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "quickFilterChanged",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "filter",
              "privacy": "public",
              "parameters": [
                {
                  "name": "config",
                  "type": {
                    "text": "FilterExpression<T> | FilterExpression<T>[]"
                  }
                }
              ],
              "description": "Performs a filter operation in the grid based on the passed expression(s)."
            },
            {
              "kind": "method",
              "name": "sort",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expressions",
                  "type": {
                    "text": "SortExpression<T> | SortExpression<T>[]"
                  }
                }
              ],
              "description": "Performs a sort operation in the grid based on the passed expression(s)."
            },
            {
              "kind": "method",
              "name": "clearSort",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "optional": true,
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ],
              "description": "Resets the current sort state of the control."
            },
            {
              "kind": "method",
              "name": "clearFilter",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "optional": true,
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ],
              "description": "Resets the current filter state of the control."
            },
            {
              "kind": "method",
              "name": "gotoPage",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "page",
                  "type": {
                    "text": "number"
                  },
                  "description": "The target zero-based page index."
                }
              ],
              "description": "Navigates the grid to the given zero-based `page` index."
            },
            {
              "kind": "method",
              "name": "setPageSize",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "size",
                  "type": {
                    "text": "number"
                  },
                  "description": "The new page size (must be a positive integer)."
                }
              ],
              "description": "Updates the grid's page size and returns to the first page."
            },
            {
              "kind": "method",
              "name": "nextPage",
              "privacy": "public",
              "description": "Navigates to the next page. No-op if already on the last page."
            },
            {
              "kind": "method",
              "name": "previousPage",
              "privacy": "public",
              "description": "Navigates to the previous page. No-op if already on the first page."
            },
            {
              "kind": "method",
              "name": "firstPage",
              "privacy": "public",
              "description": "Navigates to the first page."
            },
            {
              "kind": "method",
              "name": "lastPage",
              "privacy": "public",
              "description": "Navigates to the last page."
            },
            {
              "kind": "method",
              "name": "setQuickFilter",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "string"
                  },
                  "description": "The new quick-filter value. Pass `''` to clear."
                }
              ],
              "description": "Applies a new quick-filter (global search) value, emitting the cancellable\n`quickFilterChanging` event first and the `quickFilterChanged` event after the\npipeline has run."
            },
            {
              "kind": "method",
              "name": "getColumn",
              "privacy": "public",
              "parameters": [
                {
                  "name": "id",
                  "type": {
                    "text": "Keys<T> | number"
                  }
                }
              ],
              "description": "Returns a ColumnConfiguration for a given column."
            },
            {
              "kind": "method",
              "name": "updateColumns",
              "privacy": "public",
              "parameters": [
                {
                  "name": "columns",
                  "type": {
                    "text": "ColumnConfiguration<T> | ColumnConfiguration<T>[]"
                  }
                }
              ],
              "description": "Updates the column configuration of the grid."
            },
            {
              "kind": "method",
              "name": "pinColumn",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  },
                  "description": "The target column key."
                },
                {
                  "name": "position",
                  "type": {
                    "text": "PinPosition"
                  },
                  "description": "`'start'`, `'end'`, or `null` to unpin."
                }
              ],
              "description": "Pins a column to one of the grid's edges, or unpins it when `position` is `null`."
            },
            {
              "kind": "method",
              "name": "unpinColumn",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  },
                  "description": "The target column key."
                }
              ],
              "description": "Unpins a column. Equivalent to ApexGrid.pinColumn(`key`, `null`)."
            },
            {
              "kind": "field",
              "name": "editingCell",
              "type": {
                "text": "{ rowIndex: number; columnKey: Keys<T> } | null"
              },
              "privacy": "public",
              "description": "The cell currently in edit mode, or `null`.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "editingRow",
              "type": {
                "text": "number | null"
              },
              "privacy": "public",
              "description": "The view-relative index of the row currently in edit mode (row edit mode\nonly), or `null`.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "editCell",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "columnKey",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ],
              "description": "Begins editing the cell at `(rowIndex, columnKey)`."
            },
            {
              "kind": "method",
              "name": "editRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Begins editing the entire row at `rowIndex` (row edit mode only)."
            },
            {
              "kind": "method",
              "name": "commitEdit",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Commits the current edit."
            },
            {
              "kind": "method",
              "name": "cancelEdit",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Discards the current edit without writing back to ApexGrid.data."
            },
            {
              "kind": "method",
              "name": "exportToCSV",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "string"
                }
              },
              "parameters": [
                {
                  "name": "options",
                  "default": "{}",
                  "type": {
                    "text": "CSVExportOptions<T>"
                  }
                }
              ],
              "description": "Exports the current grid contents as a CSV string and (in a browser\ncontext) triggers a download."
            },
            {
              "kind": "field",
              "name": "exportFormats",
              "type": {
                "text": "ReadonlyArray<ExportFormat>"
              },
              "privacy": "public",
              "description": "The export formats offered in the toolbar's export menu, in order.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "exportAs",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "formatId",
                  "type": {
                    "text": "string"
                  }
                },
                {
                  "name": "options",
                  "default": "{}",
                  "type": {
                    "text": "ExportOptions<T>"
                  }
                }
              ],
              "description": "Exports the grid in the given format (one of ApexGrid.exportFormats).\nCalled by the toolbar's export menu. The community grid handles `'csv'`;\nderived grids override to handle additional formats, delegating to `super`\nfor the ones they don't add."
            },
            {
              "kind": "method",
              "name": "moveColumn",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "fromKey",
                  "type": {
                    "text": "Keys<T>"
                  },
                  "description": "The column to move."
                },
                {
                  "name": "toKey",
                  "type": {
                    "text": "Keys<T>"
                  },
                  "description": "The reference column."
                },
                {
                  "name": "position",
                  "default": "'before'",
                  "type": {
                    "text": "ColumnDropPosition"
                  },
                  "description": "Whether to place `fromKey` before or after `toKey`. Defaults to `'before'`."
                }
              ],
              "description": "Moves a column relative to another column."
            },
            {
              "kind": "method",
              "name": "bodyClickHandler",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "MouseEvent"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "bodyKeydownHandler",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "KeyboardEvent"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "bodyPointerHandler",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "PointerEvent"
                  }
                }
              ],
              "description": "Forwards body-cell pointer interactions (press / drag-over / release) to\nfeature modules via StateController.handleCellInteraction. Gated on\nthere being at least one registered module so the community grid does no\nper-event work (it registers none). The seam a range-selection feature\nbuilds on."
            },
            {
              "kind": "method",
              "name": "renderHeaderRow",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderBody",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderFilterRow",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderToolbar",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderPaginator",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderLiveRegion",
              "privacy": "protected",
              "description": "Renders a visually-hidden polite live region. Status messages set via\nannounce land here; screen readers will read them aloud without\nstealing focus. We intentionally keep this in the shadow root so we\ndon't have to coordinate consumer DOM placement."
            },
            {
              "kind": "method",
              "name": "announce",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "message",
                  "type": {
                    "text": "string"
                  }
                }
              ],
              "description": "Sets the live region's announcement text. Screen readers configured to\nread polite live updates will read the new value aloud."
            },
            {
              "kind": "method",
              "name": "addEventListener",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "K"
                  }
                },
                {
                  "name": "listener",
                  "type": {
                    "text": "(this: HTMLElement, ev: M[K]) => any"
                  }
                },
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | AddEventListenerOptions"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "EventEmitterBase",
                "module": "src/internal/mixins/event-emitter.ts"
              }
            },
            {
              "kind": "method",
              "name": "removeEventListener",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "K"
                  }
                },
                {
                  "name": "listener",
                  "type": {
                    "text": "(this: HTMLElement, ev: M[K]) => any"
                  }
                },
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | EventListenerOptions"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "EventEmitterBase",
                "module": "src/internal/mixins/event-emitter.ts"
              }
            },
            {
              "kind": "method",
              "name": "emitEvent",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "K"
                  }
                },
                {
                  "name": "eventInitDict",
                  "optional": true,
                  "type": {
                    "text": "CustomEventInit<D>"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "EventEmitterBase",
                "module": "src/internal/mixins/event-emitter.ts"
              }
            }
          ],
          "events": [
            {
              "description": "Emitted when sorting is initiated through the UI.",
              "name": "sorting"
            },
            {
              "description": "Emitted when a sort operation initiated through the UI has completed.",
              "name": "sorted"
            },
            {
              "description": "Emitted when filtering is initiated through the UI.",
              "name": "filtering"
            },
            {
              "description": "Emitted when a filter operation initiated through the UI has completed.",
              "name": "filtered"
            },
            {
              "description": "Cancellable. Emitted before page/page-size changes are applied.",
              "name": "pageChanging"
            },
            {
              "description": "Emitted after a page/page-size change has been applied.",
              "name": "pageChanged"
            },
            {
              "description": "Cancellable. Emitted before a quick-filter value is applied.",
              "name": "quickFilterChanging"
            },
            {
              "description": "Emitted after a quick-filter change has been applied.",
              "name": "quickFilterChanged"
            },
            {
              "description": "Cancellable. Emitted before a column's pin position changes.",
              "name": "columnPinning"
            },
            {
              "description": "Emitted after a column's pin position has changed.",
              "name": "columnPinned"
            },
            {
              "description": "Cancellable. Emitted before a column is moved.",
              "name": "columnMoving"
            },
            {
              "description": "Emitted after a column has been moved.",
              "name": "columnMoved"
            },
            {
              "description": "Cancellable. Emitted before a cell value is committed.",
              "name": "cellValueChanging"
            },
            {
              "description": "Emitted after a cell value has been committed.",
              "name": "cellValueChanged"
            },
            {
              "description": "Emitted when a row enters edit mode (row mode only).",
              "name": "rowEditStarted"
            },
            {
              "description": "Emitted when a row leaves edit mode (row mode only).",
              "name": "rowEditEnded"
            },
            {
              "description": "Cancellable. Emitted before a selection-set change is applied.",
              "name": "rowSelecting"
            },
            {
              "description": "Emitted after a selection-set change has been applied.",
              "name": "rowSelected"
            },
            {
              "description": "Cancellable. Emitted before the row-expansion set changes (master-detail).",
              "name": "rowExpanding"
            },
            {
              "description": "Emitted after a row-expansion change has been applied.",
              "name": "rowExpanded"
            },
            {
              "description": "Cancellable. Emitted before a tree-row expansion change (tree mode).",
              "name": "treeRowExpanding"
            },
            {
              "description": "Emitted after a tree-row expansion change has been applied.",
              "name": "treeRowExpanded"
            },
            {
              "type": {
                "text": "CustomEvent"
              },
              "inheritedFrom": {
                "name": "EventEmitterBase",
                "module": "src/internal/mixins/event-emitter.ts"
              }
            }
          ],
          "attributes": [
            {
              "name": "auto-generate",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Whether the grid will try to \"resolve\" its column configuration based on the passed\ndata source.",
              "fieldName": "autoGenerate",
              "attribute": "auto-generate"
            },
            {
              "name": "quick-filter",
              "type": {
                "text": "string"
              },
              "default": "''",
              "description": "The quick-filter (global search) value applied to the dataView.",
              "fieldName": "quickFilter",
              "attribute": "quick-filter"
            },
            {
              "name": "show-quick-filter",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Whether the built-in quick-filter input is rendered in the toolbar.",
              "fieldName": "showQuickFilter",
              "attribute": "show-quick-filter"
            },
            {
              "name": "show-export",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Whether the built-in export menu is rendered in the toolbar.",
              "fieldName": "showExport",
              "attribute": "show-export"
            },
            {
              "name": "column-reordering",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Enables drag-and-drop column reordering on the column headers.",
              "fieldName": "columnReordering",
              "attribute": "column-reordering"
            },
            {
              "type": {
                "text": "string"
              },
              "description": "Space-separated theme flags. `dark` opts into the built-in dark palette; `tinted` mixes `--ag-brand` into the chrome surfaces. Combine as `theme=\"dark tinted\"`.",
              "name": "theme"
            }
          ],
          "superclass": {
            "name": "EventEmitterBase",
            "module": "/src/internal/mixins/event-emitter.js"
          },
          "tagName": "apex-grid",
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "ApexGrid",
          "declaration": {
            "name": "ApexGrid",
            "module": "src/components/grid.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/header-row.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "ApexGridHeaderRow",
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "field",
              "name": "_headers",
              "type": {
                "text": "NodeListOf<ApexGridHeader<T>>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "columns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              },
              "privacy": "public",
              "default": "[]"
            },
            {
              "kind": "field",
              "name": "pinOffsets",
              "type": {
                "text": "Map<unknown, number>"
              },
              "privacy": "public",
              "default": "new Map()",
              "description": "Cumulative pin offsets (px) keyed by column key."
            },
            {
              "kind": "field",
              "name": "headers",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "#activeFilterColumn",
              "privacy": "private",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "MouseEvent"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderExpansionHeader",
              "privacy": "protected",
              "description": "Header cell for the built-in expansion (chevron) column. Renders an\n\"expand all\" toggle that expands every row in the current view, or\ncollapses every expanded row when at least one is open."
            },
            {
              "kind": "method",
              "name": "renderSelectionHeader",
              "privacy": "protected",
              "description": "Header cell for the built-in selection (checkbox) column. Renders a\n\"select all on this page\" checkbox in multi-select mode; nothing in\nsingle-select mode (selecting all rows isn't meaningful there)."
            },
            {
              "kind": "method",
              "name": "renderDragGhost",
              "privacy": "protected",
              "description": "Floating \"ghost\" element that follows the cursor while a header is\nbeing dragged. Positioned via `position: fixed` so it escapes the\nheader row's sticky containing block and follows the viewport."
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexGridHeaderRow",
            "module": "src/components/header-row.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/header.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "ApexGridHeader",
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "field",
              "name": "context",
              "type": {
                "text": "ApexHeaderContext<T>"
              },
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "isSortable",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "resizeController",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "reorderController",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "isDraggable",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "colindex",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "0",
              "description": "1-based column index passed in by the parent header row for `aria-colindex`."
            },
            {
              "kind": "method",
              "name": "#addResizeEventHandlers",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#handleClick",
              "privacy": "private",
              "parameters": [
                {
                  "name": "e",
                  "type": {
                    "text": "MouseEvent"
                  }
                }
              ]
            },
            {
              "kind": "field",
              "name": "#handleResize",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#handleResizeStart",
              "privacy": "private",
              "parameters": [
                {
                  "name": "ev",
                  "type": {
                    "text": "PointerEvent"
                  }
                }
              ]
            },
            {
              "kind": "field",
              "name": "#handlePointerLost",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleAutosize",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#dragStartX",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "0"
            },
            {
              "kind": "field",
              "name": "#dragStartY",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "0"
            },
            {
              "kind": "field",
              "name": "#dragPointerId",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "-1"
            },
            {
              "kind": "field",
              "name": "#isDragging",
              "privacy": "private",
              "type": {
                "text": "boolean"
              },
              "default": "false"
            },
            {
              "kind": "field",
              "name": "#handleReorderPointerDown",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleReorderPointerMove",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleReorderPointerUp",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "renderSortPart",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderContentPart",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderResizePart",
              "privacy": "protected"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexGridHeader",
            "module": "src/components/header.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/paginator.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Pagination toolbar rendered beneath the grid body.",
          "name": "ApexGridPaginator",
          "cssParts": [
            {
              "description": "The root container.",
              "name": "paginator"
            },
            {
              "description": "The page-size selector wrapper.",
              "name": "paginator-size"
            },
            {
              "description": "The \"1–25 of 100\" status label.",
              "name": "paginator-info"
            },
            {
              "description": "The first/prev/next/last button cluster.",
              "name": "paginator-controls"
            },
            {
              "description": "The \"Page X of N\" status label.",
              "name": "paginator-page"
            }
          ],
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "description": "Registers the `<apex-grid-paginator>` element and its dependencies. Idempotent."
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "pageSizeOptions",
              "type": {
                "text": "number[]"
              },
              "privacy": "public",
              "default": "[10, 25, 50, 100]",
              "description": "The page-size choices rendered in the rows-per-page selector."
            },
            {
              "kind": "field",
              "name": "pageSizeLabel",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "default": "'Rows per page'",
              "description": "Accessible label for the rows-per-page selector.",
              "attribute": "page-size-label"
            },
            {
              "kind": "field",
              "name": "controller",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "#handleSizeChange",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "renderSizeSelect",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderInfo",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderButton",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "opts",
                  "type": {
                    "text": "{\n    id: string;\n    icon: string;\n    label: string;\n    disabled: boolean;\n    onClick: () => void;\n  }"
                  }
                }
              ]
            },
            {
              "kind": "field",
              "name": "#handleControlsKeydown",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "renderControls",
              "privacy": "protected"
            }
          ],
          "attributes": [
            {
              "name": "page-size-label",
              "type": {
                "text": "string"
              },
              "default": "'Rows per page'",
              "description": "Accessible label for the rows-per-page selector.",
              "fieldName": "pageSizeLabel"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "tagName": "apex-grid-paginator",
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexGridPaginator",
            "module": "src/components/paginator.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/row.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Component representing the DOM row in the Apex grid.",
          "name": "ApexGridRow",
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "field",
              "name": "_cells",
              "type": {
                "text": "NodeListOf<ApexGridCell<T>>"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "data",
              "type": {
                "text": "T"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "columns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              },
              "privacy": "public",
              "default": "[]"
            },
            {
              "kind": "field",
              "name": "pinOffsets",
              "type": {
                "text": "Map<unknown, number>"
              },
              "privacy": "public",
              "default": "new Map()",
              "description": "Cumulative pin offsets (px) keyed by column key."
            },
            {
              "kind": "field",
              "name": "cells",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "activeNode",
              "type": {
                "text": "ActiveNode<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "index",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "-1"
            },
            {
              "kind": "field",
              "name": "selected",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Reflects current selection state so SCSS can highlight the row.",
              "attribute": "selected",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "expanded",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Reflects current expansion state so SCSS can rotate the chevron.",
              "attribute": "expanded",
              "reflects": true
            },
            {
              "kind": "field",
              "name": "editingKey",
              "type": {
                "text": "Keys<T> | null"
              },
              "privacy": "public",
              "default": "null",
              "description": "The column key currently being edited in this row, or `null`."
            },
            {
              "kind": "field",
              "name": "decorationVersion",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "0",
              "description": "Reactive token from StateController.decorationVersion, forwarded to\neach cell so a decoration-only change re-renders the row's cells. Stays `0`\nfor the community grid."
            },
            {
              "kind": "field",
              "name": "#presented",
              "privacy": "private",
              "type": {
                "text": "PresentedRow | null"
              },
              "default": "null",
              "description": "Result of the feature-module row presenter for the current update, or\n`null` when no module renders this row full-width (the normal case).\nComputed in willUpdate and consumed in render."
            },
            {
              "kind": "field",
              "name": "ariaRowOffset",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "1",
              "description": "The number of \"chrome\" rows (header + filter) above the body. Used to\nderive `aria-rowindex` from index. Set by the parent grid."
            },
            {
              "kind": "method",
              "name": "renderExpansionToggle",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "colindex",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "renderDetailPanel",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderSelectionCell",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "colindex",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            }
          ],
          "attributes": [
            {
              "name": "selected",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Reflects current selection state so SCSS can highlight the row.",
              "fieldName": "selected"
            },
            {
              "name": "expanded",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Reflects current expansion state so SCSS can rotate the chevron.",
              "fieldName": "expanded"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexGridRow",
            "module": "src/components/row.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/toolbar.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Toolbar shown above the grid's header row. Hosts opt-in toolbar features\nsuch as the quick-filter (global search) input and the export menu.",
          "name": "ApexGridToolbar",
          "cssParts": [
            {
              "description": "The toolbar's container element.",
              "name": "toolbar"
            },
            {
              "description": "The quick-filter input wrapper.",
              "name": "toolbar-search"
            },
            {
              "description": "The bordered field containing the icon + input.",
              "name": "search-field"
            },
            {
              "description": "The leading search icon.",
              "name": "search-icon"
            },
            {
              "description": "The text input itself.",
              "name": "search-input"
            },
            {
              "description": "The trailing actions area (right side).",
              "name": "toolbar-actions"
            },
            {
              "description": "The export menu trigger button.",
              "name": "export-trigger"
            },
            {
              "description": "The dropdown menu containing export options.",
              "name": "export-menu"
            },
            {
              "description": "A single menu item inside the export dropdown.",
              "name": "export-menu-item"
            }
          ],
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "description": "Registers the `<apex-grid-toolbar>` element. Idempotent."
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "StateController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "value",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "default": "''",
              "description": "The current quick-filter value, mirrored from ApexGrid.quickFilter.",
              "attribute": "value"
            },
            {
              "kind": "field",
              "name": "placeholder",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "default": "'Search…'",
              "description": "The placeholder rendered in the search input.",
              "attribute": "placeholder"
            },
            {
              "kind": "field",
              "name": "debounce",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "200",
              "description": "Debounce window (ms) before ApexGrid.quickFilter updates.",
              "attribute": "debounce"
            },
            {
              "kind": "field",
              "name": "showQuickFilter",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "true",
              "description": "Whether to render the quick-filter input. Driven by the parent grid."
            },
            {
              "kind": "field",
              "name": "showExport",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false",
              "description": "Whether to render the export menu trigger. Driven by the parent grid."
            },
            {
              "kind": "field",
              "name": "exportFilename",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "default": "'data'",
              "description": "Optional override filename (without extension) for exports."
            },
            {
              "kind": "field",
              "name": "input",
              "type": {
                "text": "HTMLInputElement"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "exportTrigger",
              "type": {
                "text": "HTMLButtonElement"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "exportMenuEl",
              "type": {
                "text": "HTMLElement"
              },
              "privacy": "protected"
            },
            {
              "kind": "field",
              "name": "exportMenuOpen",
              "type": {
                "text": "boolean"
              },
              "privacy": "protected",
              "default": "false"
            },
            {
              "kind": "field",
              "name": "#debounceHandle",
              "privacy": "private",
              "type": {
                "text": "ReturnType<typeof setTimeout> | null"
              },
              "default": "null"
            },
            {
              "kind": "method",
              "name": "#emit",
              "privacy": "private",
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "string"
                  }
                }
              ]
            },
            {
              "kind": "field",
              "name": "#handleInput",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleKeydown",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#toggleExportMenu",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "#closeExportMenu",
              "privacy": "private",
              "parameters": [
                {
                  "name": "returnFocus",
                  "default": "false"
                }
              ]
            },
            {
              "kind": "field",
              "name": "#handleOutsidePointer",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleDocumentKey",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleExport",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#handleTriggerKeydown",
              "privacy": "private",
              "description": "Lets keyboard users land in the menu when it opens via arrow-down."
            },
            {
              "kind": "field",
              "name": "#handleMenuKeydown",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "renderQuickFilter",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "renderExportMenu",
              "privacy": "protected"
            }
          ],
          "events": [
            {
              "name": "apex-quick-filter",
              "type": {
                "text": "CustomEvent"
              }
            }
          ],
          "attributes": [
            {
              "name": "value",
              "type": {
                "text": "string"
              },
              "default": "''",
              "description": "The current quick-filter value, mirrored from ApexGrid.quickFilter.",
              "fieldName": "value"
            },
            {
              "name": "placeholder",
              "type": {
                "text": "string"
              },
              "default": "'Search…'",
              "description": "The placeholder rendered in the search input.",
              "fieldName": "placeholder"
            },
            {
              "name": "debounce",
              "type": {
                "text": "number"
              },
              "default": "200",
              "description": "Debounce window (ms) before ApexGrid.quickFilter updates.",
              "fieldName": "debounce"
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "tagName": "apex-grid-toolbar",
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexGridToolbar",
            "module": "src/components/toolbar.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/components/virtualizer.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "ApexVirtualizer",
          "members": [
            {
              "kind": "field",
              "name": "tagName",
              "privacy": "public",
              "static": true,
              "readonly": true
            },
            {
              "kind": "method",
              "name": "register",
              "privacy": "public",
              "static": true,
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "field",
              "name": "scroller",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false"
            }
          ],
          "superclass": {
            "name": "LitVirtualizer",
            "package": "@lit-labs/virtualizer/LitVirtualizer.js"
          }
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "ApexVirtualizer",
            "module": "src/components/virtualizer.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/data-operation.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "DataOperationsController",
          "members": [
            {
              "kind": "field",
              "name": "sorting",
              "privacy": "protected",
              "default": "new SortDataOperation<T>()"
            },
            {
              "kind": "field",
              "name": "filtering",
              "privacy": "protected",
              "default": "new FilterDataOperation<T>()"
            },
            {
              "kind": "field",
              "name": "quickFiltering",
              "privacy": "protected",
              "default": "new QuickFilterDataOperation<T>()"
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "hasCustomSort",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "hasCustomFilter",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "hasCustomQuickFilter",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "customFilter",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "customSort",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "customQuickFilter",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "apply",
              "privacy": "public",
              "parameters": [
                {
                  "name": "data",
                  "type": {
                    "text": "T[]"
                  }
                },
                {
                  "name": "state",
                  "type": {
                    "text": "StateController<T>"
                  }
                }
              ],
              "description": "Applies the quick-filter (global search), column-filter, and sort steps of the\ndata pipeline."
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "DataOperationsController",
          "declaration": {
            "name": "DataOperationsController",
            "module": "src/controllers/data-operation.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/dom.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "GridDOMController",
          "members": [
            {
              "kind": "field",
              "name": "#initialSize",
              "privacy": "private"
            },
            {
              "kind": "field",
              "name": "#resizeObserver",
              "privacy": "private",
              "type": {
                "text": "ResizeObserver | null"
              },
              "default": "null"
            },
            {
              "kind": "field",
              "name": "#observedHeaders",
              "privacy": "private",
              "default": "new Set<Element>()"
            },
            {
              "kind": "field",
              "name": "#stickyRowObserver",
              "privacy": "private",
              "type": {
                "text": "ResizeObserver | null"
              },
              "default": "null"
            },
            {
              "kind": "field",
              "name": "#observedStickyRows",
              "privacy": "private",
              "default": "new Set<Element>()"
            },
            {
              "kind": "field",
              "name": "container",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "displayColumns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              },
              "privacy": "public",
              "description": "Visual render order: `'start'`-pinned columns first, then unpinned, then\n`'end'`-pinned. The user-supplied `columns` array is never mutated.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "columnSizes",
              "type": {
                "text": "StyleInfo"
              },
              "privacy": "public",
              "default": "{}"
            },
            {
              "kind": "field",
              "name": "pinOffsets",
              "privacy": "public",
              "default": "new Map<Keys<T>, number>()",
              "description": "The resolved inline-start (for `'start'` pin) or inline-end (for `'end'` pin)\npixel offset per pinned column key. Populated after layout by\nrecomputePinOffsets."
            },
            {
              "kind": "field",
              "name": "rowRenderer",
              "type": {
                "text": "RenderItemFunction<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "hostUpdate",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "method",
              "name": "hostUpdated",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "method",
              "name": "hostDisconnected",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "method",
              "name": "recomputeHostWidth",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Writes the grid host's `clientWidth` into `--apex-host-width`. Used by the\ntoolbar and paginator to clamp their width to the visible viewport so\nhorizontal scrolling doesn't drag them off-screen."
            },
            {
              "kind": "method",
              "name": "setScrollOffset",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "setGridColumnSizes",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "getActiveRowStyles",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "StyleInfo"
                }
              },
              "parameters": [
                {
                  "name": "index",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "recomputePinOffsets",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Measures the rendered widths of pinned header cells and writes cumulative\ninline-start / inline-end pixel offsets into pinOffsets. Called after\neach grid update and whenever a header cell is resized."
            },
            {
              "kind": "method",
              "name": "observeHeaderCells",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "field",
              "name": "#lastHeaderTop",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "-1"
            },
            {
              "kind": "field",
              "name": "#lastFilterTop",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "-1"
            },
            {
              "kind": "field",
              "name": "#lastHostWidth",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "-1"
            },
            {
              "kind": "field",
              "name": "#hostWidthObserver",
              "privacy": "private",
              "type": {
                "text": "ResizeObserver | null"
              },
              "default": "null"
            },
            {
              "kind": "method",
              "name": "recomputeStickyRowOffsets",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Writes the cumulative height of the sticky top rows into CSS custom\nproperties used by the header/filter rows for their `inset-block-start`\noffsets. The toolbar is always at `top: 0`; the header sits below it\n(`--apex-row-top-header`) and the filter sits below the header\n(`--apex-row-top-filter`). Writes are skipped when the values haven't\nchanged so the ResizeObserver feedback loop terminates."
            },
            {
              "kind": "method",
              "name": "observeStickyRows",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "GridDOMController",
          "declaration": {
            "name": "GridDOMController",
            "module": "src/controllers/dom.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/editing.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "DEFAULT_EDITING_CONFIG",
          "description": "The default editing configuration used when the grid has none set."
        },
        {
          "kind": "class",
          "description": "Reactive controller backing inline cell + row editing.",
          "name": "EditingController",
          "members": [
            {
              "kind": "field",
              "name": "activeCell",
              "type": {
                "text": "ActiveCell<T> | null"
              },
              "privacy": "public",
              "default": "null",
              "description": "The cell currently in edit mode, or `null`."
            },
            {
              "kind": "field",
              "name": "activeRow",
              "type": {
                "text": "{ rowIndex: number; data: T } | null"
              },
              "privacy": "public",
              "default": "null",
              "description": "The row currently in edit mode (row mode only), or `null`."
            },
            {
              "kind": "field",
              "name": "pending",
              "type": {
                "text": "Map<Keys<T>, unknown>"
              },
              "privacy": "public",
              "default": "new Map()",
              "description": "Pending values keyed by column for the currently editing row. Populated in\nrow mode as the user edits individual cells; flushed on\ncommitRow."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "enabled",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether editing is enabled at the grid level.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "mode",
              "type": {
                "text": "EditMode"
              },
              "privacy": "public",
              "description": "The resolved edit mode (`'cell'` if unset).",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "trigger",
              "type": {
                "text": "EditTrigger"
              },
              "privacy": "public",
              "description": "The resolved edit trigger (`'doubleClick'` if unset).",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "isEditable",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ],
              "description": "Whether the given column can be edited."
            },
            {
              "kind": "method",
              "name": "isCellEditing",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "columnKey",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ],
              "description": "Whether the cell `(rowIndex, columnKey)` is currently in edit mode."
            },
            {
              "kind": "method",
              "name": "isRowEditing",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Whether the given row is currently in edit mode (row mode)."
            },
            {
              "kind": "method",
              "name": "editCell",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "columnKey",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ],
              "description": "Begins editing the cell at `(rowIndex, columnKey)`. Auto-commits any cell\nalready in edit mode (in cell mode); in row mode it switches the active\ncell within the same row and rejects cross-row moves."
            },
            {
              "kind": "method",
              "name": "editRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Begins editing the given row in row mode. Emits `rowEditStarted` on\nsuccess. No-op in cell mode."
            },
            {
              "kind": "method",
              "name": "commitCell",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "value",
                  "optional": true,
                  "type": {
                    "text": "unknown"
                  },
                  "description": "The candidate value."
                }
              ],
              "description": "Commits a candidate value for the currently editing cell. In cell mode the\nvalue is written through to ApexGrid.data; in row mode it is staged\nin pending until commitRow is called."
            },
            {
              "kind": "method",
              "name": "commitImmediate",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "columnKey",
                  "type": {
                    "text": "Keys<T>"
                  }
                },
                {
                  "name": "value",
                  "type": {
                    "text": "unknown"
                  }
                }
              ],
              "description": "Writes `value` directly to the cell at `(rowIndex, columnKey)` without\nentering edit mode. Used by interactive display widgets (e.g. the boolean\ncheckbox) that handle their own input. Goes through the same\n`cellValueChanging` / `cellValueChanged` event path as a normal commit."
            },
            {
              "kind": "method",
              "name": "cancelCell",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Discards the current cell edit without writing. In row mode the row edit\nstays open."
            },
            {
              "kind": "method",
              "name": "commitRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "description": "Commits all pending edits for the currently editing row. Emits\n`cellValueChanging` for every changed cell and `rowEditEnded` at the end."
            },
            {
              "kind": "method",
              "name": "cancelRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Discards every pending edit for the active row and exits row edit mode.\nEmits `rowEditEnded` with `committed: false`."
            },
            {
              "kind": "method",
              "name": "getValue",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "unknown"
                }
              },
              "parameters": [
                {
                  "name": "rowIndex",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "columnKey",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ],
              "description": "Returns the current pending or committed value for `(rowIndex, columnKey)`.\nCells in row mode read this so unstaged-but-pending values are reflected\nduring the edit."
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "DEFAULT_EDITING_CONFIG",
          "declaration": {
            "name": "DEFAULT_EDITING_CONFIG",
            "module": "src/controllers/editing.ts"
          }
        },
        {
          "kind": "js",
          "name": "EditingController",
          "declaration": {
            "name": "EditingController",
            "module": "src/controllers/editing.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/expansion.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "DEFAULT_EXPANSION_CONFIG",
          "description": "The default expansion configuration used when the grid has none set."
        },
        {
          "kind": "class",
          "description": "Reactive controller backing row expansion (master-detail).",
          "name": "ExpansionController",
          "members": [
            {
              "kind": "field",
              "name": "expanded",
              "type": {
                "text": "Set<T>"
              },
              "privacy": "public",
              "default": "new Set()",
              "description": "Set of currently expanded row data references."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "enabled",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether expansion is enabled at the grid level.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "showToggleColumn",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether the built-in chevron toggle column should be rendered.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "isExpanded",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Whether `row` is currently expanded."
            },
            {
              "kind": "method",
              "name": "canExpand",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Whether `row` is permitted to expand. Combines the grid-wide `enabled`\nflag, the presence of a `detailTemplate`, and the optional per-row\n`isExpandable` predicate."
            },
            {
              "kind": "method",
              "name": "expandedRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "description": "Snapshot of currently expanded rows in insertion order."
            },
            {
              "kind": "method",
              "name": "toggleRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Toggles the expansion of `row`."
            },
            {
              "kind": "method",
              "name": "expandRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Expands `row`. No-op when the row is already expanded or not expandable."
            },
            {
              "kind": "method",
              "name": "collapseRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Collapses `row`. No-op when the row is not expanded."
            },
            {
              "kind": "method",
              "name": "expandAll",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Expands every expandable row in ApexGrid.dataView. Skips rows\nthe optional `isExpandable` predicate rejects."
            },
            {
              "kind": "method",
              "name": "collapseAll",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Collapses every currently expanded row."
            },
            {
              "kind": "method",
              "name": "replaceExpansion",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "rows",
                  "type": {
                    "text": "ReadonlyArray<T>"
                  }
                }
              ],
              "description": "Replaces the expansion set with `rows`. Used by the public\nApexGrid.expandedRows setter for programmatic control."
            },
            {
              "kind": "method",
              "name": "#commit",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "next",
                  "type": {
                    "text": "Set<T>"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "DEFAULT_EXPANSION_CONFIG",
          "declaration": {
            "name": "DEFAULT_EXPANSION_CONFIG",
            "module": "src/controllers/expansion.ts"
          }
        },
        {
          "kind": "js",
          "name": "ExpansionController",
          "declaration": {
            "name": "ExpansionController",
            "module": "src/controllers/expansion.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/filter.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "FilterController",
          "members": [
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "FilterState<T>"
              },
              "privacy": "public",
              "default": "new FilterState()"
            },
            {
              "kind": "field",
              "name": "filterRow",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "#virtualizer",
              "privacy": "private",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "#emitFilteringEvent",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                },
                {
                  "name": "type",
                  "type": {
                    "text": "'add' | 'modify' | 'remove'"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#emitFilteredEvent",
              "privacy": "private",
              "parameters": [
                {
                  "name": "detail",
                  "optional": true,
                  "type": {
                    "text": "ApexFilteredEvent<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#filter",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T> | FilterExpression<T>[]"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "hostUpdate",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            },
            {
              "kind": "method",
              "name": "get",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "reset",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "optional": true,
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "setActiveColumn",
              "privacy": "public",
              "parameters": [
                {
                  "name": "column",
                  "optional": true,
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "getDefaultExpression",
              "privacy": "public",
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "removeAllExpressions",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "removeExpression",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "filterWithEvent",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                },
                {
                  "name": "type",
                  "type": {
                    "text": "'add' | 'modify' | 'remove'"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "filter",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T> | FilterExpression<T>[]"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "FilterController",
          "declaration": {
            "name": "FilterController",
            "module": "src/controllers/filter.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/navigation.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "NavigationController",
          "members": [
            {
              "kind": "field",
              "name": "handlers",
              "privacy": "protected",
              "default": "new Map( Object.entries({ ArrowDown: this.arrowDown, ArrowUp: this.arrowUp, ArrowLeft: this.arrowLeft, ArrowRight: this.arrowRight, Home: this.home, End: this.end, ' ': this.toggleSelection, }) )"
            },
            {
              "kind": "field",
              "name": "virtualizer",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "state",
              "privacy": "protected",
              "default": "NAVIGATION_STATE"
            },
            {
              "kind": "field",
              "name": "_active",
              "privacy": "protected",
              "default": "SENTINEL_NODE"
            },
            {
              "kind": "field",
              "name": "nextNode",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "columns",
              "type": {
                "text": "Array<{ key: Keys<T>; hidden?: boolean }>"
              },
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "visibleColumns",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "firstColumn",
              "type": {
                "text": "Keys<T>"
              },
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "getPreviousColumn",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "Keys<T>"
                }
              },
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "getNextColumn",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "Keys<T>"
                }
              },
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "scrollToCell",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "node",
                  "type": {
                    "text": "ActiveNode<T>"
                  }
                }
              ]
            },
            {
              "kind": "field",
              "name": "active",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "home",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "end",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "arrowDown",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "arrowUp",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "arrowLeft",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "arrowRight",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "toggleSelection",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "hostDisconnected",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "navigate",
              "privacy": "public",
              "parameters": [
                {
                  "name": "event",
                  "type": {
                    "text": "KeyboardEvent"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "NavigationController",
          "declaration": {
            "name": "NavigationController",
            "module": "src/controllers/navigation.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/pagination.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "DEFAULT_PAGINATION",
          "description": "Default pagination state used when no `pagination` configuration is provided."
        },
        {
          "kind": "class",
          "description": "Reactive controller that owns the grid's pagination state.",
          "name": "PaginationController",
          "members": [
            {
              "kind": "field",
              "name": "page",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The current zero-based page index."
            },
            {
              "kind": "field",
              "name": "pageSize",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The current page size."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "enabled",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether pagination is enabled on the host grid.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "totalItems",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The total number of records before pagination is applied.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "pageCount",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The total number of pages for the current data view and `pageSize`.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "PaginationState"
              },
              "privacy": "public",
              "description": "Returns the resolved PaginationState for the current host.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "clamp",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "number"
                }
              },
              "parameters": [
                {
                  "name": "page",
                  "type": {
                    "text": "number"
                  },
                  "description": "The candidate page index."
                }
              ],
              "description": "Clamps a candidate `page` index into the valid `[0, pageCount - 1]` range."
            },
            {
              "kind": "method",
              "name": "reclamp",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Re-clamps the current page after the dataset size (or `pageSize`) changes."
            },
            {
              "kind": "method",
              "name": "#emitChanging",
              "privacy": "private",
              "parameters": [
                {
                  "name": "nextPage",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "nextPageSize",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#emitChanged",
              "privacy": "private"
            },
            {
              "kind": "method",
              "name": "gotoPage",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "page",
                  "type": {
                    "text": "number"
                  },
                  "description": "The target zero-based page index. Out-of-range values are clamped."
                }
              ],
              "description": "Navigates to `page`, emitting the cancellable `pageChanging` event first and\nthe `pageChanged` event after the pipeline has applied."
            },
            {
              "kind": "method",
              "name": "setPageSize",
              "privacy": "public",
              "return": {
                "type": {
                  "text": ""
                }
              },
              "parameters": [
                {
                  "name": "size",
                  "type": {
                    "text": "number"
                  },
                  "description": "The new page size. Must be a positive integer."
                }
              ],
              "description": "Sets the current page size and resets to the first page."
            },
            {
              "kind": "method",
              "name": "nextPage",
              "privacy": "public",
              "description": "Navigates to the next page if not already on the last one."
            },
            {
              "kind": "method",
              "name": "previousPage",
              "privacy": "public",
              "description": "Navigates to the previous page if not already on the first one."
            },
            {
              "kind": "method",
              "name": "firstPage",
              "privacy": "public",
              "description": "Navigates to the first page."
            },
            {
              "kind": "method",
              "name": "lastPage",
              "privacy": "public",
              "description": "Navigates to the last page."
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "DEFAULT_PAGINATION",
          "declaration": {
            "name": "DEFAULT_PAGINATION",
            "module": "src/controllers/pagination.ts"
          }
        },
        {
          "kind": "js",
          "name": "PaginationController",
          "declaration": {
            "name": "PaginationController",
            "module": "src/controllers/pagination.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/reorder.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Reactive controller backing pointer-driven column reordering with a\nfloating ghost and live mid-drag swaps.",
          "name": "ReorderController",
          "members": [
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "ReorderState<T> | null"
              },
              "privacy": "public",
              "default": "null"
            },
            {
              "kind": "field",
              "name": "#swapping",
              "privacy": "private",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Re-entrancy guard so a slow `moveColumn` can't trigger a second swap."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "headerRow",
              "privacy": "protected",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "isDraggable",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ],
              "description": "Whether reordering is enabled for the given column."
            },
            {
              "kind": "method",
              "name": "canDrop",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "source",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                },
                {
                  "name": "target",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ],
              "description": "Whether `source` may be dropped onto `target`. Cross-pinning-group moves\nare blocked so the drag can't escape its pin region."
            },
            {
              "kind": "method",
              "name": "start",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "sourceKey",
                  "type": {
                    "text": "Keys<T>"
                  }
                },
                {
                  "name": "sourceRect",
                  "type": {
                    "text": "DOMRect"
                  }
                },
                {
                  "name": "initialClientX",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "initialClientY",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "label",
                  "type": {
                    "text": "string"
                  }
                }
              ],
              "description": "Begins a drag from `sourceKey`. Captures the source's bounding rect and\nthe cursor offset within it so the ghost stays anchored to the grab\npoint as the cursor moves."
            },
            {
              "kind": "method",
              "name": "move",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "clientX",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "clientY",
                  "type": {
                    "text": "number"
                  }
                }
              ],
              "description": "Updates the ghost position and decides whether to swap with an adjacent\ncolumn."
            },
            {
              "kind": "method",
              "name": "end",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Ends the drag session. The columns are already in their final order\nbecause we live-swapped during the drag, so there's nothing to commit."
            },
            {
              "kind": "method",
              "name": "#checkSwap",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "Promise<void>"
                }
              },
              "parameters": [
                {
                  "name": "clientX",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#captureCellRects",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "FlipEntry[]"
                }
              },
              "description": "Snapshots the bounding rect of every header + body cell before a\nswap. Used as the \"First\" step of a FLIP — after `moveColumn` resolves,\n`playFlip` computes the delta against the new rect and animates each\nelement from its old position back to identity."
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "ReorderController",
          "declaration": {
            "name": "ReorderController",
            "module": "src/controllers/reorder.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/resize.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "ResizeController",
          "members": [
            {
              "kind": "field",
              "name": "indicatorActive",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "default": "false"
            },
            {
              "kind": "field",
              "name": "indicatorOffset",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "default": "0"
            },
            {
              "kind": "method",
              "name": "#maxSize",
              "privacy": "private",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                },
                {
                  "name": "headerWidth",
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "start",
              "privacy": "public",
              "parameters": [
                {
                  "name": "header",
                  "type": {
                    "text": "ApexGridHeader<T>"
                  },
                  "description": "the"
                }
              ],
              "description": "Begins resizing a column by showing and positioning the resize indicator in relation to the column."
            },
            {
              "kind": "method",
              "name": "stop",
              "privacy": "public",
              "description": "Stops and resets the resizing state."
            },
            {
              "kind": "method",
              "name": "resize",
              "privacy": "public",
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                },
                {
                  "name": "width",
                  "type": {
                    "text": "number"
                  }
                },
                {
                  "name": "sizerOffset",
                  "optional": true,
                  "type": {
                    "text": "number"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "autosize",
              "privacy": "public",
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                },
                {
                  "name": "header",
                  "type": {
                    "text": "ApexGridHeader<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "renderIndicator",
              "privacy": "public",
              "description": "Renders the resize indicator in the grid."
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "ResizeController",
          "declaration": {
            "name": "ResizeController",
            "module": "src/controllers/resize.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/selection.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "DEFAULT_SELECTION_CONFIG",
          "description": "The default selection configuration used when the grid has none set."
        },
        {
          "kind": "class",
          "description": "Reactive controller backing row selection.",
          "name": "SelectionController",
          "members": [
            {
              "kind": "field",
              "name": "selected",
              "type": {
                "text": "Set<T>"
              },
              "privacy": "public",
              "default": "new Set()",
              "description": "Set of currently selected row data references."
            },
            {
              "kind": "field",
              "name": "anchor",
              "type": {
                "text": "T | null"
              },
              "privacy": "public",
              "default": "null",
              "description": "Anchor row for Shift+click range selection. Set whenever a single row\nis toggled / picked so a follow-up Shift+click knows where to start."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "enabled",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether selection is enabled at the grid level.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "mode",
              "type": {
                "text": "SelectionMode"
              },
              "privacy": "public",
              "description": "The resolved selection mode (`'multiple'` if unset).",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "showCheckboxColumn",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether to render the built-in checkbox column.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "isSelected",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Whether the given row is currently selected."
            },
            {
              "kind": "method",
              "name": "selectedRows",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "description": "Returns the currently selected rows in insertion order."
            },
            {
              "kind": "method",
              "name": "allSelected",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "description": "Whether every row in the current view (ApexGrid.dataView) is\nselected. Used by the header checkbox to render its \"all\" state."
            },
            {
              "kind": "method",
              "name": "someSelected",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "description": "Whether some — but not all — rows in the current view are selected.\nUsed to render the header checkbox in its indeterminate state."
            },
            {
              "kind": "method",
              "name": "toggleRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Toggles selection of `row`. In `'single'` mode this either selects the\nrow (replacing any previous selection) or deselects it if it was the\nonly selected row."
            },
            {
              "kind": "method",
              "name": "selectRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Adds `row` to the selection. In `'single'` mode the existing selection\nis cleared first."
            },
            {
              "kind": "method",
              "name": "deselectRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Removes `row` from the selection."
            },
            {
              "kind": "method",
              "name": "additiveToggle",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Adds `row` to the selection without affecting other selected rows\n(`'multiple'` mode only). In `'single'` mode this behaves like\nselectRow."
            },
            {
              "kind": "method",
              "name": "rangeToggle",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Selects every row between anchor and `row` (inclusive) in the\ncurrent page view. No-op in `'single'` mode or when no anchor is set —\nin those cases the call falls back to a plain selectRow."
            },
            {
              "kind": "method",
              "name": "selectAll",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Selects every row currently in view (ApexGrid.dataView). No-op\nin `'single'` mode."
            },
            {
              "kind": "method",
              "name": "clear",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Clears the selection."
            },
            {
              "kind": "method",
              "name": "replaceSelection",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "rows",
                  "type": {
                    "text": "ReadonlyArray<T>"
                  }
                }
              ],
              "description": "Replaces the current selection with `rows`. Used by the public\nApexGrid.selectedRows setter so callers can drive selection\nprogrammatically. Single-mode keeps at most one row."
            },
            {
              "kind": "method",
              "name": "#commit",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "next",
                  "type": {
                    "text": "Set<T>"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "DEFAULT_SELECTION_CONFIG",
          "declaration": {
            "name": "DEFAULT_SELECTION_CONFIG",
            "module": "src/controllers/selection.ts"
          }
        },
        {
          "kind": "js",
          "name": "SelectionController",
          "declaration": {
            "name": "SelectionController",
            "module": "src/controllers/selection.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/sort.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "SortController",
          "members": [
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "SortState<T>"
              },
              "privacy": "public",
              "default": "new Map()"
            },
            {
              "kind": "field",
              "name": "#isMultipleSort",
              "privacy": "private",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "#isTriStateSort",
              "privacy": "private",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "#resolveSortOptions",
              "privacy": "private",
              "parameters": [
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | ColumnSortConfiguration<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#createDefaultExpression",
              "privacy": "private",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#orderBy",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "SortingDirection"
                }
              },
              "parameters": [
                {
                  "name": "dir",
                  "optional": true,
                  "type": {
                    "text": "SortingDirection"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#emitSortingEvent",
              "privacy": "private",
              "parameters": [
                {
                  "name": "detail",
                  "type": {
                    "text": "SortExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#emitSortedEvent",
              "privacy": "private",
              "parameters": [
                {
                  "name": "detail",
                  "type": {
                    "text": "SortExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#setExpression",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "SortExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "sortFromHeaderClick",
              "privacy": "public",
              "parameters": [
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                },
                {
                  "name": "additive",
                  "default": "false"
                }
              ]
            },
            {
              "kind": "method",
              "name": "#announce",
              "privacy": "private",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "SortExpression<T>"
                  }
                },
                {
                  "name": "column",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#captureRowRects",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "KeyedFlipEntry<T>[]"
                }
              }
            },
            {
              "kind": "method",
              "name": "#playRowFlip",
              "privacy": "private",
              "parameters": [
                {
                  "name": "before",
                  "type": {
                    "text": "ReadonlyArray<KeyedFlipEntry<T>>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "prepareExpression",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "SortExpression<T>"
                }
              },
              "parameters": [
                {
                  "name": "{ key, sort: options }",
                  "type": {
                    "text": "ColumnConfiguration<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "reset",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "optional": true,
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "_sort",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "expressions",
                  "type": {
                    "text": "SortExpression<T> | SortExpression<T>[]"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "sort",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expressions",
                  "type": {
                    "text": "SortExpression<T> | SortExpression<T>[]"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "SortController",
          "declaration": {
            "name": "SortController",
            "module": "src/controllers/sort.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/state.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "StateController",
          "members": [
            {
              "kind": "field",
              "name": "sorting",
              "type": {
                "text": "SortController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "filtering",
              "type": {
                "text": "FilterController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "navigation",
              "type": {
                "text": "NavigationController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "resizing",
              "type": {
                "text": "ResizeController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "pagination",
              "type": {
                "text": "PaginationController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "reordering",
              "type": {
                "text": "ReorderController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "editing",
              "type": {
                "text": "EditingController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "selection",
              "type": {
                "text": "SelectionController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "expansion",
              "type": {
                "text": "ExpansionController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "tree",
              "type": {
                "text": "TreeController<T>"
              },
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "modules",
              "privacy": "public",
              "readonly": true,
              "default": "new Map<string, ReactiveController>()",
              "description": "Optional feature controllers contributed by GridFeatureModules,\nkeyed by module id. Empty for the community `<apex-grid>` element; populated\nby derived grids (e.g. `@apexcharts/grid-enterprise`) that pass modules to\nthe constructor."
            },
            {
              "kind": "field",
              "name": "announcement",
              "type": {
                "text": "string"
              },
              "privacy": "public",
              "default": "''",
              "description": "Current message in the grid's polite live region. Bound by the host's\n`renderLiveRegion()` template; mutated through setAnnouncement\nso screen readers re-announce on every change."
            },
            {
              "kind": "field",
              "name": "#announceToken",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "0"
            },
            {
              "kind": "method",
              "name": "setAnnouncement",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "message",
                  "type": {
                    "text": "string"
                  }
                }
              ],
              "description": "Updates the polite live region's text. Repeats are forced to fire by\nappending a zero-width space — screen readers ignore unchanged content,\nso two identical sort announcements wouldn't otherwise be read aloud."
            },
            {
              "kind": "field",
              "name": "active",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "headerRow",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "scrollContainer",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "paginator",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "toolbar",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "pinOffsets",
              "type": {
                "text": "Map<unknown, number>"
              },
              "privacy": "public",
              "description": "Cumulative pin offsets (in px) keyed by column key. Populated by the\nGridDOMController after each layout.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "init",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "module",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "C | undefined"
                }
              },
              "parameters": [
                {
                  "name": "id",
                  "type": {
                    "text": "string"
                  }
                }
              ],
              "description": "Look up a feature controller contributed by a GridFeatureModule,\nby its module id. Returns `undefined` when no such module is registered."
            },
            {
              "kind": "method",
              "name": "applyModuleTransforms",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "rows",
                  "type": {
                    "text": "T[]"
                  }
                }
              ],
              "description": "Runs the post-pipeline row transforms contributed by feature modules\nimplementing RowTransformer, in registration order. Returns the\ninput unchanged when no such module is registered — the community grid path\nis a no-op pass-through."
            },
            {
              "kind": "method",
              "name": "presentRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "PresentedRow | null"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "ctx",
                  "type": {
                    "text": "RowPresenterContext<T>"
                  }
                }
              ],
              "description": "Asks feature modules implementing RowPresenter whether they render\nthe given row as full-width custom content (e.g. a group header). Returns\nthe first non-null result, or `null` when no module owns the row."
            },
            {
              "kind": "field",
              "name": "#decorationVersion",
              "privacy": "private",
              "type": {
                "text": "number"
              },
              "default": "0",
              "description": "Monotonic token bumped by bumpDecoration whenever module-driven cell\ndecoration changes. Forwarded down to each cell as a reactive property so a\ndecoration-only change (e.g. dragging a selection range) re-renders cells\nwithout re-running the data pipeline. Always `0` for the community grid."
            },
            {
              "kind": "field",
              "name": "decorationVersion",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "bumpDecoration",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Signals that CellDecorator output may have changed. Bumps the\ndecorationVersion and requests a host update so cells re-run their\ndecoration. Called by feature modules after mutating decoration state."
            },
            {
              "kind": "method",
              "name": "decorateCell",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "CellDecoration | null"
                }
              },
              "parameters": [
                {
                  "name": "ctx",
                  "type": {
                    "text": "CellDecoratorContext<T>"
                  }
                }
              ],
              "description": "Collects per-cell decoration contributed by feature modules implementing\nCellDecorator, merging their attribute maps (later modules win on a\nkey clash). Returns `null` when no module decorates the cell — the community\ngrid path, where each cell applies nothing."
            },
            {
              "kind": "method",
              "name": "handleCellInteraction",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "interaction",
                  "type": {
                    "text": "CellInteraction<T>"
                  }
                }
              ],
              "description": "Forwards a body-cell pointer interaction to every feature module that\nimplements CellInteractionHandler. No-op for the community grid\n(no modules); the grid only calls this when modules are registered."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "hostUpdate",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              }
            }
          ]
        },
        {
          "kind": "variable",
          "name": "gridStateContext"
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "StateController",
          "declaration": {
            "name": "StateController",
            "module": "src/controllers/state.ts"
          }
        },
        {
          "kind": "js",
          "name": "gridStateContext",
          "declaration": {
            "name": "gridStateContext",
            "module": "src/controllers/state.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/controllers/tree.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "DEFAULT_TREE_INDENT",
          "type": {
            "text": "number"
          },
          "default": "20",
          "description": "Default pixel indentation per depth level for the tree group column."
        },
        {
          "kind": "class",
          "description": "Reactive controller backing tree (nested-row) data.",
          "name": "TreeController",
          "members": [
            {
              "kind": "field",
              "name": "expanded",
              "type": {
                "text": "Set<T>"
              },
              "privacy": "public",
              "default": "new Set()"
            },
            {
              "kind": "field",
              "name": "expandedKeys",
              "type": {
                "text": "Set<string>"
              },
              "privacy": "public",
              "default": "new Set()"
            },
            {
              "kind": "field",
              "name": "#meta",
              "privacy": "private",
              "default": "new WeakMap<T, TreeRowMeta>()"
            },
            {
              "kind": "field",
              "name": "#syntheticMeta",
              "privacy": "private",
              "default": "new Map<string, TreeRowMeta>()"
            },
            {
              "kind": "field",
              "name": "#syntheticRows",
              "privacy": "private",
              "default": "new Map<string, T>()",
              "description": "Synthesized parent placeholder rows so consumers still get a `T`-shaped object."
            },
            {
              "kind": "field",
              "name": "#defaultsApplied",
              "privacy": "private",
              "type": {
                "text": "boolean"
              },
              "default": "false",
              "description": "Whether `defaultExpanded` has been applied once for the current data set."
            },
            {
              "kind": "field",
              "name": "#lastRoot",
              "privacy": "private",
              "type": {
                "text": "TreeNode<T> | null"
              },
              "default": "null",
              "description": "Most recently built root node. Used to walk the full tree for expand-all."
            },
            {
              "kind": "method",
              "name": "hostConnected",
              "privacy": "public"
            },
            {
              "kind": "field",
              "name": "enabled",
              "type": {
                "text": "boolean"
              },
              "privacy": "public",
              "description": "Whether tree mode is enabled at the grid level.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "childIndent",
              "type": {
                "text": "number"
              },
              "privacy": "public",
              "description": "The configured indentation, in pixels, per depth level.",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "groupColumnKey",
              "type": {
                "text": "Keys<T> | undefined"
              },
              "privacy": "public",
              "description": "The column key that displays the chevron + indentation. Resolves to the\nconfigured `groupColumnKey`, falling back to the first visible data column.",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "isGroupColumn",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "getMeta",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "TreeRowMeta | undefined"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Per-row metadata. Populated as a side effect of process; reading\nbefore the first pipeline pass returns `undefined`."
            },
            {
              "kind": "method",
              "name": "getDepth",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "number"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "hasChildren",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "isSynthesized",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "getLabel",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "string | null"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Group-column label override for synthesized parent rows."
            },
            {
              "kind": "method",
              "name": "isExpanded",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "toggleRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ],
              "description": "Toggles the expansion state of a tree row."
            },
            {
              "kind": "method",
              "name": "expandRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "collapseRow",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "row",
                  "type": {
                    "text": "T"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "expandAll",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Expands every parent in the current tree."
            },
            {
              "kind": "method",
              "name": "collapseAll",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "description": "Collapses every currently-expanded row."
            },
            {
              "kind": "method",
              "name": "process",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "input",
                  "type": {
                    "text": "ReadonlyArray<T>"
                  }
                }
              ],
              "description": "Pipeline entry point. Called by DataOperationsController.apply\nafter sort/filter/quickFilter. Builds the tree, applies the configured\ndefaults the first time we see this data, and returns rows in\ndisplay-order with any synthesized parents inserted."
            },
            {
              "kind": "method",
              "name": "resetForDataChange",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "description": "Resets cached metadata + defaults flag so the next pipeline pass\nre-applies `defaultExpanded`. Called from the data watcher when the\ninput array is replaced wholesale."
            },
            {
              "kind": "method",
              "name": "#buildTree",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "TreeNode<T>"
                }
              },
              "parameters": [
                {
                  "name": "rows",
                  "type": {
                    "text": "ReadonlyArray<T>"
                  }
                },
                {
                  "name": "getDataPath",
                  "type": {
                    "text": "(row: T) => readonly string[]"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#applyDefaults",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "root",
                  "type": {
                    "text": "TreeNode<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#refreshMeta",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "root",
                  "type": {
                    "text": "TreeNode<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#flatten",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "root",
                  "type": {
                    "text": "TreeNode<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "#commit",
              "privacy": "private",
              "return": {
                "type": {
                  "text": "Promise<boolean>"
                }
              },
              "parameters": [
                {
                  "name": "mutate",
                  "type": {
                    "text": "(nextData: Set<T>, nextKeys: Set<string>) => void"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "DEFAULT_TREE_INDENT",
          "declaration": {
            "name": "DEFAULT_TREE_INDENT",
            "module": "src/controllers/tree.ts"
          }
        },
        {
          "kind": "js",
          "name": "TreeController",
          "declaration": {
            "name": "TreeController",
            "module": "src/controllers/tree.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/column-types.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "getSelectOptions",
          "return": {
            "type": {
              "text": "NormalizedSelectOption[]"
            }
          },
          "parameters": [
            {
              "name": "column",
              "type": {
                "text": "{ options?: SelectOption[] }"
              }
            }
          ],
          "description": "Normalizes a column's `options` configuration into a uniform\n`{ value, label }[]` list. Accepts both bare-value entries and explicit\n`{ value, label }` pairs."
        },
        {
          "kind": "function",
          "name": "parseDate",
          "return": {
            "type": {
              "text": "Date | null"
            }
          },
          "parameters": [
            {
              "name": "value",
              "type": {
                "text": "unknown"
              }
            }
          ],
          "description": "Parses a stored cell value into a `Date`, or `null` when the value can't be\nresolved to a real date."
        },
        {
          "kind": "function",
          "name": "getColumnTypeRenderer",
          "return": {
            "type": {
              "text": "ColumnTypeRenderer<T> | undefined"
            }
          },
          "parameters": [
            {
              "name": "type",
              "optional": true,
              "type": {
                "text": "string"
              }
            }
          ],
          "description": "Returns the built-in renderer for a column `type`, or `undefined` when the\ntype has no built-in display/editor (the cell falls back to plain text /\nthe primitive editor in that case)."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "getSelectOptions",
          "declaration": {
            "name": "getSelectOptions",
            "module": "src/internal/column-types.ts"
          }
        },
        {
          "kind": "js",
          "name": "parseDate",
          "declaration": {
            "name": "parseDate",
            "module": "src/internal/column-types.ts"
          }
        },
        {
          "kind": "js",
          "name": "getColumnTypeRenderer",
          "declaration": {
            "name": "getColumnTypeRenderer",
            "module": "src/internal/column-types.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/constants.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "PIPELINE",
          "type": {
            "text": "string"
          },
          "default": "'pipeline'"
        },
        {
          "kind": "variable",
          "name": "SORT_ICON_ASCENDING",
          "type": {
            "text": "'arrow-upward'"
          },
          "default": "'arrow-upward'"
        },
        {
          "kind": "variable",
          "name": "SORT_ICON_DESCENDING",
          "type": {
            "text": "'arrow-downward'"
          },
          "default": "'arrow-downward'"
        },
        {
          "kind": "variable",
          "name": "MIN_COL_RESIZE_WIDTH",
          "type": {
            "text": "number"
          },
          "default": "80"
        },
        {
          "kind": "variable",
          "name": "SENTINEL_NODE",
          "type": {
            "text": "Readonly<ActiveNode<any>>"
          }
        },
        {
          "kind": "variable",
          "name": "DEFAULT_COLUMN_CONFIG"
        },
        {
          "kind": "variable",
          "name": "NAVIGATION_STATE",
          "type": {
            "text": "Map<NavigationState, ActiveNode<any>>"
          },
          "default": "new Map([ ['previous', SENTINEL_NODE], ['current', SENTINEL_NODE], ])"
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "PIPELINE",
          "declaration": {
            "name": "PIPELINE",
            "module": "src/internal/constants.ts"
          }
        },
        {
          "kind": "js",
          "name": "SORT_ICON_ASCENDING",
          "declaration": {
            "name": "SORT_ICON_ASCENDING",
            "module": "src/internal/constants.ts"
          }
        },
        {
          "kind": "js",
          "name": "SORT_ICON_DESCENDING",
          "declaration": {
            "name": "SORT_ICON_DESCENDING",
            "module": "src/internal/constants.ts"
          }
        },
        {
          "kind": "js",
          "name": "MIN_COL_RESIZE_WIDTH",
          "declaration": {
            "name": "MIN_COL_RESIZE_WIDTH",
            "module": "src/internal/constants.ts"
          }
        },
        {
          "kind": "js",
          "name": "SENTINEL_NODE",
          "declaration": {
            "name": "SENTINEL_NODE",
            "module": "src/internal/constants.ts"
          }
        },
        {
          "kind": "js",
          "name": "DEFAULT_COLUMN_CONFIG",
          "declaration": {
            "name": "DEFAULT_COLUMN_CONFIG",
            "module": "src/internal/constants.ts"
          }
        },
        {
          "kind": "js",
          "name": "NAVIGATION_STATE",
          "declaration": {
            "name": "NAVIGATION_STATE",
            "module": "src/internal/constants.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/export.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "resolveExportColumns",
          "return": {
            "type": {
              "text": "Array<ColumnConfiguration<T>>"
            }
          },
          "parameters": [
            {
              "name": "grid",
              "type": {
                "text": "ApexGrid<T>"
              }
            },
            {
              "name": "opts",
              "type": {
                "text": "ExportOptions<T>"
              }
            }
          ],
          "description": "Resolves the columns that should appear in the export, in display order."
        },
        {
          "kind": "function",
          "name": "resolveExportRows",
          "return": {
            "type": {
              "text": "ReadonlyArray<T>"
            }
          },
          "parameters": [
            {
              "name": "grid",
              "type": {
                "text": "ApexGrid<T>"
              }
            },
            {
              "name": "source",
              "default": "'view'",
              "type": {
                "text": "ExportSource"
              }
            }
          ],
          "description": "Resolves the rows that should appear in the export."
        },
        {
          "kind": "function",
          "name": "getColumnLabel",
          "return": {
            "type": {
              "text": "string"
            }
          },
          "parameters": [
            {
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              }
            }
          ],
          "description": "Returns the column's display label, used as the header cell value."
        },
        {
          "kind": "function",
          "name": "defaultExportFormat",
          "return": {
            "type": {
              "text": "ExportCellValue"
            }
          },
          "parameters": [
            {
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              }
            },
            {
              "name": "value",
              "type": {
                "text": "unknown"
              }
            }
          ],
          "description": "Default cell-value formatter. Mirrors the on-screen rendering for each\ncolumn type while keeping primitive types primitive (so number/boolean/date\nsurvive into XLSX as native cells instead of strings)."
        },
        {
          "kind": "function",
          "name": "resolveExportValue",
          "return": {
            "type": {
              "text": "ExportCellValue"
            }
          },
          "parameters": [
            {
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              }
            },
            {
              "name": "row",
              "type": {
                "text": "T"
              }
            },
            {
              "name": "opts",
              "type": {
                "text": "ExportOptions<T>"
              }
            }
          ],
          "description": "Resolves the export value for a single cell, applying the user-supplied\nformatter when present and falling back to defaultExportFormat."
        },
        {
          "kind": "function",
          "name": "formatDateForCSV",
          "return": {
            "type": {
              "text": "string"
            }
          },
          "parameters": [
            {
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              }
            },
            {
              "name": "value",
              "type": {
                "text": "Date"
              }
            }
          ],
          "description": "Formats a `Date` into the configured date style for CSV output."
        },
        {
          "kind": "function",
          "name": "buildCSV",
          "return": {
            "type": {
              "text": "string"
            }
          },
          "parameters": [
            {
              "name": "grid",
              "type": {
                "text": "ApexGrid<T>"
              }
            },
            {
              "name": "opts",
              "default": "{}",
              "type": {
                "text": "CSVExportOptions<T>"
              }
            }
          ],
          "description": "Builds the CSV string for the grid without triggering a download."
        },
        {
          "kind": "function",
          "name": "downloadBlob",
          "return": {
            "type": {
              "text": "void"
            }
          },
          "parameters": [
            {
              "name": "filename",
              "type": {
                "text": "string"
              }
            },
            {
              "name": "content",
              "type": {
                "text": "string | Uint8Array"
              }
            },
            {
              "name": "mimeType",
              "type": {
                "text": "string"
              }
            }
          ],
          "description": "Triggers a browser download for the given payload."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "resolveExportColumns",
          "declaration": {
            "name": "resolveExportColumns",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "resolveExportRows",
          "declaration": {
            "name": "resolveExportRows",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "getColumnLabel",
          "declaration": {
            "name": "getColumnLabel",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "defaultExportFormat",
          "declaration": {
            "name": "defaultExportFormat",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "resolveExportValue",
          "declaration": {
            "name": "resolveExportValue",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "formatDateForCSV",
          "declaration": {
            "name": "formatDateForCSV",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "buildCSV",
          "declaration": {
            "name": "buildCSV",
            "module": "src/internal/export.ts"
          }
        },
        {
          "kind": "js",
          "name": "downloadBlob",
          "declaration": {
            "name": "downloadBlob",
            "module": "src/internal/export.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/feature-module.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "isRowTransformer",
          "return": {
            "type": {
              "text": "controller is RowTransformer<T>"
            }
          },
          "parameters": [
            {
              "name": "controller",
              "type": {
                "text": "unknown"
              }
            }
          ],
          "description": "Runtime type-guard for RowTransformer."
        },
        {
          "kind": "function",
          "name": "isRowPresenter",
          "return": {
            "type": {
              "text": "controller is RowPresenter<T>"
            }
          },
          "parameters": [
            {
              "name": "controller",
              "type": {
                "text": "unknown"
              }
            }
          ],
          "description": "Runtime type-guard for RowPresenter."
        },
        {
          "kind": "function",
          "name": "isCellDecorator",
          "return": {
            "type": {
              "text": "controller is CellDecorator<T>"
            }
          },
          "parameters": [
            {
              "name": "controller",
              "type": {
                "text": "unknown"
              }
            }
          ],
          "description": "Runtime type-guard for CellDecorator."
        },
        {
          "kind": "function",
          "name": "isCellInteractionHandler",
          "return": {
            "type": {
              "text": "controller is CellInteractionHandler<T>"
            }
          },
          "parameters": [
            {
              "name": "controller",
              "type": {
                "text": "unknown"
              }
            }
          ],
          "description": "Runtime type-guard for CellInteractionHandler."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "isRowTransformer",
          "declaration": {
            "name": "isRowTransformer",
            "module": "src/internal/feature-module.ts"
          }
        },
        {
          "kind": "js",
          "name": "isRowPresenter",
          "declaration": {
            "name": "isRowPresenter",
            "module": "src/internal/feature-module.ts"
          }
        },
        {
          "kind": "js",
          "name": "isCellDecorator",
          "declaration": {
            "name": "isCellDecorator",
            "module": "src/internal/feature-module.ts"
          }
        },
        {
          "kind": "js",
          "name": "isCellInteractionHandler",
          "declaration": {
            "name": "isCellInteractionHandler",
            "module": "src/internal/feature-module.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/flip.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "playFlip",
          "parameters": [
            {
              "name": "entries",
              "type": {
                "text": "ReadonlyArray<FlipEntry>"
              },
              "description": "Elements captured by {@link captureRect}.\n * "
            },
            {
              "name": "axis",
              "default": "'both'",
              "type": {
                "text": "'x' | 'y' | 'both'"
              },
              "description": "`'x'` for horizontal motion (column reorder), `'y'` for\nvertical motion (row sort), `'both'` for diagonal motion if either axis\ncould move."
            }
          ],
          "description": "Plays the FLIP animation for every captured element by computing the\ndelta against its current (post-mutation) bounding rect and animating it\nback to identity."
        },
        {
          "kind": "function",
          "name": "captureRect",
          "return": {
            "type": {
              "text": "FlipEntry"
            }
          },
          "parameters": [
            {
              "name": "element",
              "type": {
                "text": "HTMLElement"
              }
            }
          ],
          "description": "Convenience: capture a rect for an element, returning a FlipEntry."
        },
        {
          "kind": "function",
          "name": "awaitChildUpdates",
          "parameters": [
            {
              "name": "elements",
              "type": {
                "text": "ReadonlyArray<UpdatableElement | null | undefined>"
              }
            }
          ],
          "description": "Awaits a set of child elements' `updateComplete` promises."
        },
        {
          "kind": "function",
          "name": "playKeyedFlip",
          "parameters": [
            {
              "name": "before",
              "type": {
                "text": "ReadonlyArray<KeyedFlipEntry<K>>"
              },
              "description": "Rects captured before the mutation, keyed by data\nidentity (or any other stable key)."
            },
            {
              "name": "resolveElement",
              "type": {
                "text": "(key: K) => HTMLElement | null"
              },
              "description": "Function that returns the current DOM element\nrepresenting `key`, or `null` if the keyed row is no longer in view."
            },
            {
              "name": "axis",
              "default": "'both'",
              "type": {
                "text": "'x' | 'y' | 'both'"
              },
              "description": "Same semantics as {@link playFlip}.\n "
            }
          ],
          "description": "Plays a FLIP animation against elements located by key after a DOM\nmutation has settled. Used for row sort, where DOM elements get recycled\nacross the mutation and can only be found by data identity."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "playFlip",
          "declaration": {
            "name": "playFlip",
            "module": "src/internal/flip.ts"
          }
        },
        {
          "kind": "js",
          "name": "captureRect",
          "declaration": {
            "name": "captureRect",
            "module": "src/internal/flip.ts"
          }
        },
        {
          "kind": "js",
          "name": "awaitChildUpdates",
          "declaration": {
            "name": "awaitChildUpdates",
            "module": "src/internal/flip.ts"
          }
        },
        {
          "kind": "js",
          "name": "playKeyedFlip",
          "declaration": {
            "name": "playKeyedFlip",
            "module": "src/internal/flip.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/icons.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "renderIcon",
          "return": {
            "type": {
              "text": "TemplateResult"
            }
          },
          "parameters": [
            {
              "name": "name",
              "type": {
                "text": "string"
              }
            },
            {
              "name": "opts",
              "default": "{}",
              "type": {
                "text": "IconRenderOptions"
              }
            }
          ],
          "description": "Renders one of the grid's built-in icons as an inline `<svg>`. All icons are\ndecorative (`aria-hidden=\"true\"`) by default — surrounding controls supply\nthe accessible label via `aria-label`."
        },
        {
          "kind": "function",
          "name": "renderSortArrows",
          "return": {
            "type": {
              "text": "TemplateResult"
            }
          },
          "description": "Renders the stacked up/down sort affordance used by sortable column headers.\nBoth chevrons are dimmed by default; the header CSS lifts the inactive one on\nhover and paints the active direction in the brand color, driven by the\nbutton's `data-sort-active` (`'ascending' | 'descending' | 'none'`) attribute."
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "renderIcon",
          "declaration": {
            "name": "renderIcon",
            "module": "src/internal/icons.ts"
          }
        },
        {
          "kind": "js",
          "name": "renderSortArrows",
          "declaration": {
            "name": "renderSortArrows",
            "module": "src/internal/icons.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/index.ts",
      "declarations": [],
      "exports": [
        {
          "kind": "js",
          "name": "ApexGrid",
          "declaration": {
            "name": "ApexGrid",
            "module": "../components/grid.js"
          }
        },
        {
          "kind": "js",
          "name": "gridStateContext",
          "declaration": {
            "name": "gridStateContext",
            "module": "../controllers/state.js"
          }
        },
        {
          "kind": "js",
          "name": "StateController",
          "declaration": {
            "name": "StateController",
            "module": "../controllers/state.js"
          }
        },
        {
          "kind": "js",
          "name": "PIPELINE",
          "declaration": {
            "name": "PIPELINE",
            "module": "./constants.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportCellValue",
          "declaration": {
            "name": "ExportCellValue",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportFormat",
          "declaration": {
            "name": "ExportFormat",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "ExportOptions",
          "declaration": {
            "name": "ExportOptions",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "downloadBlob",
          "declaration": {
            "name": "downloadBlob",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "getColumnLabel",
          "declaration": {
            "name": "getColumnLabel",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "resolveExportColumns",
          "declaration": {
            "name": "resolveExportColumns",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "resolveExportRows",
          "declaration": {
            "name": "resolveExportRows",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "resolveExportValue",
          "declaration": {
            "name": "resolveExportValue",
            "module": "./export.js"
          }
        },
        {
          "kind": "js",
          "name": "CellDecoration",
          "declaration": {
            "name": "CellDecoration",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "CellDecorator",
          "declaration": {
            "name": "CellDecorator",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "CellDecoratorContext",
          "declaration": {
            "name": "CellDecoratorContext",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "CellInteraction",
          "declaration": {
            "name": "CellInteraction",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "CellInteractionHandler",
          "declaration": {
            "name": "CellInteractionHandler",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "CellInteractionKind",
          "declaration": {
            "name": "CellInteractionKind",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "GridFeatureModule",
          "declaration": {
            "name": "GridFeatureModule",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "PresentedRow",
          "declaration": {
            "name": "PresentedRow",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "RowPresenter",
          "declaration": {
            "name": "RowPresenter",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "RowPresenterContext",
          "declaration": {
            "name": "RowPresenterContext",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "RowTransformer",
          "declaration": {
            "name": "RowTransformer",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "isCellDecorator",
          "declaration": {
            "name": "isCellDecorator",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "isCellInteractionHandler",
          "declaration": {
            "name": "isCellInteractionHandler",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "isRowPresenter",
          "declaration": {
            "name": "isRowPresenter",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "isRowTransformer",
          "declaration": {
            "name": "isRowTransformer",
            "module": "./feature-module.js"
          }
        },
        {
          "kind": "js",
          "name": "registerComponent",
          "declaration": {
            "name": "registerComponent",
            "module": "./register.js"
          }
        },
        {
          "kind": "js",
          "name": "ActiveNode",
          "declaration": {
            "name": "ActiveNode",
            "module": "./types.js"
          }
        },
        {
          "kind": "js",
          "name": "ColumnConfiguration",
          "declaration": {
            "name": "ColumnConfiguration",
            "module": "./types.js"
          }
        },
        {
          "kind": "js",
          "name": "GridHost",
          "declaration": {
            "name": "GridHost",
            "module": "./types.js"
          }
        },
        {
          "kind": "js",
          "name": "Keys",
          "declaration": {
            "name": "Keys",
            "module": "./types.js"
          }
        },
        {
          "kind": "js",
          "name": "getDisplayColumns",
          "declaration": {
            "name": "getDisplayColumns",
            "module": "./utils.js"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/is-defined.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "isDefined",
          "return": {
            "type": {
              "text": "value is NonNullable<T>"
            }
          },
          "parameters": [
            {
              "name": "value",
              "type": {
                "text": "T | null | undefined"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "isDefined",
          "declaration": {
            "name": "isDefined",
            "module": "src/internal/is-defined.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/normalize-case.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "normalizeCase",
          "parameters": [
            {
              "name": "string",
              "type": {
                "text": "string"
              }
            },
            {
              "name": "caseSensitive",
              "optional": true,
              "type": {
                "text": "boolean"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "normalizeCase",
          "declaration": {
            "name": "normalizeCase",
            "module": "src/internal/normalize-case.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/part-map.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "partNameMap",
          "parameters": [
            {
              "name": "parts",
              "type": {
                "text": "PartNameInfo"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "partNameMap",
          "declaration": {
            "name": "partNameMap",
            "module": "src/internal/part-map.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/register.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "registerComponent",
          "return": {
            "type": {
              "text": "void"
            }
          },
          "parameters": [
            {
              "name": "component",
              "type": {
                "text": "ApexComponent"
              }
            },
            {
              "name": "dependencies",
              "type": {
                "text": "ApexComponent[]"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "registerComponent",
          "declaration": {
            "name": "registerComponent",
            "module": "src/internal/register.ts"
          }
        },
        {
          "kind": "custom-element-definition",
          "declaration": {
            "name": "component",
            "module": "src/internal/register.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/tags.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "GRID_TAG",
          "type": {
            "text": "'apex-grid'"
          },
          "default": "'apex-grid'"
        },
        {
          "kind": "variable",
          "name": "GRID_BODY",
          "type": {
            "text": "'apex-virtualizer'"
          },
          "default": "'apex-virtualizer'"
        },
        {
          "kind": "variable",
          "name": "GRID_HEADER_ROW_TAG",
          "type": {
            "text": "'apex-grid-header-row'"
          },
          "default": "'apex-grid-header-row'"
        },
        {
          "kind": "variable",
          "name": "GRID_HEADER_TAG",
          "type": {
            "text": "'apex-grid-header'"
          },
          "default": "'apex-grid-header'"
        },
        {
          "kind": "variable",
          "name": "GRID_ROW_TAG",
          "type": {
            "text": "'apex-grid-row'"
          },
          "default": "'apex-grid-row'"
        },
        {
          "kind": "variable",
          "name": "GRID_CELL_TAG",
          "type": {
            "text": "'apex-grid-cell'"
          },
          "default": "'apex-grid-cell'"
        },
        {
          "kind": "variable",
          "name": "GRID_FILTER_ROW_TAG",
          "type": {
            "text": "'apex-filter-row'"
          },
          "default": "'apex-filter-row'"
        },
        {
          "kind": "variable",
          "name": "GRID_PAGINATOR_TAG",
          "type": {
            "text": "'apex-grid-paginator'"
          },
          "default": "'apex-grid-paginator'"
        },
        {
          "kind": "variable",
          "name": "GRID_TOOLBAR_TAG",
          "type": {
            "text": "'apex-grid-toolbar'"
          },
          "default": "'apex-grid-toolbar'"
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "GRID_TAG",
          "declaration": {
            "name": "GRID_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_BODY",
          "declaration": {
            "name": "GRID_BODY",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_HEADER_ROW_TAG",
          "declaration": {
            "name": "GRID_HEADER_ROW_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_HEADER_TAG",
          "declaration": {
            "name": "GRID_HEADER_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_ROW_TAG",
          "declaration": {
            "name": "GRID_ROW_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_CELL_TAG",
          "declaration": {
            "name": "GRID_CELL_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_FILTER_ROW_TAG",
          "declaration": {
            "name": "GRID_FILTER_ROW_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_PAGINATOR_TAG",
          "declaration": {
            "name": "GRID_PAGINATOR_TAG",
            "module": "src/internal/tags.ts"
          }
        },
        {
          "kind": "js",
          "name": "GRID_TOOLBAR_TAG",
          "declaration": {
            "name": "GRID_TOOLBAR_TAG",
            "module": "src/internal/tags.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/types.ts",
      "declarations": [],
      "exports": []
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/utils.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "SELECTION_COLUMN_WIDTH",
          "type": {
            "text": "number"
          },
          "default": "44",
          "description": "Width of the auto-rendered selection (checkbox) column in CSS pixels."
        },
        {
          "kind": "variable",
          "name": "EXPANSION_COLUMN_WIDTH",
          "type": {
            "text": "number"
          },
          "default": "40",
          "description": "Width of the auto-rendered expansion (chevron) column in CSS pixels."
        },
        {
          "kind": "function",
          "name": "applyColumnWidths",
          "return": {
            "type": {
              "text": "StyleInfo"
            }
          },
          "parameters": [
            {
              "name": "columns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              }
            },
            {
              "name": "options",
              "default": "{}",
              "type": {
                "text": "{ showSelectionColumn?: boolean; showExpansionColumn?: boolean }"
              }
            }
          ]
        },
        {
          "kind": "function",
          "name": "getDisplayColumns",
          "return": {
            "type": {
              "text": "Array<ColumnConfiguration<T>>"
            }
          },
          "parameters": [
            {
              "name": "columns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              }
            }
          ],
          "description": "Returns the visual render order of the columns: start-pinned columns first,\nthen unpinned columns, then end-pinned columns. Within each group the\noriginal `columns` array order is preserved."
        },
        {
          "kind": "function",
          "name": "getPinEdge",
          "return": {
            "type": {
              "text": "'start' | 'end' | null"
            }
          },
          "parameters": [
            {
              "name": "displayColumns",
              "type": {
                "text": "Array<ColumnConfiguration<T>>"
              }
            },
            {
              "name": "index",
              "type": {
                "text": "number"
              }
            }
          ],
          "description": "Returns `'start'` for the last visible start-pinned column, `'end'` for the\nfirst visible end-pinned column, or `null` otherwise. The edge column gets a\nsubtle shadow / border to separate the pinned region from the scrolling one."
        },
        {
          "kind": "function",
          "name": "autoGenerateColumns",
          "parameters": [
            {
              "name": "grid",
              "type": {
                "text": "GridHost<T>"
              }
            }
          ]
        },
        {
          "kind": "function",
          "name": "asArray",
          "parameters": [
            {
              "name": "value",
              "type": {
                "text": "T | T[]"
              }
            }
          ]
        },
        {
          "kind": "function",
          "name": "getFilterOperandsFor",
          "parameters": [
            {
              "name": "column",
              "type": {
                "text": "ColumnConfiguration<T>"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "SELECTION_COLUMN_WIDTH",
          "declaration": {
            "name": "SELECTION_COLUMN_WIDTH",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "EXPANSION_COLUMN_WIDTH",
          "declaration": {
            "name": "EXPANSION_COLUMN_WIDTH",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "applyColumnWidths",
          "declaration": {
            "name": "applyColumnWidths",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "getDisplayColumns",
          "declaration": {
            "name": "getDisplayColumns",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "getPinEdge",
          "declaration": {
            "name": "getPinEdge",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "autoGenerateColumns",
          "declaration": {
            "name": "autoGenerateColumns",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "asArray",
          "declaration": {
            "name": "asArray",
            "module": "src/internal/utils.ts"
          }
        },
        {
          "kind": "js",
          "name": "getFilterOperandsFor",
          "declaration": {
            "name": "getFilterOperandsFor",
            "module": "src/internal/utils.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/watch.ts",
      "declarations": [
        {
          "kind": "function",
          "name": "watch",
          "parameters": [
            {
              "name": "propName",
              "type": {
                "text": "string"
              }
            },
            {
              "name": "options",
              "optional": true,
              "type": {
                "text": "WatchOptions"
              }
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "watch",
          "declaration": {
            "name": "watch",
            "module": "src/internal/watch.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/base.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "DataOperation",
          "members": [
            {
              "kind": "method",
              "name": "resolveValue",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "key",
                  "type": {
                    "text": "K"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "resolveCase",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "U"
                  }
                },
                {
                  "name": "caseSensitive",
                  "optional": true,
                  "type": {
                    "text": "boolean"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "apply",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "args",
                  "type": {
                    "text": "unknown[]"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "DataOperation",
            "module": "src/operations/base.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "FilterDataOperation",
          "members": [
            {
              "kind": "method",
              "name": "resolveFilter",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "expr",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "match",
              "privacy": "protected",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "ands",
                  "type": {
                    "text": "FilterExpression<T>[]"
                  }
                },
                {
                  "name": "ors",
                  "type": {
                    "text": "FilterExpression<T>[]"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "apply",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "data",
                  "type": {
                    "text": "T[]"
                  }
                },
                {
                  "name": "state",
                  "type": {
                    "text": "FilterState<T>"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveValue",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "key",
                  "type": {
                    "text": "K"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveCase",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "U"
                  }
                },
                {
                  "name": "caseSensitive",
                  "optional": true,
                  "type": {
                    "text": "boolean"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            }
          ],
          "superclass": {
            "name": "DataOperation",
            "module": "/src/operations/base.js"
          }
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "FilterDataOperation",
            "module": "src/operations/filter.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/pagination.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Built-in pagination data operation.",
          "name": "PaginationDataOperation",
          "members": [
            {
              "kind": "method",
              "name": "apply",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "data",
                  "type": {
                    "text": "T[]"
                  },
                  "description": "The post-filter, post-sort dataset."
                },
                {
                  "name": "state",
                  "type": {
                    "text": "PaginationState"
                  },
                  "description": "The resolved pagination state."
                }
              ],
              "description": "Returns the slice of `data` corresponding to the given pagination `state`.",
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveValue",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "key",
                  "type": {
                    "text": "K"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveCase",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "U"
                  }
                },
                {
                  "name": "caseSensitive",
                  "optional": true,
                  "type": {
                    "text": "boolean"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            }
          ],
          "superclass": {
            "name": "DataOperation",
            "module": "/src/operations/base.js"
          }
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "PaginationDataOperation",
            "module": "src/operations/pagination.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/quick-filter.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "Built-in quick-filter (global search) data operation.",
          "name": "QuickFilterDataOperation",
          "members": [
            {
              "kind": "method",
              "name": "apply",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "data",
                  "type": {
                    "text": "T[]"
                  },
                  "description": "The dataset to filter."
                },
                {
                  "name": "searchTerm",
                  "type": {
                    "text": "string"
                  },
                  "description": "The trimmed search term (already normalised to lower-case is fine)."
                },
                {
                  "name": "columns",
                  "type": {
                    "text": "Array<ColumnConfiguration<T>>"
                  },
                  "description": "The current column configuration; hidden columns are skipped."
                }
              ],
              "description": "Returns the records whose visible column values contain `searchTerm` (case-insensitive).",
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveValue",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "key",
                  "type": {
                    "text": "K"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveCase",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "U"
                  }
                },
                {
                  "name": "caseSensitive",
                  "optional": true,
                  "type": {
                    "text": "boolean"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            }
          ],
          "superclass": {
            "name": "DataOperation",
            "module": "/src/operations/base.js"
          }
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "QuickFilterDataOperation",
            "module": "src/operations/quick-filter.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/sort.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "SortDataOperation",
          "members": [
            {
              "kind": "field",
              "name": "orderBy",
              "privacy": "protected",
              "default": "new Map( Object.entries({ ascending: 1, descending: -1, }) )"
            },
            {
              "kind": "method",
              "name": "compareValues",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "first",
                  "type": {
                    "text": "U"
                  }
                },
                {
                  "name": "second",
                  "type": {
                    "text": "U"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "compareObjects",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "first",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "second",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "expression",
                  "type": {
                    "text": "SortExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "apply",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "T[]"
                }
              },
              "parameters": [
                {
                  "name": "data",
                  "type": {
                    "text": "T[]"
                  }
                },
                {
                  "name": "state",
                  "type": {
                    "text": "SortState<T>"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveValue",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "record",
                  "type": {
                    "text": "T"
                  }
                },
                {
                  "name": "key",
                  "type": {
                    "text": "K"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            },
            {
              "kind": "method",
              "name": "resolveCase",
              "privacy": "protected",
              "parameters": [
                {
                  "name": "value",
                  "type": {
                    "text": "U"
                  }
                },
                {
                  "name": "caseSensitive",
                  "optional": true,
                  "type": {
                    "text": "boolean"
                  }
                }
              ],
              "inheritedFrom": {
                "name": "DataOperation",
                "module": "src/operations/base.ts"
              }
            }
          ],
          "superclass": {
            "name": "DataOperation",
            "module": "/src/operations/base.js"
          }
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "default",
          "declaration": {
            "name": "SortDataOperation",
            "module": "src/operations/sort.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/internal/mixins/event-emitter.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "EventEmitterBase",
          "members": [
            {
              "kind": "method",
              "name": "addEventListener",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "K"
                  }
                },
                {
                  "name": "listener",
                  "type": {
                    "text": "(this: HTMLElement, ev: M[K]) => any"
                  }
                },
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | AddEventListenerOptions"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "addEventListener",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "string"
                  }
                },
                {
                  "name": "listener",
                  "type": {
                    "text": "EventListenerOrEventListenerObject"
                  }
                },
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | AddEventListenerOptions"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "removeEventListener",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "K"
                  }
                },
                {
                  "name": "listener",
                  "type": {
                    "text": "(this: HTMLElement, ev: M[K]) => any"
                  }
                },
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | EventListenerOptions"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "removeEventListener",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "void"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "string"
                  }
                },
                {
                  "name": "listener",
                  "type": {
                    "text": "EventListenerOrEventListenerObject"
                  }
                },
                {
                  "name": "options",
                  "optional": true,
                  "type": {
                    "text": "boolean | EventListenerOptions"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "emitEvent",
              "privacy": "public",
              "return": {
                "type": {
                  "text": "boolean"
                }
              },
              "parameters": [
                {
                  "name": "type",
                  "type": {
                    "text": "K"
                  }
                },
                {
                  "name": "eventInitDict",
                  "optional": true,
                  "type": {
                    "text": "CustomEventInit<D>"
                  }
                }
              ]
            }
          ],
          "events": [
            {
              "type": {
                "text": "CustomEvent"
              }
            }
          ],
          "superclass": {
            "name": "LitElement",
            "package": "lit"
          },
          "customElement": true
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "EventEmitterBase",
          "declaration": {
            "name": "EventEmitterBase",
            "module": "src/internal/mixins/event-emitter.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter/state.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "FilterState",
          "members": [
            {
              "kind": "field",
              "name": "state",
              "type": {
                "text": "Map<Keys<T>, FilterExpressionTree<T>>"
              },
              "privacy": "protected",
              "default": "new Map()"
            },
            {
              "kind": "field",
              "name": "empty",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "keys",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "values",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "ands",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "ors",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "has",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "get",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "delete",
              "privacy": "public",
              "parameters": [
                {
                  "name": "key",
                  "type": {
                    "text": "Keys<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "clear",
              "privacy": "public"
            },
            {
              "kind": "method",
              "name": "set",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "FilterState",
          "declaration": {
            "name": "FilterState",
            "module": "src/operations/filter/state.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter/tree.ts",
      "declarations": [
        {
          "kind": "class",
          "description": "",
          "name": "FilterExpressionTree",
          "members": [
            {
              "kind": "field",
              "name": "operands",
              "type": {
                "text": "Array<FilterExpression<T>>"
              },
              "privacy": "protected",
              "default": "[]"
            },
            {
              "kind": "field",
              "name": "empty",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "length",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "all",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "ands",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "field",
              "name": "ors",
              "privacy": "public",
              "readonly": true
            },
            {
              "kind": "method",
              "name": "has",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "add",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "remove",
              "privacy": "public",
              "parameters": [
                {
                  "name": "expression",
                  "type": {
                    "text": "FilterExpression<T>"
                  }
                }
              ]
            },
            {
              "kind": "method",
              "name": "iterator",
              "privacy": "protected"
            },
            {
              "kind": "method",
              "name": "[Symbol.iterator]",
              "privacy": "public"
            }
          ]
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "FilterExpressionTree",
          "declaration": {
            "name": "FilterExpressionTree",
            "module": "src/operations/filter/tree.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter/types.ts",
      "declarations": [],
      "exports": []
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/sort/types.ts",
      "declarations": [],
      "exports": []
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter/operands/boolean.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "BooleanOperands"
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "BooleanOperands",
          "declaration": {
            "name": "BooleanOperands",
            "module": "src/operations/filter/operands/boolean.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter/operands/number.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "NumberOperands"
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "NumberOperands",
          "declaration": {
            "name": "NumberOperands",
            "module": "src/operations/filter/operands/number.ts"
          }
        }
      ]
    },
    {
      "kind": "javascript-module",
      "path": "src/operations/filter/operands/string.ts",
      "declarations": [
        {
          "kind": "variable",
          "name": "StringOperands"
        }
      ],
      "exports": [
        {
          "kind": "js",
          "name": "StringOperands",
          "declaration": {
            "name": "StringOperands",
            "module": "src/operations/filter/operands/string.ts"
          }
        }
      ]
    }
  ]
}
