import { URL } from "../../../util/url.js"; import { Result } from "../../../util/result.js"; import { SimpleGit } from "simple-git"; /** * Detect the correct protocol (e.g., https, git+ssh) for a given Git repository URL * by attempting `git ls-remote` with different protocols. Caches successful results. * * @param {URL} url The initial URL object potentially without a correctly specified Git protocol. * @returns {Promise>} If successful, returns the URL object with the detected protocol (e.g., 'https:', 'git+ssh:'). */ export declare function DetectProtocol(git: SimpleGit, url: URL): Promise>; /** * Removes the protocol from a URL string, leaving the rest of the URL. * The output will typically start with `//` for web-based URLs (e.g., `//example.com/path`). * * @param {URL} url - The URL object to process. * @returns {string} The URL string without its protocol. */ export declare function URLNoProto(url: URL): string;