@appium/types
Version:
Various type declarations used across Appium
72 lines • 1.7 kB
TypeScript
import type { AppiumLogger } from './logger';
/**
* An object of HTTP headers.
*/
export type HTTPHeaders = Record<string, string | string[] | number | boolean | null>;
/**
* Possible HTTP methods, as stolen from `axios`.
*
* @see https://npm.im/axios
*/
export type HTTPMethod = 'get' | 'GET' | 'delete' | 'DELETE' | 'head' | 'HEAD' | 'options' | 'OPTIONS' | 'post' | 'POST' | 'put' | 'PUT' | 'patch' | 'PATCH' | 'purge' | 'PURGE' | 'link' | 'LINK' | 'unlink' | 'UNLINK';
export interface ProxyResponse<T = any> {
statusCode: number;
headers: HTTPHeaders;
body: HTTPBody<T>;
}
export interface ProxyOptions {
/**
* Downstream URL scheme
*
* @default 'http'
*/
scheme?: string;
/**
* Downstream server hostname
*
* @default 'localhost'
*/
server?: string;
/**
* Downstream server port number
*
* @default 4444
*/
port?: number;
/**
* Downstream server pathname prefix
*
* @default ''
*/
base?: string;
/**
* Upstream server pathname prefix
*
* @default ''
*/
reqBasePath?: string;
/**
* Initial downstream session identifier value
*
* @default null
*/
sessionId?: string | null;
/**
* Downstream server timeout in milliseconds
*
* @default 240000
*/
timeout?: number;
/**
* Proxy logger instance. If unset then a default logger is used
*/
log?: AppiumLogger;
/**
* Whether to apply HTTP Keep-Alive to the downstream server
*
* @default true
*/
keepAlive?: boolean;
}
export type HTTPBody<T = any> = T;
//# sourceMappingURL=http.d.ts.map