/** * Created by user on 2018/2/7/007. * * jsdom-global * global-jsdom */ /// /// export declare const KEYS: string[]; import { DOMWindow } from 'jsdom'; import { IConstructorOptions, IJSDOM, JSDOM } from '../pack'; export declare interface Global extends NodeJS.Global { navigator: { userAgent: string; }; document: IGlobalDocument; window: IGlobalDOMWindow; $jsdom: IGlobalJSDOM; } export declare type IGlobalDOMWindow = DOMWindow & { XMLHttpRequest?: XMLHttpRequest; }; export declare type IGlobalDocument = Document & { destroy?(): any; }; export declare var global: Global; export interface IOptions { /** * jsdom class that can call with new JSDOM */ JSDOM: typeof JSDOM; /** * allow use exists jsdom or create function * @returns {IJSDOM} */ createJSDOM: IJSDOM | { (...argv: any[]): IJSDOM; }; } export declare type IGlobalJSDOM = IJSDOM; export declare function globalJsdom(html?: any, options?: Partial): globalJsdom.IReturn; export declare function cleanup(global: any): void; export declare namespace globalJsdom { interface IReturn { jsdom?: IGlobalJSDOM; window: IGlobalDOMWindow; document: IGlobalDocument; cleanup: () => void; global?: Global; XMLHttpRequest?: XMLHttpRequest; } }