@sickrin/openalex-sdk
Version:
A TypeScript SDK for interacting with the OpenAlex API - forked and enhanced version
27 lines (26 loc) • 1.49 kB
TypeScript
import { Author, Authors, AuthorsSearchParameters, ExternalIdsAuthor } from './types/author';
import { ExternalIdsInstitution, Institutions, SearchParametersInstitution } from './types/institution';
import { ExternalIdsSource, SearchParametersSource, Sources } from './types/source';
import { SearchParametersTopics, Topic, Topics } from './types/topic';
import { ExternalIdsWork, SearchParameters, Work, Works } from './types/work';
export default class OpenAlex {
email: string | null;
apiKey: string | null;
url: string;
maxRetries: number;
retryDelay: number;
retryHttpCodes: number[];
constructor(email?: string | null, apiKey?: string | null);
work(id: string, externalIds?: ExternalIdsWork): Promise<Work>;
works(searchParameters?: SearchParameters): Promise<Works>;
autoCompleteWorks(search: string): Promise<Works>;
ngram(id: string): Promise<Work>;
author(id: string, externalIds?: ExternalIdsAuthor): Promise<Author>;
authors(searchParameters?: AuthorsSearchParameters): Promise<Authors>;
source(id: string, externalIds?: ExternalIdsSource): Promise<Author>;
sources(searchParameters?: SearchParametersSource): Promise<Sources>;
institution(id: string, externalIds?: ExternalIdsInstitution): Promise<Author>;
institutions(searchParameters?: SearchParametersInstitution): Promise<Institutions>;
topic(id: string): Promise<Topic>;
topics(searchParameters?: SearchParametersTopics): Promise<Topics>;
}