@bgscore/react-router
Version:
Automatic React Router generator for Vite with TypeScript support
30 lines (29 loc) • 953 B
TypeScript
import type { Location, NavigateFunction, NavigateOptions, To, Navigation, UIMatch } from "react-router-dom";
import { Metadata } from "./metadata";
interface Query {
[key: string]: string | string[] | Query | undefined | number | null;
}
interface PushOptions extends NavigateOptions {
query?: Query;
preserveQuery?: boolean;
replaceSameName?: boolean;
}
interface Router<M = unknown, D = M> {
push: (url: To, options?: PushOptions) => void;
pathname: string;
query: Query;
location: Location;
navigate: NavigateFunction;
goBack: (defaultUrl: string) => void;
metadata: Metadata<M>;
data: D;
navigation: Navigation;
error: unknown;
loading: boolean;
matches: UIMatch<unknown, unknown>[];
id: string;
}
export declare function useRouter<M = unknown, D = M>(): Router<M, D>;
export * from './metadata';
export { default as useMetadata } from "./use-metadata";
export default useRouter;