import { FlamethrowerOptions } from './interfaces'; export declare class Router { opts?: FlamethrowerOptions; enabled: boolean; private prefetched; private observer; constructor(opts?: FlamethrowerOptions); /** * @param {string} path * Navigate to a url */ go(path: string): Promise; /** * Navigate back */ back(): void; /** * Navigate forward */ forward(): void; /** * Find all links on page */ private get allLinks(); private log; /** * Check if the route is qualified for prefetching and prefetch it with chosen method */ private prefetch; /** * Finds links on page and prefetches them on hover */ private prefetchOnHover; /** * Prefetch all visible links */ private prefetchVisible; /** * @param {string} url * Create a link to prefetch */ private createLink; /** * @param {MouseEvent} e * Handle clicks on links */ private onClick; /** * @param {PopStateEvent} e * Handle popstate events like back/forward */ private onPop; /** * @param {RouteChangeData} routeChangeData * Main process for reconstructing the DOM */ private reconstructDOM; }