import { Node } from '../../core/Node.js';
/**
 * Cell margins configuration
 * @typedef {Object} CellMargins
 * @property {number} [top] - Top margin in pixels
 * @property {number} [right] - Right margin in pixels
 * @property {number} [bottom] - Bottom margin in pixels
 * @property {number} [left] - Left margin in pixels
 */
/**
 * Cell background configuration
 * @typedef {Object} CellBackground
 * @property {string} color - Background color (hex without #)
 */
/**
 * Configuration options for TableCell
 * @typedef {Object} TableCellOptions
 * @category Options
 * @property {Object} [htmlAttributes={'aria-label': 'Table cell node'}] - HTML attributes for table cells
 */
/**
 * Attributes for table cell nodes
 * @typedef {Object} TableCellAttributes
 * @category Attributes
 * @property {number} [colspan=1] - Number of columns this cell spans
 * @property {number} [rowspan=1] - Number of rows this cell spans
 * @property {number[]} [colwidth=[100]] - Column widths array in pixels
 * @property {CellBackground} [background] - Cell background color configuration
 * @property {string} [verticalAlign] - Vertical content alignment (top, middle, bottom)
 * @property {CellMargins} [cellMargins] - Internal cell padding
 * @property {import('./helpers/createCellBorders.js').CellBorders} [borders] - Cell border configuration
 * @property {string} [widthType='auto'] @internal - Internal width type
 * @property {string} [widthUnit='px'] @internal - Internal width unit
 */
/**
 * @module TableCell
 * @sidebarTitle Table Cell
 * @snippetPath /snippets/extensions/table-cell.mdx
 */
export const TableCell: Node<Record<string, never>, Record<string, never>, Record<string, unknown>>;
/**
 * Conditional formatting properties
 */
export type CnfStyle = {
    /**
     * - Specifies that the first row conditional formatting should be applied
     */
    firstRow?: boolean | undefined;
    /**
     * - Specifies that the last row conditional formatting should be applied
     */
    lastRow?: boolean | undefined;
    /**
     * - Specifies that the first column conditional formatting should be applied
     */
    firstColumn?: boolean | undefined;
    /**
     * - Specifies that the last column conditional formatting should be applied
     */
    lastColumn?: boolean | undefined;
    /**
     * - Specifies that odd vertical banding conditional formatting should be applied
     */
    oddVBand?: boolean | undefined;
    /**
     * - Specifies that even vertical banding conditional formatting should be applied
     */
    evenVBand?: boolean | undefined;
    /**
     * - Specifies that odd horizontal banding conditional formatting should be applied
     */
    oddHBand?: boolean | undefined;
    /**
     * - Specifies that even horizontal banding conditional formatting should be applied
     */
    evenHBand?: boolean | undefined;
    /**
     * - Specifies that the top-left corner cell conditional formatting should be applied
     */
    firstRowFirstColumn?: boolean | undefined;
    /**
     * - Specifies that the top-right corner cell conditional formatting should be applied
     */
    firstRowLastColumn?: boolean | undefined;
    /**
     * - Specifies that the bottom-left corner cell conditional formatting should be applied
     */
    lastRowFirstColumn?: boolean | undefined;
    /**
     * - Specifies that the bottom-right corner cell conditional formatting should be applied
     */
    lastRowLastColumn?: boolean | undefined;
};
/**
 * Table Cell Properties
 */
export type TableCellProperties = {
    /**
     * - Conditional formatting properties
     */
    cnfStyle?: CnfStyle | undefined;
    /**
     * - Cell width
     */
    cellWidth?: import('../table/table.js').TableMeasurement | undefined;
    /**
     * - Number of grid columns spanned by the cell
     */
    gridSpan?: number | undefined;
    /**
     * - Vertical merge setting
     */
    vMerge?: "restart" | "continue" | undefined;
    /**
     * - Cell border properties
     */
    borders?: import('../table/table.js').TableBorders | undefined;
    /**
     * - Cell shading properties
     */
    shading?: import('../table/table.js').ShadingProperties | undefined;
    /**
     * - Specifies that the cell content should not wrap
     */
    noWrap?: boolean | undefined;
    /**
     * - Cell margin properties
     */
    cellMargins?: import('../table/table.js').TableCellMargins | undefined;
    /**
     * - Text direction
     */
    textDirection?: "tbRl" | "btLr" | undefined;
    /**
     * - Specifies that the cell content should be fit to the cell
     */
    tcFitText?: boolean | undefined;
    /**
     * - Vertical alignment
     */
    vAlign?: "top" | "center" | "bottom" | undefined;
    /**
     * - Specifies that the cell mark should be hidden
     */
    hideMark?: boolean | undefined;
    /**
     * - This element specifies a list of references, using a unique identifier, to a table header cell that is associated with the current table cell
     */
    headers?: {
        header: string;
    }[] | undefined;
};
/**
 * Cell margins configuration
 */
export type CellMargins = {
    /**
     * - Top margin in pixels
     */
    top?: number | undefined;
    /**
     * - Right margin in pixels
     */
    right?: number | undefined;
    /**
     * - Bottom margin in pixels
     */
    bottom?: number | undefined;
    /**
     * - Left margin in pixels
     */
    left?: number | undefined;
};
/**
 * Cell background configuration
 */
export type CellBackground = {
    /**
     * - Background color (hex without #)
     */
    color: string;
};
/**
 * Configuration options for TableCell
 */
export type TableCellOptions = Object;
/**
 * Attributes for table cell nodes
 */
export type TableCellAttributes = Object;
//# sourceMappingURL=table-cell.d.ts.map