import { useSearchParams } from 'react-router-dom';

type UseRouteParamsReturn = {
    setSearchParams: ReturnType<typeof useSearchParams>[1];
    searchParams: URLSearchParams;
    searchQueries: Record<string, string>;
    isHasQuery: (key: string, value: string) => boolean;
    getQueryParam: (key: string) => string | null;
    getRouteParam: (key: string) => string | undefined;
    params: Record<string, string | undefined>;
    id?: string;
    hasId: boolean;
};
/**
 * Custom hook untuk mengakses dan memodifikasi **route params** (`useParams`)
 * dan **query params** (`useSearchParams`) dalam satu utilitas.
 *
 * Cocok digunakan ketika ingin membaca parameter dari URL
 * (misalnya `/users/:id?tab=profile`) secara konsisten.
 *
 * @example
 * // Route: /users/123?tab=profile&filter=active
 * const {
 *   id,
 *   hasId,
 *   getRouteParam,
 *   getQueryParam,
 *   isHasQuery,
 *   setSearchParams,
 *   searchQueries
 * } = useRouteParams();
 *
 * console.log(id); // "123"
 * console.log(hasId); // true
 * console.log(getRouteParam("id")); // "123"
 *
 * // query params
 * console.log(getQueryParam("tab")); // "profile"
 * console.log(isHasQuery("filter", "active")); // true
 *
 * // searchQueries → object hasil parsing query string
 * console.log(searchQueries);
 * // { tab: "profile", filter: "active" }
 *
 * // Update query param
 * setSearchParams({ tab: "settings" });
 */
export declare const useRouteParams: () => UseRouteParamsReturn;
export {};
