import { AttributeInfo } from '../internal/attributeInfo';
import { ModelInterface } from './modelInterface';
import { CsvDataLoadOptions } from './csvDataLoadOptions';
import { JsonDataLoadOptions } from './jsonDataLoadOptions';
import { ReportBuildOptions } from './reportBuildOptions';
import { XmlDataLoadOptions } from './xmlDataLoadOptions';
export declare const importsMapReportEngineSettings: {
    CsvDataLoadOptions: typeof CsvDataLoadOptions;
    JsonDataLoadOptions: typeof JsonDataLoadOptions;
    ReportBuildOptions: typeof ReportBuildOptions;
    XmlDataLoadOptions: typeof XmlDataLoadOptions;
};
/**
 * Report engine settings.
 */
export declare class ReportEngineSettings implements ModelInterface {
    /**
     * Attribute type map
     */
    static attributeTypeMap: Array<AttributeInfo>;
    /**
     * Returns attribute type map
     */
    static getAttributeTypeMap(): AttributeInfo[];
    /**
     * Gets or sets the options for parsing CSV data.
     */
    csvDataLoadOptions: CsvDataLoadOptions;
    /**
     * Gets or sets the name to reference the data source object in the template.
     */
    dataSourceName: string;
    /**
     * Gets or sets type of datasource.
     */
    dataSourceType: ReportEngineSettings.DataSourceTypeEnum;
    /**
     * Gets or sets the options for parsing JSON data.
     */
    jsonDataLoadOptions: JsonDataLoadOptions;
    /**
     * Gets or sets type of options to build report.
     */
    reportBuildOptions: Array<ReportBuildOptions>;
    /**
     * Gets or sets the options for parsing XML data.
     */
    xmlDataLoadOptions: XmlDataLoadOptions;
    constructor(init?: Partial<ReportEngineSettings>);
    collectFilesContent(_resultFilesContent: Array<any>): void;
    validate(): void;
}
/**
 * Enums for ReportEngineSettings
 */
export declare namespace ReportEngineSettings {
    enum DataSourceTypeEnum {
        Xml,
        Json,
        Csv
    }
}
