/** * @license * Copyright (c) 2016 - 2026 Vaadin Ltd. * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/ */ import type { GridDefaultItem } from './vaadin-grid.js'; import type { GridColumnGroupMixin } from './vaadin-grid-column-group-mixin.js'; export * from './vaadin-grid-column-group-mixin.js'; /** * A `` is used to make groups of columns in `` and * to configure additional headers and footers. * * Groups can be nested to create complex header and footer configurations. * * #### Example: * ```html * * * * * ``` * * ```js * const columnGroup = document.querySelector('#columnGroup'); * columnGroup.headerRenderer = (root, columnGroup) => { * root.textContent = 'header'; * } * * const column1 = document.querySelector('#column1'); * column1.headerRenderer = (root, column) => { ... }; * column1.renderer = (root, column, model) => { ... }; * * const column2 = document.querySelector('#column2'); * column2.headerRenderer = (root, column) => { ... }; * column2.renderer = (root, column, model) => { ... }; * ``` */ declare class GridColumnGroup extends HTMLElement { hidden: boolean; } // eslint-disable-next-line @typescript-eslint/no-empty-object-type interface GridColumnGroup extends GridColumnGroupMixin> {} declare global { interface HTMLElementTagNameMap { 'vaadin-grid-column-group': GridColumnGroup; } } export { GridColumnGroup };