/** * Fulltext attach operation * * Uses attachments system internally with role='fulltext'. */ import type { ILibrary, IdentifierType } from "../../../core/library-interface.js"; import { type FulltextFormat } from "../fulltext-adapter/index.js"; /** * Fulltext type (matches existing FulltextType for backward compatibility) */ export type FulltextType = FulltextFormat; /** * Options for fulltextAttach operation */ export interface FulltextAttachOptions { /** Reference identifier (id or uuid) */ identifier: string; /** Path to the file to attach */ filePath?: string | undefined; /** Explicit file type (pdf or markdown) */ type?: FulltextType | undefined; /** Move file instead of copy */ move?: boolean | undefined; /** Force overwrite existing file */ force?: boolean | undefined; /** Identifier type: 'id' (default), 'uuid', 'doi', 'pmid', or 'isbn' */ idType?: IdentifierType | undefined; /** Directory for attachments (replaces fulltextDirectory) */ fulltextDirectory: string; /** Content from stdin */ stdinContent?: Buffer | undefined; } /** * Result of fulltextAttach operation */ export interface FulltextAttachResult { success: boolean; filename?: string | undefined; type?: FulltextType | undefined; overwritten?: boolean | undefined; existingFile?: string | undefined; requiresConfirmation?: boolean | undefined; error?: string | undefined; } /** * Attach a fulltext file to a reference. * * @param library - The library containing the reference * @param options - Attach options * @returns Result of the attach operation */ export declare function fulltextAttach(library: ILibrary, options: FulltextAttachOptions): Promise; //# sourceMappingURL=attach.d.ts.map