///
import { UrlWithStringQuery } from 'url';
import { CertificateCheckResult, ExecuteMonitorParamsDTO, ExecutorCheckResult, Headers, HttpsCheckResult, LatencyCheckResult } from '@meshwatch/types';
import BaseService from '../../shared/services';
import { NodeFetch } from './types';
export declare class MonitorExecutorService extends BaseService {
private readonly certificateCache;
private readonly fetch;
constructor(fetch?: NodeFetch);
static readonly DEFAULT_EXECUTOR_TIMEOUT: number;
executeMonitorCheck: (params: T) => Promise>>>;
latencyCheck({ url, timeout, headers, }: LatencyCheckParams): Promise;
certificateCheck(url: UrlWithStringQuery, timeout?: number): Promise;
httpsCheck(url: UrlWithStringQuery, timeout?: number): Promise;
private parseCertificate;
}
declare type LatencyCheckParams = {
url: UrlWithStringQuery;
timeout?: number;
headers?: Headers;
};
declare const monitorExecutorService: MonitorExecutorService;
export default monitorExecutorService;