| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496 | 
							- /**
 
-  * Methods for modifying the DOM structure.
 
-  *
 
-  * @module cheerio/manipulation
 
-  */
 
- import { Node } from 'domhandler';
 
- import type { Cheerio } from '../cheerio';
 
- import type { BasicAcceptedElems, AcceptedElems } from '../types';
 
- /**
 
-  * Create an array of nodes, recursing into arrays and parsing strings if necessary.
 
-  *
 
-  * @private
 
-  * @category Manipulation
 
-  * @param elem - Elements to make an array of.
 
-  * @param clone - Optionally clone nodes.
 
-  * @returns The array of nodes.
 
-  */
 
- export declare function _makeDomArray<T extends Node>(this: Cheerio<T>, elem?: BasicAcceptedElems<Node>, clone?: boolean): Node[];
 
- /**
 
-  * Insert every element in the set of matched elements to the end of the target.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('<li class="plum">Plum</li>').appendTo('#fruits');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //      <li class="plum">Plum</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param target - Element to append elements to.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/appendTo/}
 
-  */
 
- export declare function appendTo<T extends Node>(this: Cheerio<T>, target: BasicAcceptedElems<Node>): Cheerio<T>;
 
- /**
 
-  * Insert every element in the set of matched elements to the beginning of the target.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('<li class="plum">Plum</li>').prependTo('#fruits');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="plum">Plum</li>
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param target - Element to prepend elements to.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/prependTo/}
 
-  */
 
- export declare function prependTo<T extends Node>(this: Cheerio<T>, target: BasicAcceptedElems<Node>): Cheerio<T>;
 
- /**
 
-  * Inserts content as the *last* child of each of the selected elements.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('ul').append('<li class="plum">Plum</li>');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //      <li class="plum">Plum</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @see {@link https://api.jquery.com/append/}
 
-  */
 
- export declare const append: <T extends Node>(this: Cheerio<T>, ...elems: [(this: Node, i: number, html: string) => BasicAcceptedElems<Node>] | BasicAcceptedElems<Node>[]) => Cheerio<T>;
 
- /**
 
-  * Inserts content as the *first* child of each of the selected elements.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('ul').prepend('<li class="plum">Plum</li>');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="plum">Plum</li>
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @see {@link https://api.jquery.com/prepend/}
 
-  */
 
- export declare const prepend: <T extends Node>(this: Cheerio<T>, ...elems: [(this: Node, i: number, html: string) => BasicAcceptedElems<Node>] | BasicAcceptedElems<Node>[]) => Cheerio<T>;
 
- /**
 
-  * The .wrap() function can take any string or object that could be passed to
 
-  * the $() factory function to specify a DOM structure. This structure may be
 
-  * nested several levels deep, but should contain only one inmost element. A
 
-  * copy of this structure will be wrapped around each of the elements in the set
 
-  * of matched elements. This method returns the original set of elements for
 
-  * chaining purposes.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * const redFruit = $('<div class="red-fruit"></div>');
 
-  * $('.apple').wrap(redFruit);
 
-  *
 
-  * //=> <ul id="fruits">
 
-  * //     <div class="red-fruit">
 
-  * //      <li class="apple">Apple</li>
 
-  * //     </div>
 
-  * //     <li class="orange">Orange</li>
 
-  * //     <li class="plum">Plum</li>
 
-  * //   </ul>
 
-  *
 
-  * const healthy = $('<div class="healthy"></div>');
 
-  * $('li').wrap(healthy);
 
-  *
 
-  * //=> <ul id="fruits">
 
-  * //     <div class="healthy">
 
-  * //       <li class="apple">Apple</li>
 
-  * //     </div>
 
-  * //     <div class="healthy">
 
-  * //       <li class="orange">Orange</li>
 
-  * //     </div>
 
-  * //     <div class="healthy">
 
-  * //        <li class="plum">Plum</li>
 
-  * //     </div>
 
-  * //   </ul>
 
-  * ```
 
-  *
 
-  * @param wrapper - The DOM structure to wrap around each element in the selection.
 
-  * @see {@link https://api.jquery.com/wrap/}
 
-  */
 
- export declare const wrap: <T extends Node>(this: Cheerio<T>, wrapper: AcceptedElems<Node>) => Cheerio<T>;
 
- /**
 
-  * The .wrapInner() function can take any string or object that could be passed
 
-  * to the $() factory function to specify a DOM structure. This structure may be
 
-  * nested several levels deep, but should contain only one inmost element. The
 
-  * structure will be wrapped around the content of each of the elements in the
 
-  * set of matched elements.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * const redFruit = $('<div class="red-fruit"></div>');
 
-  * $('.apple').wrapInner(redFruit);
 
-  *
 
-  * //=> <ul id="fruits">
 
-  * //     <li class="apple">
 
-  * //       <div class="red-fruit">Apple</div>
 
-  * //     </li>
 
-  * //     <li class="orange">Orange</li>
 
-  * //     <li class="pear">Pear</li>
 
-  * //   </ul>
 
-  *
 
-  * const healthy = $('<div class="healthy"></div>');
 
-  * $('li').wrapInner(healthy);
 
-  *
 
-  * //=> <ul id="fruits">
 
-  * //     <li class="apple">
 
-  * //       <div class="healthy">Apple</div>
 
-  * //     </li>
 
-  * //     <li class="orange">
 
-  * //       <div class="healthy">Orange</div>
 
-  * //     </li>
 
-  * //     <li class="pear">
 
-  * //       <div class="healthy">Pear</div>
 
-  * //     </li>
 
-  * //   </ul>
 
-  * ```
 
-  *
 
-  * @param wrapper - The DOM structure to wrap around the content of each element
 
-  *   in the selection.
 
-  * @returns The instance itself, for chaining.
 
-  * @see {@link https://api.jquery.com/wrapInner/}
 
-  */
 
- export declare const wrapInner: <T extends Node>(this: Cheerio<T>, wrapper: AcceptedElems<Node>) => Cheerio<T>;
 
- /**
 
-  * The .unwrap() function, removes the parents of the set of matched elements
 
-  * from the DOM, leaving the matched elements in their place.
 
-  *
 
-  * @category Manipulation
 
-  * @example <caption>without selector</caption>
 
-  *
 
-  * ```js
 
-  * const $ = cheerio.load(
 
-  *   '<div id=test>\n  <div><p>Hello</p></div>\n  <div><p>World</p></div>\n</div>'
 
-  * );
 
-  * $('#test p').unwrap();
 
-  *
 
-  * //=> <div id=test>
 
-  * //     <p>Hello</p>
 
-  * //     <p>World</p>
 
-  * //   </div>
 
-  * ```
 
-  *
 
-  * @example <caption>with selector</caption>
 
-  *
 
-  * ```js
 
-  * const $ = cheerio.load(
 
-  *   '<div id=test>\n  <p>Hello</p>\n  <b><p>World</p></b>\n</div>'
 
-  * );
 
-  * $('#test p').unwrap('b');
 
-  *
 
-  * //=> <div id=test>
 
-  * //     <p>Hello</p>
 
-  * //     <p>World</p>
 
-  * //   </div>
 
-  * ```
 
-  *
 
-  * @param selector - A selector to check the parent element against. If an
 
-  *   element's parent does not match the selector, the element won't be unwrapped.
 
-  * @returns The instance itself, for chaining.
 
-  * @see {@link https://api.jquery.com/unwrap/}
 
-  */
 
- export declare function unwrap<T extends Node>(this: Cheerio<T>, selector?: string): Cheerio<T>;
 
- /**
 
-  * The .wrapAll() function can take any string or object that could be passed to
 
-  * the $() function to specify a DOM structure. This structure may be nested
 
-  * several levels deep, but should contain only one inmost element. The
 
-  * structure will be wrapped around all of the elements in the set of matched
 
-  * elements, as a single group.
 
-  *
 
-  * @category Manipulation
 
-  * @example <caption>With markup passed to `wrapAll`</caption>
 
-  *
 
-  * ```js
 
-  * const $ = cheerio.load(
 
-  *   '<div class="container"><div class="inner">First</div><div class="inner">Second</div></div>'
 
-  * );
 
-  * $('.inner').wrapAll("<div class='new'></div>");
 
-  *
 
-  * //=> <div class="container">
 
-  * //     <div class='new'>
 
-  * //       <div class="inner">First</div>
 
-  * //       <div class="inner">Second</div>
 
-  * //     </div>
 
-  * //   </div>
 
-  * ```
 
-  *
 
-  * @example <caption>With an existing cheerio instance</caption>
 
-  *
 
-  * ```js
 
-  * const $ = cheerio.load(
 
-  *   '<span>Span 1</span><strong>Strong</strong><span>Span 2</span>'
 
-  * );
 
-  * const wrap = $('<div><p><em><b></b></em></p></div>');
 
-  * $('span').wrapAll(wrap);
 
-  *
 
-  * //=> <div>
 
-  * //     <p>
 
-  * //       <em>
 
-  * //         <b>
 
-  * //           <span>Span 1</span>
 
-  * //           <span>Span 2</span>
 
-  * //         </b>
 
-  * //       </em>
 
-  * //     </p>
 
-  * //   </div>
 
-  * //   <strong>Strong</strong>
 
-  * ```
 
-  *
 
-  * @param wrapper - The DOM structure to wrap around all matched elements in the
 
-  *   selection.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/wrapAll/}
 
-  */
 
- export declare function wrapAll<T extends Node>(this: Cheerio<T>, wrapper: AcceptedElems<T>): Cheerio<T>;
 
- /**
 
-  * Insert content next to each element in the set of matched elements.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('.apple').after('<li class="plum">Plum</li>');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="plum">Plum</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param content - HTML string, DOM element, array of DOM elements or Cheerio
 
-  *   to insert after each element in the set of matched elements.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/after/}
 
-  */
 
- export declare function after<T extends Node>(this: Cheerio<T>, ...elems: [(this: Node, i: number, html: string) => BasicAcceptedElems<Node>] | BasicAcceptedElems<Node>[]): Cheerio<T>;
 
- /**
 
-  * Insert every element in the set of matched elements after the target.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('<li class="plum">Plum</li>').insertAfter('.apple');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="plum">Plum</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param target - Element to insert elements after.
 
-  * @returns The set of newly inserted elements.
 
-  * @see {@link https://api.jquery.com/insertAfter/}
 
-  */
 
- export declare function insertAfter<T extends Node>(this: Cheerio<T>, target: BasicAcceptedElems<Node>): Cheerio<T>;
 
- /**
 
-  * Insert content previous to each element in the set of matched elements.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('.apple').before('<li class="plum">Plum</li>');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="plum">Plum</li>
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param content - HTML string, DOM element, array of DOM elements or Cheerio
 
-  *   to insert before each element in the set of matched elements.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/before/}
 
-  */
 
- export declare function before<T extends Node>(this: Cheerio<T>, ...elems: [(this: Node, i: number, html: string) => BasicAcceptedElems<Node>] | BasicAcceptedElems<Node>[]): Cheerio<T>;
 
- /**
 
-  * Insert every element in the set of matched elements before the target.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('<li class="plum">Plum</li>').insertBefore('.apple');
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="plum">Plum</li>
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //      <li class="pear">Pear</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param target - Element to insert elements before.
 
-  * @returns The set of newly inserted elements.
 
-  * @see {@link https://api.jquery.com/insertBefore/}
 
-  */
 
- export declare function insertBefore<T extends Node>(this: Cheerio<T>, target: BasicAcceptedElems<Node>): Cheerio<T>;
 
- /**
 
-  * Removes the set of matched elements from the DOM and all their children.
 
-  * `selector` filters the set of matched elements to be removed.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('.pear').remove();
 
-  * $.html();
 
-  * //=>  <ul id="fruits">
 
-  * //      <li class="apple">Apple</li>
 
-  * //      <li class="orange">Orange</li>
 
-  * //    </ul>
 
-  * ```
 
-  *
 
-  * @param selector - Optional selector for elements to remove.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/remove/}
 
-  */
 
- export declare function remove<T extends Node>(this: Cheerio<T>, selector?: string): Cheerio<T>;
 
- /**
 
-  * Replaces matched elements with `content`.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * const plum = $('<li class="plum">Plum</li>');
 
-  * $('.pear').replaceWith(plum);
 
-  * $.html();
 
-  * //=> <ul id="fruits">
 
-  * //     <li class="apple">Apple</li>
 
-  * //     <li class="orange">Orange</li>
 
-  * //     <li class="plum">Plum</li>
 
-  * //   </ul>
 
-  * ```
 
-  *
 
-  * @param content - Replacement for matched elements.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/replaceWith/}
 
-  */
 
- export declare function replaceWith<T extends Node>(this: Cheerio<T>, content: AcceptedElems<Node>): Cheerio<T>;
 
- /**
 
-  * Empties an element, removing all its children.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('ul').empty();
 
-  * $.html();
 
-  * //=>  <ul id="fruits"></ul>
 
-  * ```
 
-  *
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/empty/}
 
-  */
 
- export declare function empty<T extends Node>(this: Cheerio<T>): Cheerio<T>;
 
- /**
 
-  * Gets an HTML content string from the first selected element. If `htmlString`
 
-  * is specified, each selected element's content is replaced by the new content.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('.orange').html();
 
-  * //=> Orange
 
-  *
 
-  * $('#fruits').html('<li class="mango">Mango</li>').html();
 
-  * //=> <li class="mango">Mango</li>
 
-  * ```
 
-  *
 
-  * @param str - If specified used to replace selection's contents.
 
-  * @returns The instance itself.
 
-  * @see {@link https://api.jquery.com/html/}
 
-  */
 
- export declare function html<T extends Node>(this: Cheerio<T>): string | null;
 
- export declare function html<T extends Node>(this: Cheerio<T>, str: string | Cheerio<T>): Cheerio<T>;
 
- /**
 
-  * Turns the collection to a string. Alias for `.html()`.
 
-  *
 
-  * @category Manipulation
 
-  * @returns The rendered document.
 
-  */
 
- export declare function toString<T extends Node>(this: Cheerio<T>): string;
 
- /**
 
-  * Get the combined text contents of each element in the set of matched
 
-  * elements, including their descendants. If `textString` is specified, each
 
-  * selected element's content is replaced by the new text content.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * $('.orange').text();
 
-  * //=> Orange
 
-  *
 
-  * $('ul').text();
 
-  * //=>  Apple
 
-  * //    Orange
 
-  * //    Pear
 
-  * ```
 
-  *
 
-  * @param str - If specified replacement for the selected element's contents.
 
-  * @returns The instance itself when setting text, otherwise the rendered document.
 
-  * @see {@link https://api.jquery.com/text/}
 
-  */
 
- export declare function text<T extends Node>(this: Cheerio<T>): string;
 
- export declare function text<T extends Node>(this: Cheerio<T>, str: string | ((this: Node, i: number, text: string) => string)): Cheerio<T>;
 
- /**
 
-  * Clone the cheerio object.
 
-  *
 
-  * @category Manipulation
 
-  * @example
 
-  *
 
-  * ```js
 
-  * const moreFruit = $('#fruits').clone();
 
-  * ```
 
-  *
 
-  * @returns The cloned object.
 
-  * @see {@link https://api.jquery.com/clone/}
 
-  */
 
- export declare function clone<T extends Node>(this: Cheerio<T>): Cheerio<T>;
 
- //# sourceMappingURL=manipulation.d.ts.map
 
 
  |