import { ScenarioSummary } from './scenarioSummary';
/**
 * A summary of all scenarios in a Feature.
 * Aggregates all scenarios in the feature to report the total number
 * of passing/failing scenarios within the feature
 */
export declare class FeatureSummary {
    featureName: string;
    featureDescription: string;
    featureKeyword: string;
    passingScenarios: ScenarioSummary[];
    failingScenarios: ScenarioSummary[];
    ambiguousScenarios: ScenarioSummary[];
    pendingScenarios: ScenarioSummary[];
    undefinedScenarios: ScenarioSummary[];
    /** Comma separated string of all tags on the feature */
    tags: string;
    /** The total number of Scenarios that are ambiguously defined for the Feature */
    get ambiguous(): number;
    /** The total number of Scenarios that have failed in this Feature */
    get failed(): number;
    /** The total number of Scenarios that are have no step definition (and thus marked as undefined) */
    get undefined(): number;
    /** The total number of Scenarios that are not implemented (and thus marked as pending) */
    get pending(): number;
    /** The total number of Scenarios that have passed in this Feature */
    get passed(): number;
    /** All Scenarios in this Feature  */
    get total(): number;
    /** Whether the Feature has at least one ambiguous Scenario */
    get hasAmbiguous(): boolean;
    /** Whether the Feature has at least one failed Scenario */
    get hasFailed(): boolean;
    /** Whether the Feature has at least one undefined Scenario */
    get hasUndefined(): boolean;
    /** Whether the Feature has at least one pending Scenario */
    get hasPending(): boolean;
    get hasNoScenarios(): boolean;
    /** Whether the Feature has passed due to all Scenarios passing */
    get isPassed(): boolean;
    /** Updates the Feature summary using information gathered in the Scenario Summary */
    aggregateScenario(scenario: ScenarioSummary): void;
}
