import { TestTypeCommon } from '../../playwright/types'; import { AnyFunction, ProvidedStepOptions, StepPattern } from '../stepDefinition'; export type StepDefinitionArgs = | [pattern: StepPattern, fn: StepFn] | [pattern: StepPattern, providedOptions: ProvidedStepOptions, fn: StepFn]; export function parseStepDefinitionArgs( args: StepDefinitionArgs, ) { const [pattern, providedOptions, fn] = args.length === 3 ? args : [args[0], {}, args[1]]; return { pattern, providedOptions, fn }; } export type StepConstructorOptions = { worldFixture?: string; customTest?: TestTypeCommon; defaultTags?: string; };