import { Locator, Page } from '@playwright/test';
import type { TextUtils } from './TextUtils';
/**
 * Кеширует структуру таблицы (заголовки и их индексы).
 * @param tableRoot - локатор контейнера таблицы или страница (для грида на всей странице)
 * @param textUtils - утилита нормализации текста
 * @returns Map с нормализованными названиями колонок и их индексами
 */
export declare function getCachedTableStructure(tableRoot: Locator | Page, textUtils: TextUtils): Promise<Map<string, number>>;
/**
 * Определяет индекс колонки по rowKey.
 * @returns индекс колонки, или undefined если колонка не найдена
 */
export declare function getColumnIndex(columnIndexes: Map<string, number>, rowKey: string, textUtils: TextUtils): number | undefined;
/**
 * Проверяет строку на соответствие keyValue.
 * @param row - локатор строки
 * @param keyValue - нормализованное значение для поиска
 * @param keyColumnIndex - индекс колонки или -1 для поиска по всем колонкам
 * @param textUtils - утилита нормализации текста
 * @param loggerContext - опциональный контекст для логов
 */
export declare function checkRowMatch(row: Locator, keyValue: string, keyColumnIndex: number, textUtils: TextUtils, loggerContext?: string): Promise<boolean>;
/**
 * Определяет индекс колонки для проверки ячейки по названию из columnIndexes.
 * @param columnIndexes - закешированная структура таблицы
 * @param columnName - название колонки
 * @param textUtils - утилита нормализации текста
 * @param loggerContext - опциональный контекст для логов
 */
export declare function resolveColumnIndexForVerify(columnIndexes: Map<string, number>, columnName: string, textUtils: TextUtils, _loggerContext?: string): Promise<number | undefined>;
