import Interceptor from '../network/Interceptor' ; import { Browser } from '../runtime/Browser' ; import { TestObserver } from '../runtime/test-observers' ; import { Step } from '../runtime/Step' ; import { CancellationToken } from '../utils/CancellationToken' ; import { TestSettings } from '../runtime/Settings' ; import { Looper } from '../Looper' ; import { ScreenshotOptions } from '../page/types' ; import { Hook } from '../runtime/StepLifeCycle' ; export interface ITest { settings : TestSettings ; steps : Step [ ] ; hook : Hook ; runningBrowser ? : Browser < Step > | null ; requestInterceptor : Interceptor ; iteration : number ; failed : boolean ; skipping : boolean ; stepNames : string [ ] ; currentURL : string ; cancel ( ) : Promise < void > ; beforeRun ( ) : Promise < void > ; run ( iteration ? ) : Promise < void > ; runWithCancellation ( iteration , cancelToken , looper ) : Promise < void > ; runStep ( testObserver , browser , step , testDataRecord ) : Promise < void > ; doStepDelay ( ) : Promise < void > ; willRunCommand ( testObserver , browser , command , args ) : Promise < void > ; didRunCommand ( testObserver , browser , command , args ) : Promise < void > ; takeScreenshot ( options ? ) : Promise < void > ; fetchScreenshots ( ) : Promise < string [ ] > ; }