import { BaseService } from "./base";
import { Work, QueryParams, OpenAlexResponse } from "../types";
export declare class WorksService extends BaseService<Work> {
    protected readonly endpoint = "works";
    /**
     * Get works cited by a specific work
     */
    getCitedBy(workId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works that cite a specific work
     */
    getCitations(workId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works related to a specific work
     */
    getRelated(workId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Search works by DOI
     */
    getByDoi(doi: string, params?: Pick<QueryParams, "select" | "mailto">): Promise<Work>;
    /**
     * Search works by multiple DOIs
     */
    getByDois(dois: string[], params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works by author
     */
    getByAuthor(authorId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works by institution
     */
    getByInstitution(institutionId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works by source (journal/venue)
     */
    getBySource(sourceId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works by concept
     */
    getByConcept(conceptId: string, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get open access works
     */
    getOpenAccess(params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get works published in a specific year range
     */
    getByYearRange(startYear: number, endYear: number, params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get highly cited works (top percentile)
     */
    getHighlyCited(params?: QueryParams): Promise<OpenAlexResponse<Work>>;
    /**
     * Get recent works
     */
    getRecent(params?: QueryParams): Promise<OpenAlexResponse<Work>>;
}
//# sourceMappingURL=works.d.ts.map