import { StepType } from './Steps';
export declare class Scenario {
    givens: string[];
    whens: string[];
    thens: string[];
    featureTitle: string;
    featureDescription: string[];
    scenarioTitle: string;
    tags: string[];
    tagsToExclude: string[];
    tableHeaders: string[];
    tableRows: {}[];
    constructor(priorState: Scenario | null);
    getAllConditions(): {
        condition: string;
        type: StepType;
    }[];
    prepareCondition(condition: string, index: number): string;
    process(line: string): Scenario;
    isTagExcluded(tag: string): boolean;
    isNewScenario(line: string): boolean;
    unknown(line: string): Scenario;
    feature(line: string): Scenario;
    tag(line: string): Scenario;
    scenario(line: string): Scenario;
    outline(line: string): Scenario;
    given(line: string): Scenario;
    when(line: string): Scenario;
    then(line: string): Scenario;
    and(line: string): Scenario;
    examples(line: string): Scenario;
    table(line: string): Scenario;
    private unexpectedLine(line);
}
export declare class InitializedState extends Scenario {
    constructor(tagsToExclude?: string[]);
    feature(line: string): Scenario;
}
export declare class FeatureState extends Scenario {
    constructor(priorState: Scenario | null);
    unknown(line: string): this;
    tag(line: string): Scenario;
    scenario(line: string): Scenario;
    outline(line: string): Scenario;
}
