import { type ParameterTypeRegistry } from '@cucumber/cucumber-expressions'; import type { PickleStep } from '@cucumber/messages'; import { KeywordType } from '../helpers'; import type { ISnippetSnytax } from './snippet_syntax'; export interface INewStepDefinitionSnippetBuilderOptions { snippetSyntax: ISnippetSnytax; parameterTypeRegistry: ParameterTypeRegistry; } export interface IBuildRequest { keywordType: KeywordType; pickleStep: PickleStep; } export default class StepDefinitionSnippetBuilder { private readonly snippetSyntax; private readonly cucumberExpressionGenerator; constructor({ snippetSyntax, parameterTypeRegistry }: INewStepDefinitionSnippetBuilderOptions); build({ keywordType, pickleStep }: IBuildRequest): string; buildMultiple({ keywordType, pickleStep }: IBuildRequest): string[]; getFunctionName(keywordType: KeywordType): string; getStepParameterNames(step: PickleStep): string[]; }