import { ServiceNowInstance } from "../ServiceNowInstance.js"; import { AttachmentRecord, UploadAttachmentOptions, ListAttachmentsOptions } from './AttachmentModels.js'; /** * AttachmentManager provides methods for uploading, listing, and retrieving * attachments on ServiceNow records via the Attachment API. */ export declare class AttachmentManager { static readonly ATTACHMENT_API_PATH = "/api/now/attachment"; static readonly ATTACHMENT_FILE_API_PATH = "/api/now/attachment/file"; static readonly ATTACHMENT_TABLE = "sys_attachment"; private _logger; private _req; private _tableAPI; private _instance; constructor(instance: ServiceNowInstance); /** * Upload an attachment to a ServiceNow record. * POST to /api/now/attachment/file with multipart/form-data headers * and query params for table_name, table_sys_id, and file_name. */ uploadAttachment(options: UploadAttachmentOptions): Promise; /** * List attachments for a specific record. * Uses TableAPIRequest.get on sys_attachment with encoded query. */ listAttachments(options: ListAttachmentsOptions): Promise; /** * Get a single attachment record by sys_id. * Uses TableAPIRequest.get on sys_attachment with sys_id filter. */ getAttachment(sysId: string): Promise; }