declare function uniqueArray(currentData: any, newData: any, comparator: any): any[]; declare function uniqObjArrByKey(currentData: any, key: any): any; declare const timeoutAsync: (timeout: any) => Promise; declare const timeoutAsyncRej: (timeout: any) => Promise; declare function uuidv4(): string; declare function uid(): string; declare class SimpleEventHandler { handler: any; constructor(); addEventListener(evtName: any, fn: any): { unwatch: () => void; }; notify(name: any, value: any): void; } declare function extractJSON(str: any): any; declare function extractJSONV2(str: string): any; declare function promisesReduce(promises: any): any; declare const readFile: (filename: any, encoding?: string) => Promise; declare const writeFile: (path: any, data: any, encoding?: string) => Promise; declare const fileRemove: (name: any) => Promise; declare const fileExists: (name: any) => any; declare const listDir: (path: any) => Promise; declare const rename: (oldPath: any, newPath: any, renameFileIfExist?: boolean) => Promise; declare const mkDir: (path: any) => Promise; declare class Db { db: any; constructor(client: any, dbName: any); add(collection: any, data: any): Promise; find(collection: any, query?: {}): Promise; findOne(collection: any, query?: {}): any; update(collection: any, query: any, update: any): any; deleteOne(collection: any, query: any): any; exist(collection: any, query: any): Promise; } declare class DbHandler { url: any; client: any; dbs: any; constructor(url: any); init(): Promise; getDb(dbName: any): any; } declare function getThrotedRequest(numbers: number, milisecond: number, startFn?: Function): any; declare const logger: any; declare const addTransport: (transport: any) => void; declare class Logger { module: any; constructor(module: any); info(...args: any[]): void; debug(...args: any[]): void; error(...args: any[]): void; warn(...args: any[]): void; log(...args: any[]): void; } declare function newLogger(name: any): Logger; declare function createHash(str: any, algorithm?: string): any; declare const wrappedExec: (cmd: any) => any; declare const req: ({ logger, url, headers, retry, getProxy, timeout, agentTimeout, proxyAgentConfig, checkData }: any) => Promise; interface IConfig { url?: string; timeout?: number; agentTimeout?: number; retry?: number; maxQueueSize?: number; rateLimit?: number; } declare class Crawler { limiter: any; config: any; onDoneFn: any; constructor(config?: IConfig); queue: (config: any) => Promise; onDone: (fn: any) => void; jobs: () => Promise; } declare const convertToCnNumber: (d: any) => string; export { Crawler, Db, DbHandler, SimpleEventHandler, addTransport, convertToCnNumber, createHash, extractJSON, extractJSONV2, fileExists, fileRemove, getThrotedRequest, listDir, logger, mkDir, newLogger, promisesReduce, readFile, rename, req, timeoutAsync, timeoutAsyncRej, uid, uniqObjArrByKey, uniqueArray, uuidv4, wrappedExec, writeFile };