import { Resource } from "../../common";
import { APIOpenTargetSnp, AssociatedGenes, StoreOpenTargetSnp, StoreSnpGeneSummary, StoreSnpTrait } from "./interfaces";
export declare class OpenTargetSnp extends Resource {
    rsid: string;
    chrom: string;
    pos: number;
    ref: string;
    alts: string[];
    variantIds: string[];
    frequencyTables: Record<string, number>[];
    genes: StoreSnpGeneSummary[];
    traits: StoreSnpTrait[];
    constructor(rsid: string, chrom: string, pos: number, ref: string, alts: string[], variantIds: string[], frequencyTables: Record<string, number>[], genes: StoreSnpGeneSummary[], traits: StoreSnpTrait[]);
    static get resourceName(): string;
    static get serviceName(): string;
    serializeAPI(): APIOpenTargetSnp;
    deserializeAPI(data: APIOpenTargetSnp): void;
    serializeRedux(): StoreOpenTargetSnp;
    static apiFactory(data: APIOpenTargetSnp): OpenTargetSnp;
    static reduxFactory(data: StoreOpenTargetSnp): OpenTargetSnp;
    /**
     * Returns rsid to associated genes
     *
     * @param rsids
     */
    static associatedGenes(rsids: string[]): Promise<AssociatedGenes>;
}
