/// import { Expression } from "@cucumber/cucumber-expressions"; import { Position } from "../helpers/source-map"; import { IStepDefinition } from "../registry"; import { AmbiguousStep, DiagnosticResult, UnmatchedStep } from "./diagnose"; export declare function log(...lines: string[]): void; export declare function red(message: string): string; export declare function yellow(message: string): string; export declare function expressionToString(expression: Expression): string; export declare function strictCompare(a: T, b: T): boolean; export declare function comparePosition(a: Position, b: Position): boolean; export declare function compareStepDefinition(a: IStepDefinition, b: IStepDefinition): boolean; export declare function position(definition: IStepDefinition): Position; export declare function groupToMap(collection: T[], getKeyFn: (el: T) => K, compareKeyFn: (a: K, b: K) => boolean): Map; export declare function mapValues(map: Map, fn: (el: A) => B): Map; export declare function createLineBuffer(fn: (append: (string: string) => void) => void): string[]; export declare function createDefinitionsUsage(projectRoot: string, result: DiagnosticResult): string; export declare function createAmbiguousStep(projectRoot: string, ambiguousStep: AmbiguousStep): string[]; export declare function createUnmatchedStep(projectRoot: string, unmatch: UnmatchedStep): string[]; export declare function execute(options: { argv: string[]; env: NodeJS.ProcessEnv; cwd: string; }): Promise;