import type { ExtractedResult, ExtractRule } from './types/ExtractRule';
/**
 * 从 DOM 中提取数据（选择器字符串模式）
 *
 * @param selector - CSS 选择器，用于定位目标元素
 * @param rule - 提取规则
 * @returns 键值对数据对象
 *
 * @example
 * ```typescript
 * const result = extractDOMInfo('.name', { key: 'name' });
 * // result = { name: '张三' }
 * ```
 */
export declare function extractDOMInfo<T extends Omit<ExtractRule, 'selector'>>(selector: string, rule: T): {
    [K in T['key']]: any;
};
/**
 * 从根节点中批量提取 DOM 数据（根元素模式）
 *
 * @param root - 查询的根元素
 * @param rules - 提取规则（单个或数组）
 * @returns 键值对数据对象
 *
 * @example
 * ```typescript
 * const userData = extractDOMInfo(document.body, [
 *   { key: 'name', selector: '.name' },
 *   { key: 'age', selector: '.age', type: 'number' },
 * ]);
 * ```
 */
export declare function extractDOMInfo<T extends ExtractRule>(root: HTMLElement, rules: T | T[]): ExtractedResult<T>;
