/**
 * Utility class for IP address operations
 */
export declare class IpUtils {
    /**
     * Check if the IP matches any of the glob patterns
     *
     * This method checks IP addresses against glob patterns and handles IPv4/IPv6 normalization.
     * It's used to implement IP filtering based on security configurations.
     *
     * @param ip - The IP address to check
     * @param patterns - Array of glob patterns
     * @returns true if IP matches any pattern, false otherwise
     */
    static isGlobIPMatch(ip: string, patterns: string[]): boolean;
    /**
     * Normalize IP addresses for consistent comparison
     *
     * @param ip The IP address to normalize
     * @returns Array of normalized IP forms
     */
    static normalizeIP(ip: string): string[];
    /**
     * Check if an IP is authorized using security rules
     *
     * @param ip - The IP address to check
     * @param allowedIPs - Array of allowed IP patterns
     * @param blockedIPs - Array of blocked IP patterns
     * @returns true if IP is authorized, false if blocked
     */
    static isIPAuthorized(ip: string, allowedIPs?: string[], blockedIPs?: string[]): boolean;
    /**
     * Check if an IP address is a private network address
     *
     * @param ip The IP address to check
     * @returns true if the IP is a private network address, false otherwise
     */
    static isPrivateIP(ip: string): boolean;
    /**
     * Check if an IP address is a public network address
     *
     * @param ip The IP address to check
     * @returns true if the IP is a public network address, false otherwise
     */
    static isPublicIP(ip: string): boolean;
    /**
     * Check if an IP matches a CIDR notation
     *
     * @param ip The IP address to check
     * @param cidr The CIDR notation (e.g., "192.168.1.0/24")
     * @returns true if IP is within the CIDR range
     */
    private static matchCIDR;
    /**
     * Check if an IP matches a range notation
     *
     * @param ip The IP address to check
     * @param range The range notation (e.g., "192.168.1.1-192.168.1.100")
     * @returns true if IP is within the range
     */
    private static matchIPRange;
    /**
     * Convert a subnet CIDR to an IP range for filtering
     *
     * @param cidr The CIDR notation (e.g., "192.168.1.0/24")
     * @returns Array of glob patterns that match the CIDR range
     */
    static cidrToGlobPatterns(cidr: string): string[];
}
