UNPKG

openalex-client

Version:

TypeScript SDK for OpenAlex academic database API

28 lines 1.02 kB
import { OpenAlexConfig } from "./types"; export interface FetchResponse<T> { data: T; status: number; statusText: string; headers: Headers; } export declare class OpenAlexClient { private config; private abortController?; constructor(config?: OpenAlexConfig); private buildURL; private makeRequest; private parseJSON; private safeParseJSON; private createHTTPError; private shouldRetry; private handleError; private sleep; get<T>(endpoint: string, params?: Record<string, any>): Promise<FetchResponse<T>>; post<T>(endpoint: string, data?: any, params?: Record<string, any>): Promise<FetchResponse<T>>; put<T>(endpoint: string, data?: any, params?: Record<string, any>): Promise<FetchResponse<T>>; delete<T>(endpoint: string, params?: Record<string, any>): Promise<FetchResponse<T>>; updateConfig(newConfig: Partial<OpenAlexConfig>): void; abort(): void; getConfig(): Required<OpenAlexConfig>; } //# sourceMappingURL=client.d.ts.map