interface ThreadAllocatorOptions { cpus?: number; reserved?: number; } interface ServiceConfig { name: string; threads: number | "auto"; weight: number; port: number | null; mode: string; } interface ServiceMap { [name: string]: ServiceConfig; } interface SummaryRow { name: string; port: number | null; threads: number; mode: string; weight: number; } interface AllocationSummary { totalCpus: number; reserved: number; allocated: number; idle: number; services: SummaryRow[]; } /** * ThreadAllocator * * Distributes available CPU cores across services based on * fixed thread counts and weighted auto-allocation. */ export declare class ThreadAllocator { totalCpus: number; reservedForSupervisor: number; constructor(options?: ThreadAllocatorOptions); /** * Calculate thread allocation for all services. * * @param {Object} services - Normalized service configs (keyed by name) * @returns {Map} - Service name → allocated thread count */ allocate(services: ServiceMap): Map; /** * Get a summary of the allocation for display. */ summary(services: ServiceMap): AllocationSummary; } export {}; //# sourceMappingURL=ThreadAllocator.d.ts.map