import { IAyakashiInstance, AyakashiPage } from "./prelude"; import { IMetaActions } from "./actions/meta"; import { IJoinActions } from "./actions/join"; import { ISelectActions } from "./actions/select"; import { IExtractActions } from "./actions/extract"; import { IRetryActions } from "./actions/retry"; import { IRequestActions } from "./actions/request"; import { IYieldActions } from "./actions/yield"; import { ICookieActions } from "./actions/cookies"; import { JSDOM } from "jsdom"; declare type Omit = Pick>; declare type MetaActionsNoPause = Omit; declare type MetaActionsNoRegisterAction = Omit; export interface IRenderlessAyakashiInstance extends IRetryActions, IRequestActions, IYieldActions, IExtractActions, ISelectActions, MetaActionsNoRegisterAction, ICookieActions, IJoinActions { propRefs: IAyakashiInstance["propRefs"]; extractors: IAyakashiInstance["extractors"]; page: JSDOM; /** * Fetches and loads a page in the renderlessScraper's context. * A timeout can be specified (in ms) for slow pages (default 10s). * Use a timeout of 0 to disable the timeout. * ```js await ayakashi.load("https://ayakashi-io.github.io"); ``` */ load: (this: IRenderlessAyakashiInstance, url: string, timeout?: number) => Promise; /** * Loads an html fragment in the renderlessScraper's context. * ```js await ayakashi.loadHtml("hi"); ``` */ loadHtml: (this: IRenderlessAyakashiInstance, html: string) => Promise; __attachDOM: (this: IRenderlessAyakashiInstance, dom: JSDOM) => Promise; __connection: { release: () => Promise; }; } declare module JSDOM { interface DOMWindow { ayakashi: AyakashiPage; } } export declare function renderlessPrelude(): Promise; export {};