import { ExecuteHook, OnRequestHook, OnResponseHook, OnStreaming, ResponseLoggingHook } from './hooks'; import { HttpFile } from './httpFile'; import { Request } from './httpRequest'; import { HttpResponse } from './httpResponse'; import { HttpSymbol } from './httpSymbol'; import { ProcessorContext } from './processorContext'; import { TestResult } from './testResult'; import { Variables } from './variables'; export type PartialProperty = Omit, TProperty2> & Partial; export interface RequestClientHooks { onRequest: OnRequestHook; onStreaming: OnStreaming; onResponse: OnResponseHook; responseLogging: ResponseLoggingHook; } export interface HttpRegion { readonly id: string; request?: Request; response?: HttpResponse; symbol: HttpSymbol; metaData: Record; testResults?: Array; responseRefs?: Array; variablesPerEnv: Record; readonly hooks: RequestClientHooks & { execute: ExecuteHook; }; isGlobal(): boolean; clone(httpFile?: HttpFile): HttpRegion; execute(context: PartialProperty, isMainContext?: boolean): Promise; }