import { BaseResource } from "../../common";
import { Color } from "../range-category";
import { APIReportMaxColor, StoreReportMaxColor } from "./interfaces";
export declare class ReportMaxColor extends BaseResource {
    reportId: string;
    maxColor: Color;
    constructor(reportId: string, maxColor: Color);
    static get resourceName(): string;
    static get serviceName(): string;
    /**
     * Convert the report-max-color into a JSON serializable object for the API server.
     */
    serializeAPI(): APIReportMaxColor;
    /**
     * Deserialize the data from the API server.
     *
     * @param data The report-max-color data from the API server.
     */
    deserializeAPI(data: APIReportMaxColor): void;
    /**
     * Serialize the report-max-color into a format for storing in the Redux store.
     */
    serializeRedux(): StoreReportMaxColor;
    /**
     * Create a report-max-color from the API server data.
     *
     * @param data Data from the api server.
     *
     * @returns The report-max-color object.
     */
    static apiFactory(data: APIReportMaxColor): ReportMaxColor;
    /**
     * Create a report-max-color from the Redux store data.
     *
     * @param data Data from the api server.
     *
     * @returns The report-max-color object.
     */
    static reduxFactory(data: StoreReportMaxColor): ReportMaxColor;
    /**
     * Returns list of max colors for lab results related to the specified reports.
     *
     * @param profileId Id of the profile.
     * @param reportIds List of reports ids.
     */
    static getMaxColors(profileId: string, reportIds: string[]): Promise<ReportMaxColor[]>;
}
