import { type RenderResult } from '@testing-library/react';
/**
 * Base page object class for table interactions
 * Provides common methods to query and interact with the table component
 */
export declare class BaseTablePage {
    protected container: HTMLElement;
    protected renderResult: RenderResult;
    constructor(renderResult: RenderResult);
    /**
     * Gets the main table element
     */
    getTable(): HTMLElement;
    /**
     * Gets the table header element
     */
    getTableHeader(): HTMLElement;
    /**
     * Gets the table body element
     */
    getTableBody(): HTMLElement;
    /**
     * Gets all table rows (excluding header)
     */
    getTableRows(): HTMLElement[];
    /**
     * Gets all header rows
     */
    getHeaderRows(): HTMLElement[];
    /**
     * Gets a specific row by index (0-based)
     */
    getRowByIndex(index: number): HTMLElement | null;
    /**
     * Gets all cells in a specific row
     */
    getCellsInRow(row: HTMLElement): HTMLElement[];
    /**
     * Gets a specific cell by row and column index (0-based)
     */
    getCellByIndex(rowIndex: number, columnIndex: number): HTMLElement | null;
    /**
     * Gets all header cells
     */
    getHeaderCells(): HTMLElement[];
    /**
     * Gets a specific header cell by index (0-based)
     */
    getHeaderCellByIndex(index: number): HTMLElement | null;
    /**
     * Gets the text content of a cell
     */
    getCellText(rowIndex: number, columnIndex: number): string;
    /**
     * Gets the text content of a header cell
     */
    getHeaderCellText(columnIndex: number): string;
    /**
     * Gets the number of rows in the table (excluding header)
     */
    getRowCount(): number;
    /**
     * Gets the number of columns in the table
     */
    getColumnCount(): number;
    /**
     * Checks if the table is present in the DOM
     */
    isTablePresent(): boolean;
    /**
     * Gets all column headers as an array of strings
     */
    getColumnHeaders(): string[];
    /**
     * Finds a row that contains specific text
     */
    findRowByText(text: string): HTMLElement | null;
    /**
     * Gets all text content from a specific row
     */
    getRowText(rowIndex: number): string[];
}
//# sourceMappingURL=base-table.page.d.ts.map