/**
 * CSV-based data source for opportunities
 * Provides same interface as SAM.gov API but reads from local CSV file
 */
/// <reference types="node" />
import { SamOpportunity, SamOpportunitySearchFilters, SamOpportunitySearchResponse } from '../../types/opportunities';
import { GovDealsPaginationParams } from '../../types/common';
export interface CsvClientOptions {
    csvPath: string;
    cacheResults?: boolean;
    encoding?: BufferEncoding;
}
/**
 * CSV-based client that mimics SAM.gov API
 */
export declare class CsvClient {
    private csvPath;
    private cache;
    private cacheResults;
    private encoding;
    constructor(options: CsvClientOptions);
    /**
     * Load and parse CSV data
     */
    private loadData;
    /**
     * Search opportunities with filtering and pagination
     */
    search(filters?: SamOpportunitySearchFilters, pagination?: GovDealsPaginationParams): Promise<SamOpportunitySearchResponse>;
    /**
     * Get opportunity by ID
     */
    getById(noticeId: string): Promise<SamOpportunity>;
    /**
     * Get opportunity description (from CSV Description field)
     */
    getDescription(noticeId: string): Promise<string>;
    /**
     * Search for construction opportunities
     */
    searchConstruction(additionalFilters?: Partial<SamOpportunitySearchFilters>, pagination?: GovDealsPaginationParams): Promise<SamOpportunitySearchResponse>;
    /**
     * Clear cache if needed
     */
    clearCache(): void;
}
