import { Any, Nullable } from '@angular-ru/cdk/typings';
import { WebWorkerThread } from './worker-thread';
import * as i0 from "@angular/core";
export declare class WebWorkerThreadService implements WebWorkerThread {
    private readonly workerFunctionToUrlMap;
    private readonly promiseToWorkerMap;
    private static createWorkerUrl;
    run<T, K>(workerFunction: (input: K) => T, data?: K): Promise<T>;
    runUrl(url: string, data?: Any): Promise<Any>;
    terminate<T>(promise: Promise<T>): Promise<T>;
    getWorker(promise: Promise<Any>): Nullable<Worker>;
    private createPromiseForWorker;
    private getOrCreateWorkerUrl;
    private createPromiseCleaner;
    private removePromise;
    static ɵfac: i0.ɵɵFactoryDeclaration<WebWorkerThreadService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<WebWorkerThreadService>;
}
//# sourceMappingURL=worker-thread.service.d.ts.map