Calendar/wwwroot/js/utils/URLManager.d.ts
2026-02-03 00:02:25 +01:00

29 lines
945 B
TypeScript

import { IEventBus } from '../types/CalendarTypes';
/**
* URLManager handles URL query parameter parsing and deep linking functionality
* Follows event-driven architecture with no global state
*/
export declare class URLManager {
private eventBus;
constructor(eventBus: IEventBus);
/**
* Parse eventId from URL query parameters
* @returns eventId string or null if not found
*/
parseEventIdFromURL(): string | null;
/**
* Get all query parameters as an object
* @returns object with all query parameters
*/
getAllQueryParams(): Record<string, string>;
/**
* Update URL without page reload (for future use)
* @param params object with parameters to update
*/
updateURL(params: Record<string, string | null>): void;
/**
* Check if current URL has any query parameters
* @returns true if URL has query parameters
*/
hasQueryParams(): boolean;
}