import { NavigationTarget } from "./base/index.js"; /** * Extracts a navigation target from a component that implements `DDSNavigable`. * * @param element - Candidate element that may implement `DDSNavigable`. * @returns The navigation target when available, otherwise null. */ export declare function getNavigationTarget(element: unknown): NavigationTarget | null; /** * Returns true when the href points to the current origin using http(s) or a relative URL. * * @param href - Destination URL or path to evaluate. * @param base - Base URL used when resolving relative paths. * @param origin - Origin to compare against after resolving the URL. * @returns True when the navigation stays within the same origin. */ export declare function isInternalNavigation(href: string, base?: string, origin?: string): boolean; /** * Determines whether a click should be handled by SPA navigation rules. * * @param event - Mouse event that triggered navigation, if any. * @param element - Target element to evaluate when no event is available. * @param target - Navigation target information to evaluate when no event is available. * @returns True when the click qualifies for SPA navigation. */ export declare function shouldSPANavigate(event: MouseEvent | undefined, element?: EventTarget | null | undefined, target?: NavigationTarget | null): boolean; /** * Returns the URL to navigate to when a click event qualifies for SPA navigation, otherwise null. * * @param event - Mouse event that triggered navigation. * @returns The URL to navigate to, or null when the click does not qualify for SPA navigation. */ export declare function getSPANavigationURL(event: MouseEvent): string | null;