httpyac
Version:
HTTP/REST CLI Client for *.http files
47 lines (46 loc) • 1.81 kB
TypeScript
import { ClientCertificateOptions } from './clientCertificateOptions';
import { HttpyacHooksApi } from './httpHooksApi';
import { LogLevel } from './logHandler';
import { RequestLoggerFactoryOptions } from './requestLoggerFactoryOptions';
import { Variables } from './variables';
export interface EnvironmentConfig {
cookieJarEnabled?: boolean | {
allowSpecialUseDomain?: boolean | undefined;
looseMode?: boolean | undefined;
rejectPublicSuffixes?: boolean | undefined;
prefixSecurity?: string | undefined;
};
log?: {
/** log level of outputs */
level?: LogLevel;
/** enable ansi color support */
supportAnsiColors?: boolean;
/** logger options for cli */
options?: RequestLoggerFactoryOptions;
};
request?: ConfigRequest;
proxy?: string;
proxyExcludeList?: Array<string>;
/** count auf characters before pretty print is ommited (default: 1000000)*/
requestPrettyPrintBodyMaxSize?: number;
requestBodyInjectVariablesExtensions?: Array<string>;
clientCertificates?: Record<string, ClientCertificateOptions>;
/** default request headers if not overwritten */
defaultHeaders?: Record<string, string>;
/** environment variables */
environments?: Record<string, Variables>;
/** relative or absolute path to env dir */
envDirName?: string;
useRegionScopedVariables?: boolean;
/** hookApi for extending httpyac */
configureHooks?: ConfigureHooks;
/** configuration for plugins */
plugins?: Record<string, unknown>;
}
export interface ConfigRequest {
timeout?: number;
followRedirects?: boolean;
rejectUnauthorized?: boolean;
[key: string]: unknown;
}
export type ConfigureHooks = (api: HttpyacHooksApi) => void | Promise<void>;