/** * Per-host concurrency limiter using semaphores. * Maps API hostnames to max concurrent request slots. */ /** Default per-host concurrency limits based on API rate limits */ export declare const DEFAULT_HOST_LIMITS: Record; /** GitHub unauthenticated rate limit is much lower (60/hr vs 5000/hr) */ export declare const GITHUB_UNAUTH_LIMIT = 2; /** Default download concurrency (CDN, not API) */ export declare const DOWNLOAD_CONCURRENCY = 5; /** Map source types to their API hostnames */ export declare const SOURCE_TYPE_HOSTS: Record; export declare class HostSemaphore { private active; private limits; private queues; private defaultLimit; constructor(hostLimits: Record, defaultLimit?: number); private getHost; private getLimit; getActiveCount(host: string): number; acquire(url: string): Promise; release(url: string): void; run(url: string, fn: () => Promise): Promise; } //# sourceMappingURL=concurrency.d.ts.map