UNPKG

2.37 kBTypeScriptView Raw
1/// <reference types="node" />
2import { CheerioOptions, InternalOptions } from './options.js';
3import * as staticMethods from './static.js';
4import { Cheerio } from './cheerio.js';
5import type { AnyNode, Document, Element } from 'domhandler';
6import type { SelectorType, BasicAcceptedElems } from './types.js';
7declare type StaticType = typeof staticMethods;
8/**
9 * A querying function, bound to a document created from the provided markup.
10 *
11 * Also provides several helper methods for dealing with the document as a whole.
12 */
13export interface CheerioAPI extends StaticType {
14 /**
15 * This selector method is the starting point for traversing and manipulating
16 * the document. Like jQuery, it's the primary method for selecting elements
17 * in the document.
18 *
19 * `selector` searches within the `context` scope which searches within the
20 * `root` scope.
21 *
22 * @example
23 *
24 * ```js
25 * $('.apple', '#fruits').text();
26 * //=> Apple
27 *
28 * $('ul .pear').attr('class');
29 * //=> pear
30 *
31 * $('li[class=orange]').html();
32 * //=> Orange
33 * ```
34 *
35 * @param selector - Either a selector to look for within the document, or the
36 * contents of a new Cheerio instance.
37 * @param context - Either a selector to look for within the root, or the
38 * contents of the document to query.
39 * @param root - Optional HTML document string.
40 */
41 <T extends AnyNode, S extends string>(selector?: S | BasicAcceptedElems<T>, context?: BasicAcceptedElems<AnyNode> | null, root?: BasicAcceptedElems<Document>, options?: CheerioOptions): Cheerio<S extends SelectorType ? Element : T>;
42 /**
43 * The root the document was originally loaded with.
44 *
45 * @private
46 */
47 _root: Document;
48 /**
49 * The options the document was originally loaded with.
50 *
51 * @private
52 */
53 _options: InternalOptions;
54 /** Mimic jQuery's prototype alias for plugin authors. */
55 fn: typeof Cheerio.prototype;
56 load: ReturnType<typeof getLoad>;
57}
58export declare function getLoad(parse: typeof Cheerio.prototype._parse, render: (dom: AnyNode | ArrayLike<AnyNode>, options: InternalOptions) => string): (content: string | AnyNode | AnyNode[] | Buffer, options?: CheerioOptions | null, isDocument?: boolean) => CheerioAPI;
59export {};
60//# sourceMappingURL=load.d.ts.map
\No newline at end of file