import { Resource } from "../../common";
import { APIRecommendationTrait, StoreRecommendationTrait } from "./interfaces";
export declare class RecommendationTrait extends Resource {
    /**
     * The recommendation_trait's associated trait.
     */
    traitId: string;
    /**
     * The recommendation_trait's associated recommendation.
     */
    recommendationId: string;
    /**
     * The recommendation_trait's effect.
     */
    effect: number;
    /**
     * The recommendation_trait's evidence.
     */
    evidence: number;
    /**
     * The recommendation_trait's initialScore.
     */
    initialScore: number;
    /**
     * Heading for the section describing the effect of the recommendation on the trait
     */
    effectHeading: string;
    /**
     * The recommendation_trait's generalDescription.
     */
    generalDescription: string;
    constructor(traitId: string, recommendationId: string, effect: number, evidence: number, initialScore: number, effectHeading: string, generalDescription: string);
    /**
     * The name of the RecommendationTrait resource on the API server.
     */
    static get resourceName(): string;
    /**
     * The name of the service containing the RecommendationTrait resource.
     */
    static get serviceName(): string;
    /**
     * Convert the recommendation trait into a JSON serializable object
     * for the API server.
     */
    serializeAPI(): APIRecommendationTrait;
    /**
     * Deserialize the data from the API server.
     *
     * @param data The recommendation trait data from the API server.
     */
    deserializeAPI(data: APIRecommendationTrait): void;
    /**
     * Serialize the recommendation trait into a format for storing
     * in the Redux store.
     */
    serializeRedux(): StoreRecommendationTrait;
    /**
     * Create a RecommendationTrait from the API server data.
     *
     * @param data Data from the api server.
     *
     * @returns The RecommendationTrait object.
     */
    static apiFactory(data: APIRecommendationTrait): RecommendationTrait;
    /**
     * Create a RecommendationTrait from the Redux store data.
     *
     * @param data Data from the api server.
     *
     * @returns The RecommendationTrait object.
     */
    static reduxFactory(data: StoreRecommendationTrait): RecommendationTrait;
}
