export class Sandbox {
    static getWindowOwnPropertyNames(): string[];
    static debugger(isee: any): void;
    constructor(white?: boolean, properties?: string[], setting?: string);
    windowOwnPropertyNames: any;
    sandbox: HTMLIFrameElement;
    white: boolean;
    shadow(): Sandbox;
    window: Window;
    content: Document;
    document: Document;
    shadowWindow: any;
    getProtoProperty(object: any): any;
    delProtoProperty(object: any, name: any): any;
    set(allow: any): void;
    reset(allow: any): Sandbox;
    open(): Sandbox;
    write(context?: string): Sandbox;
    close(): Sandbox;
    enter(): void;
    exit(): void;
}
export class ShadowFunction {
    static debugger(isee: any): void;
    static assignContextProperties(names?: string[]): void;
    constructor(code: any, setting: any, log: any);
    sandbox: Sandbox;
    shadowWindow: any;
    ShadowFunction: any;
    shadowHasOwnProperty: any;
    ShadowObject: any;
    ShadowProxy: any;
    allowProtoProperties: {
        Node: string[];
        Element: string[];
        HTMLElement: any[];
        HTMLBodyElement: any[];
        HTMLDivElement: any[];
        HTMLUListElement: any[];
        HTMLLIElement: any[];
        HTMLVideoElement: any[];
        HTMLAudioElement: any[];
        HTMLSelectElement: any[];
        HTMLOptionElement: any[];
        HTMLInputElement: any[];
        HTMLSpanElement: any[];
        HTMLDListElement: any[];
        HTMLFontElement: any[];
        HTMLHeadingElement: any[];
        HTMLParagraphElement: any[];
        HTMLDocument: string[];
        Navigator: string[];
        UserActivation: string[];
        Promise: string[];
        Touch: string[];
        TouchEvent: string[];
        MouseEvent: string[];
    };
    tracker: (e: any) => void | "no";
    log(e: any): void;
    freezeShadowProto(object: any): void;
    getAllowProperties(object: any): any;
    getAllowProtoProperties(object: any): any;
    setAllowProtoProperties(allowProperties: any): any;
    isElementObject(value: any): boolean;
    isFixedObject(value: any): boolean;
    safeGetter(origin: any, target: any, name: any): any;
    safeSetter(origin: any, target: any, name: any, value: any): boolean;
    puppet(origin: any): any;
    proxy(target: any, self?: any): any;
    safeReturnFunction(fn: any, origin: any): any;
    preShadowFunction(scriptStr: any): any;
    shadowFunction: any;
    runShadowFunction(origin: any): {
        run: any;
        proxy: any;
        sandbox: Sandbox;
    };
}
export class ShadowDocument {
    constructor(root: any, template: any, setting?: {}[], log: any);
    constructorId: number;
    o: number;
    allowTagName: {
        'DIV': boolean;
        'B': boolean;
        'P': boolean;
        'H1': boolean;
        'H2': boolean;
        'H3': boolean;
        'H4': boolean;
        'H5': boolean;
        'DL': boolean;
        'DT': boolean;
        'DD': boolean;
        'EM': boolean;
        'HR': boolean;
        'UL': boolean;
        'LI': boolean;
        'OL': boolean;
        'TD': boolean;
        'TH': boolean;
        'TR': boolean;
        'TT': boolean;
        'NAV': boolean;
        'SUP': boolean;
        'SUB': boolean;
        'SPAN': boolean;
        'FONT': boolean;
        'BR': boolean;
        'STYLE': boolean;
        'SMALL': boolean;
        'LABEL': boolean;
        'TABLE': boolean;
        'TBODY': boolean;
        'THEAD': boolean;
        'TFOOT': boolean;
        'BUTTON': boolean;
        'FOOTER': boolean;
        'HEADER': boolean;
        'STRONG': boolean;
    };
    tracker: (e: any) => void;
    getRealElement: (element: any) => any;
    TREE: {
        0: any;
    };
    SHADOWTREE: {};
    log: any;
    shadowFunction: any;
    sandbox: any;
    shadowWindow: any;
    shadowDocumentBody: any;
    ShadowObject: any;
    ShadowNode: any;
    ShadowElement: any;
    shadowGetAttribute: any;
    empowerment(): {
        getShadowElement: (element: any) => any;
        getShadowElementProps: (element: any, propsName: any) => any;
        getComputedStyle: (element: any, pseudoElt?: any) => CSSStyleDeclaration;
        setShadowEventListener: (listener: any, type: any, callback: any, opt: any) => void;
    };
    isElementObject(value: any): boolean;
    createShadowEventObject(originEvent: any): {};
    injection(): string;
    setShadowObserver(): void;
    write(template: any): void;
    uuid(node: any, uuid: any): any;
    iterator(nodes: any): any;
    walker(nodes: any, target: any, del?: boolean): void;
    getParentId(node: any, target: any): any;
    createElement(node: any, target: any): void;
    removeElement(node: any, target: any): void;
    createTextNode(node: any, target: any): void;
    removeTextNode(node: any, target: any): void;
    createEvent(node: any): void;
    setAttribute(name: any, node: any): void;
    setCharacterData(node: any): void;
}
export class WorkerFunction {
    constructor(code: any);
}
export class BlackDocument {
    constructor(template: any, root?: HTMLElement, csp?: string, type: any);
    root: HTMLElement;
    hashSource(): string;
    injectRequestParentAction(csp: any): string;
    create(template: any, csp: any, type?: string): void;
    sandbox: HTMLIFrameElement;
    run(methods: any): void;
    methods: any;
}
export class Strongbox {
    constructor(insurance: any, log: any);
    password: any;
    tracker: (e: any) => void;
    log: any;
    lock(): void;
}
export class TryAgain {
    constructor(task: any, options: any);
    task: any;
    polls: any;
    timeout: any;
    timeoutId: NodeJS.Timeout;
    try(): boolean;
    stop(): void;
    wait(time: any): void;
    over(): void;
}
export function getShadowModule(url: any, options?: {
    receiver: string;
    timeout: number;
    dataType: string;
}): Promise<any>;
export function loadShadowScript(libs: any, path?: string): Promise<any>;
export const safeEval: any;
export function jsonp(options: any): Promise<any>;
export function csp(desc: any): void;
