/**
 * Azure DevOps Items Adapter - OPTIMIZED FOR SCALE
 *
 * Three-tier fetching:
 * 1. getOpenCount() - Single WIQL query, returns count (for status)
 * 2. getOpenItems(filter) - Paginated, filtered (for details)
 *
 * Requires ADO_ORG_URL, ADO_PROJECT, ADO_PAT in environment
 */
import { ExternalItemsProvider, ExternalProvider, ItemsFilter, PaginatedItemsResult } from '../types.js';
import { Logger } from '../../../utils/logger.js';
export declare class AdoItemsAdapter implements ExternalItemsProvider {
    private orgUrl;
    private project;
    private pat;
    private logger;
    constructor(options: {
        orgUrl: string;
        project: string;
        pat: string;
        logger?: Logger;
    });
    static fromEnv(options?: {
        logger?: Logger;
    }): AdoItemsAdapter | null;
    getProviderName(): ExternalProvider;
    isConfigured(): Promise<boolean>;
    /**
     * TIER 1: Fast count - single WIQL query, just count IDs
     * WIQL returns workItem IDs, we just count them without fetching details
     */
    getOpenCount(): Promise<number>;
    /**
     * TIER 3: Paginated items - on-demand with filters
     */
    getOpenItems(filter?: ItemsFilter): Promise<PaginatedItemsResult>;
}
//# sourceMappingURL=ado-items-adapter.d.ts.map