///
declare module 'tsutils' {
global {
type CallbackErrorOnly = (error?: Error) => void;
type CallbackTypedErrorOnly = (error?: E) => void;
type CallbackWithTypedError = (error: E, results?: T) => void;
type Callback = (error: Error | null, results?: T) => void;
type Callback2 = (error: Error, result1?: T1, result2?: T2) => void;
type Returns = () => T;
type Resolvable = Returns | T;
type Deferred = {
[P in keyof T]?: Returns | T[P];
};
type PartialOrFunctions = {
[P in keyof T]?: T[P] | ((P: T[P]) => boolean);
};
type ConstructorOf = {
new (): T;
};
type Dictionary = {
[key: string]: T;
};
type SafeDictionary = {
[key in K]: T;
};
type AnyObject = Record;
}
}
declare module 'tunnel-agent' {
import * as https from 'https';
interface Parameters {
proxy: {
host: string | null;
port: string | null;
proxyAuth: string | null;
};
}
const httpsOverHttps: (params: Parameters) => https.Agent;
const httpsOverHttp: (params: Parameters) => https.Agent;
}