react-mutation-mapper
Version:
Generic Mutation Mapper
47 lines (46 loc) • 3.65 kB
TypeScript
import _ from 'lodash';
import { AggregatedHotspots, EvidenceType, IOncoKbData, Mutation, UniprotFeature } from 'cbioportal-utils';
import { CancerGene, OncoKbAPI, OncoKBInfo } from 'oncokb-ts-api-client';
import { EnsemblFilter, EnsemblTranscript, GenomeNexusAPI, GenomeNexusAPIInternal, Hotspot, PfamDomain, PostTranslationalModification, VariantAnnotation, MyVariantInfo } from 'genome-nexus-ts-api-client';
import { MutationMapperDataFetcher } from '../model/MutationMapperDataFetcher';
export interface MutationMapperDataFetcherConfig {
myGeneUrlTemplate?: string;
uniprotIdUrlTemplate?: string;
mutationAlignerUrlTemplate?: string;
cachePostMethodsOnClients?: boolean;
apiCacheLimit?: number;
genomeNexusUrl?: string;
oncoKbUrl?: string;
}
export declare class DefaultMutationMapperDataFetcher implements MutationMapperDataFetcher {
private config;
oncoKbClient: OncoKbAPI;
genomeNexusClient: GenomeNexusAPI;
genomeNexusInternalClient: GenomeNexusAPIInternal;
constructor(config: MutationMapperDataFetcherConfig, genomeNexusClient?: Partial<GenomeNexusAPI>, genomeNexusInternalClient?: Partial<GenomeNexusAPIInternal>, oncoKbClient?: Partial<OncoKbAPI>);
fetchSwissProtAccession(entrezGeneId: number): Promise<any>;
fetchUniprotId(swissProtAccession: string): Promise<string>;
fetchPfamDomainData(pfamAccessions: string[], client?: GenomeNexusAPI): Promise<PfamDomain[]>;
fetchVariantAnnotationsIndexedByGenomicLocation(mutations: Partial<Mutation>[], fields?: string[], isoformOverrideSource?: string, client?: GenomeNexusAPI): Promise<{
[genomicLocation: string]: VariantAnnotation;
}>;
fetchMyVariantInfoAnnotationsIndexedByGenomicLocation(mutations: Partial<Mutation>[], isoformOverrideSource?: string, client?: GenomeNexusAPI): Promise<{
[genomicLocation: string]: MyVariantInfo;
}>;
fetchCanonicalTranscriptWithFallback(hugoSymbol: string, isoformOverrideSource: string, allTranscripts: EnsemblTranscript[] | undefined, client?: GenomeNexusAPI): Promise<EnsemblTranscript | undefined>;
fetchCanonicalTranscript(hugoSymbol: string, isoformOverrideSource: string, client?: GenomeNexusAPI): Promise<EnsemblTranscript>;
fetchEnsemblTranscriptsByEnsemblFilter(ensemblFilter: Partial<EnsemblFilter>, client?: GenomeNexusAPI): Promise<EnsemblTranscript[] | undefined>;
fetchPtmData(ensemblId: string, client?: GenomeNexusAPI): Promise<PostTranslationalModification[]>;
fetchUniprotFeatures(swissProtId: string, category: string[], client?: GenomeNexusAPI): Promise<UniprotFeature[]>;
fetchCancerHotspotData(ensemblId: string, client?: GenomeNexusAPIInternal): Promise<Hotspot[]>;
fetchAggregatedHotspotsData(mutations: Mutation[], client?: GenomeNexusAPIInternal): Promise<AggregatedHotspots[]>;
fetchOncoKbCancerGenes(client?: OncoKbAPI): Promise<CancerGene[]>;
fetchOncoKbInfo(client?: OncoKbAPI): Promise<OncoKBInfo>;
fetchOncoKbData(mutations: Mutation[], annotatedGenes: {
[entrezGeneId: number]: boolean;
} | Error, getTumorType: (mutation: Mutation) => string, getEntrezGeneId: (mutation: Mutation) => number, evidenceTypes?: EvidenceType[], client?: OncoKbAPI): Promise<IOncoKbData | Error>;
queryOncoKbData(queryVariants: Mutation[], getTumorType: (mutation: Mutation) => string, getEntrezGeneId: (mutation: Mutation) => number, client?: OncoKbAPI, evidenceTypes?: EvidenceType[]): Promise<{
indicatorMap: _.Dictionary<import("oncokb-ts-api-client").IndicatorQueryResp>;
}>;
}
export default DefaultMutationMapperDataFetcher;