@yiero/gmlib
Version:
GM Lib for Tampermonkey/ScriptCat
34 lines (33 loc) • 1.05 kB
TypeScript
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>;