react-router-typesafe-routes
Version:
Enhanced type safety via validation for all route params in React Router v7.
12 lines (11 loc) • 643 B
TypeScript
import { Route, RouteSpec, InSearchParams, OutSearchParams, InState } from "../route/index.js";
import { NavigateOptions } from "react-router";
interface TypedNavigateOptions<T> extends NavigateOptions {
state?: T;
untypedSearchParams?: boolean;
}
declare function useTypedSearchParams<TSpec extends RouteSpec>(route: Route<TSpec>, typedDefaultInit?: InSearchParams<TSpec>): [
OutSearchParams<TSpec>,
(searchParams: InSearchParams<TSpec> | ((prevParams: OutSearchParams<TSpec>) => InSearchParams<TSpec>), navigateOptions?: TypedNavigateOptions<InState<TSpec>>) => void
];
export { useTypedSearchParams, TypedNavigateOptions };