UNPKG

aiwg

Version:

Deployment tool and support utility for AI context. Copies agents, skills, commands, rules, and behaviors into the paths each AI platform reads (Claude Code, Codex, Copilot, Cursor, Warp, OpenClaw, and 6 more) so one source of truth works across 10 platfo

82 lines 2.08 kB
/** * Acquisition service for downloading and validating research papers * * @module research/services/acquisition */ import { ResearchPaper } from '../types.js'; import { UnpaywallClient } from '../clients/unpaywall.js'; import { ArxivClient } from '../clients/arxiv.js'; import { AcquiredSource, FAIRScore } from './types.js'; /** * Configuration for acquisition service */ export interface AcquisitionConfig { /** Unpaywall client */ unpaywall?: UnpaywallClient; /** arXiv client */ arxiv?: ArxivClient; /** Download directory */ downloadDir?: string; /** Timeout for downloads in ms */ downloadTimeout?: number; /** Email for Unpaywall API */ email?: string; } /** * Acquisition service for downloading research papers */ export declare class AcquisitionService { private unpaywall; private downloadDir; private downloadTimeout; constructor(config?: AcquisitionConfig); /** * Acquire a paper (download + metadata extraction) */ acquire(paper: ResearchPaper): Promise<AcquiredSource>; /** * Compute SHA-256 checksum of a file */ computeChecksum(filePath: string): Promise<string>; /** * Assign next REF-XXX identifier */ assignRefId(existingRefs?: string[]): Promise<string>; /** * Validate FAIR compliance */ validateFAIR(source: AcquiredSource): Promise<FAIRScore>; /** * Assess Findable dimension */ private assessFindable; /** * Assess Accessible dimension */ private assessAccessible; /** * Assess Interoperable dimension */ private assessInteroperable; /** * Assess Reusable dimension */ private assessReusable; /** * Download file from URL */ private downloadFile; /** * Generate filename for paper */ private generateFilename; /** * Scan existing REF-XXX identifiers */ private scanExistingRefs; /** * Ensure directory exists */ private ensureDir; } //# sourceMappingURL=acquisition.d.ts.map