import { GherkinCommentHandler } from "../common"; import { GherkinFeature } from "../gherkinObject"; import { Comment } from "./comment"; import { Element } from "./element"; import { Rule } from "./rule"; import { Tag } from "./tag"; import { UniqueObject } from "./uniqueObject"; /** * Model for Feature */ export declare class Feature extends UniqueObject { static parse(obj: GherkinFeature, comments?: GherkinCommentHandler): Feature; /** Language of the Feature */ language: string; /** Keyword of the Feature */ keyword: "Feature" | "Business Need" | "Ability" | string; /** Name of the Feature */ name: string; /** Descrition of the Feature */ description: string; /** Elements of the Feature */ elements: (Element | Rule)[]; /** Tags of the Feature */ tags: Tag[]; /** Comment before all tag */ tagComment: Comment; /** Comment before the Feature */ precedingComment: Comment; /** Comment below the description of the Feature */ descriptionComment: Comment; constructor(keyword: string, name: string, description: string, language?: string); clone(): Feature; replace(key: RegExp | string, value: string): void; }