/** * Copyright 2025 Vybestack LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * @plan PLAN-20251125-LOCALAUTH.P01 * @requirement REQ-LOCAL-001 * * Utility to detect local/private network endpoints that don't require authentication. * Used to fix Issue #598 where Ollama and other local AI servers were incorrectly * requiring authentication. */ /** * Checks if a URL points to a local or private network endpoint. * * Local endpoints include: * - localhost * - 127.0.0.0/8 (IPv4 loopback range - 127.0.0.0 - 127.255.255.255) * - [::1] (IPv6 loopback) * - Private IP ranges (RFC 1918): * - 10.0.0.0/8 (10.0.0.0 - 10.255.255.255) * - 172.16.0.0/12 (172.16.0.0 - 172.31.255.255) * - 192.168.0.0/16 (192.168.0.0 - 192.168.255.255) * * @param url - The URL to check (can be undefined or empty) * @returns true if the URL points to a local/private endpoint, false otherwise */ export declare function isLocalEndpoint(url: string | undefined): boolean;