@codelet/core
Version:
mini core
24 lines (23 loc) • 813 B
TypeScript
import type { Awaitable } from '@daysnap/types';
declare module '../codelet' {
interface Codelet {
useRouter: boolean;
navigateTo(to: Location): Promise<void>;
redirectTo(to: Location): Promise<void>;
reLaunch(to: Location): Promise<void>;
switchTab(to: Location): Promise<void>;
}
}
export type RouteLocation = {
url: string;
query?: Record<string, any>;
};
export type Location = string | RouteLocation;
export interface RouteNext {
(): void;
}
export interface RouterOptions {
beforeEach?: (to: RouteLocation, from: RouteLocation, next: RouteNext) => Awaitable<void>;
afterEach?: (to: RouteLocation, from: RouteLocation) => Awaitable<void>;
}
export declare const router: (col: import("../codelet").Codelet, options?: RouterOptions) => void;