import { PortAllocation } from './types.js';
export declare class PortManager {
    private static instance;
    private allocatedPorts;
    private portRange;
    private constructor();
    static getInstance(): PortManager;
    initialize(): Promise<void>;
    allocatePort(serviceName: string, preferredPort?: number): Promise<number>;
    deallocatePort(port: number): Promise<void>;
    getPortAllocations(): PortAllocation[];
    isPortAllocated(port: number): boolean;
    getServiceByPort(port: number): string | undefined;
    getPortByService(serviceName: string): number | undefined;
    private isPortAvailable;
    findAvailablePortsInRange(count: number): Promise<number[]>;
    resetAllocations(): Promise<void>;
    getPortRangeInfo(): {
        start: number;
        end: number;
        total: number;
        allocated: number;
        available: number;
    };
    private pathExists;
    private loadAllocations;
    private saveAllocations;
}
export declare const allocatePort: (serviceName: string, preferredPort?: number) => Promise<number>;
export declare const deallocatePort: (port: number) => Promise<void>;
export declare const getPortAllocations: () => PortAllocation[];
export declare const isPortAllocated: (port: number) => boolean;
export declare const getServiceByPort: (port: number) => string | undefined;
export declare const getPortByService: (serviceName: string) => number | undefined;
