import { APISnpTableRow, StoreSnpTableRow } from "./interfaces";
export declare class SnpTableRow {
    /**
     * Snp rsid.
     */
    snp: string;
    /**
     * Client's genotype.
     */
    genotype: string | null;
    /**
     * Snp frequency.
     */
    frequency: number;
    /**
     * Snp risk alleles.
     */
    riskAlleles: string[];
    /**
     * Snp importance.
     */
    importance: number;
    constructor(snp: string, genotype: string | null, frequency: number, riskAlleles: string[], importance: number);
    get id(): string;
    /**
     * Convert the snp-table-row into a JSON serializable object for the API server.
     */
    serializeAPI(): APISnpTableRow;
    /**
     * Deserialize the data from the API server.
     *
     * @param data The snp-table-row data from the API server.
     */
    deserializeAPI(data: APISnpTableRow): void;
    /**
     * Serialize the snp-table-row into a format for storing in the Redux store.
     */
    serializeRedux(): StoreSnpTableRow;
    /**
     * Create a snp-table-row from the API server data.
     *
     * @param data Data from the api server.
     *
     * @returns The snp-table-row object.
     */
    static apiFactory(data: APISnpTableRow): SnpTableRow;
    /**
     * Create a snp-table-row from the Redux store data.
     *
     * @param data Data from the api server.
     *
     * @returns The snp-table-row object.
     */
    static reduxFactory(data: StoreSnpTableRow): SnpTableRow;
}
