import { ReducingMethod } from './reducers/ReducingMethod';
import { SortingMethod } from './sorting/SortingMethod';
import { Status } from '../types/report.type';
export declare class UserConfigurationResources {
    readonly customJsFiles: string[];
    readonly customCssFiles: string[];
    constructor(userConfig?: Partial<UserConfigurationResources>);
}
export declare abstract class UserConfiguration {
    readonly reportDir: string;
    readonly buildNumber: string;
    readonly resources: UserConfigurationResources;
    readonly reducingMethods: ReducingMethod[];
    readonly qualifiers: Record<string, string>;
    readonly classificationFiles: string[];
    readonly notFailingStatuses: Status[];
    readonly sortingMethod: SortingMethod;
    readonly presentationModes: PresentationMode[];
    readonly projectName: string;
    readonly classifications: Record<string, string>;
    trendsFile?: string;
    constructor(userConfig?: Partial<UserConfiguration>);
}
export declare class ConfigurationResources extends UserConfigurationResources {
    readonly sourceDir: string;
    constructor(userConfig?: Partial<UserConfigurationResources>);
}
export declare class Configuration extends UserConfiguration {
    static readonly HOME_PAGE: string;
    static readonly embeddingsDir: string;
    static readonly FILE_EXTENSION_PATTERN: RegExp;
    static readonly UNKNOWN_FILE_EXTENSION = "unknown";
    readonly resources: ConfigurationResources;
    private pTrendsLimit;
    constructor(userConfig?: Partial<UserConfiguration>);
    get isTrendsAvailable(): boolean;
    get isTrendsStatsFile(): boolean;
    get trendsLimit(): number;
    setTrends(file: string, limit: number): void;
    setTrendsStatsFile(file: string): void;
    containsPresentationMode(mode: PresentationMode): boolean;
    containsReducingMethod(method: ReducingMethod): boolean;
}
export type PresentationMode = 
/**
 * Defines additional menu buttons that enables integration with Jenkins.
 */
'RUN_WITH_JENKINS' | 
/**
 * Expands all scenarios by default.
 */
'EXPAND_ALL_STEPS' | 
/**
 * Add "target" column to the report, when running the same tests many times.
 * Value of this column is same as JSON report file name.
 */
'PARALLEL_TESTING';
