declare namespace imba { /** * @custom */ interface Router { /** * The currently matching path */ path: string; /** * The hash */ hash: string; url: URL; pathname: string; refresh(): void; alias(from: string, to: string): void; /** * See if router currently matches a pattern/path */ match(pattern: string | RegExp): null | any; /** * Go to a url * @param url * @param state */ go(url: string, state?: object): void; /** * Switch to another url without pushing to the history * @param url * @param state */ replace(url: string, state?: object): void; on(event:string,callback:Function); } /** * Reference to global router */ let router: Router; }