/** * PortOccupiedCheck 类 * 用于检测宿主机端口是否被占用,并自动返回第一个可用端口 */ export declare class PortOccupiedCheck { /** * 检查并返回一个未被占用的端口号 * @param initPort 初始端口号(从此开始逐个检查) * @param maxPort 最大端口号(可选,默认 65535) * @param host 绑定检测的主机地址(默认 '127.0.0.1') * @returns Promise 可用端口号 * * 使用示例: * ```ts * const checker = new PortOccupiedCheck(); * const availablePort = await checker.checkPort(2000); * console.log(`可用端口: ${availablePort}`); * ``` */ checkPort(initPort: number, maxPort?: number, host?: string): Promise; /** * 检查指定端口是否可用 * @param port 端口号 * @param host 绑定检测的主机地址 * @returns Promise 是否可用 */ private isPortAvailable; /** * 使用平台特定的工具检查端口是否被占用 * @param port 端口号 * @returns Promise 是否被占用 */ private isPortOccupiedByOS; /** * macOS 端口占用检测(使用 lsof) * @param port 端口号 * @returns Promise 是否被占用 */ private isPortOccupiedDarwin; /** * Linux 端口占用检测(优先使用 ss,回退到 lsof) * @param port 端口号 * @returns Promise 是否被占用 */ private isPortOccupiedLinux; /** * 使用 ss 命令检测端口占用(Linux) * @param port 端口号 * @returns Promise 是否被占用,null 表示命令不可用 */ private isPortOccupiedBySS; /** * 使用 lsof 命令检测端口占用(Linux/macOS 通用) * @param port 端口号 * @returns Promise 是否被占用,null 表示命令不可用 */ private isPortOccupiedByLsof; /** * 解析 Windows 的 `netstat -ano` 输出,提取处于 LISTENING 的端口到 PID 映射 */ private getOccupiedPortsWindows; } //# sourceMappingURL=port-occupied-check.d.ts.map