import { Optional, Resource } from "../../common";
import { APIProfileUsefulLabRecommendation, StoreProfileUsefulLabRecommendation } from "./interfaces";
export declare class ProfileUsefulLabRecommendation extends Resource {
    /**
     * The profile the profile-useful-lab-recommendation belongs to.
     */
    profileId: string;
    /**
     * The recommendation the profile-useful-lab-recommendation belongs to.
     */
    recommendationId: string;
    /**
     * The usefulness of profile-useful-lab-recommendation.
     */
    wasUseful: boolean;
    constructor(profileId: string, recommendationId: string, wasUseful: boolean);
    /**
     * The name of the profile-useful-lab-recommendation resource on the API server.
     */
    static get resourceName(): string;
    /**
     * The name of the service containing the profile-useful-lab-recommendation resource.
     */
    static get serviceName(): string;
    /**
     * Convert the profile-useful-lab-recommendation into a JSON serializable object for the API server.
     */
    serializeAPI(): Optional<APIProfileUsefulLabRecommendation, "id">;
    /**
     * Deserialize the data from the API server.
     *
     * @param data The profile-useful-lab-recommendation data from the API server.
     */
    deserializeAPI(data: APIProfileUsefulLabRecommendation): void;
    /**
     * Serialize the profile-useful-lab-recommendation into a format for storing in the Redux store.
     */
    serializeRedux(): StoreProfileUsefulLabRecommendation;
    /**
     * Create a profile-useful-lab-recommendation from the API server data.
     *
     * @param data Data from the api server.
     *
     * @returns The profile-useful-lab-recommendation object.
     */
    static apiFactory(data: APIProfileUsefulLabRecommendation): ProfileUsefulLabRecommendation;
    /**
     * Create a profile-useful-lab-recommendation from the Redux store data.
     *
     * @param data Data from the api server.
     *
     * @returns The profile-useful-lab-recommendation object.
     */
    static reduxFactory(data: StoreProfileUsefulLabRecommendation): ProfileUsefulLabRecommendation;
}
