/// <reference types="node" resolution-mode="require"/>
/// <reference types="node" resolution-mode="require"/>
import { GuruAttachment, GuruCard, GuruSearchParams, GuruSearchResponse } from '../types/index.js';
/**
 * Guru API Service for interacting with Guru's REST API
 */
export declare class GuruService {
    private readonly baseUrl;
    private readonly fileBaseUrl;
    /**
 * Get Guru API credentials from environment variables
 * Expects GURU_TOKEN in format "username:token" or "collection_id:token"
 */
    private getCredentials;
    /**
     * Make authenticated request to Guru API
     */
    private makeRequest;
    /**
     * Search for cards using Guru's search API
     */
    searchCards(params?: GuruSearchParams): Promise<GuruSearchResponse>;
    /**
     * Get a specific card by ID
     */
    getCard(cardId: string): Promise<GuruCard>;
    /**
     * Extract attachment URLs from card content
     */
    extractAttachments(htmlContent: string): GuruAttachment[];
    /**
     * Download attachment by file ID
     */
    downloadAttachment(fileId: string): Promise<Buffer>;
    /**
     * Get attachments for a specific card
     */
    getCardAttachments(cardId: string): Promise<GuruAttachment[]>;
}
