import { DataTag, QueryClient } from '@tanstack/react-query'; import { BetterFetchError } from 'better-auth/react'; import { InferData, OrganizationAuthClient } from '../../lib/auth-client'; export type HasPermissionData = InferData; export type HasPermissionParams = Parameters[0]; export type HasPermissionOptions = Omit>, "queryKey" | "queryFn">; export declare function hasPermissionOptions(authClient: TAuthClient, userId: string | undefined, params: HasPermissionParams): (import('@tanstack/query-core').OmitKeyof, BetterFetchError, InferData, readonly ["auth", "user", string | undefined, "organization", "permissions", "has", Omit, "fetchOptions"> | null]>, "queryFn"> & { queryFn?: import('@tanstack/query-core').QueryFunction, readonly ["auth", "user", string | undefined, "organization", "permissions", "has", Omit, "fetchOptions"> | null], never> | undefined; } & { queryKey: readonly ["auth", "user", string | undefined, "organization", "permissions", "has", Omit, "fetchOptions"> | null] & { [dataTagSymbol]: InferData; [dataTagErrorSymbol]: BetterFetchError; }; }) & { queryKey: DataTag, "fetchOptions"> | null], InferData, BetterFetchError>; }; export declare const ensureHasPermission: (queryClient: QueryClient, authClient: TAuthClient, userId: string | undefined, params: HasPermissionParams) => Promise>; export declare const prefetchHasPermission: (queryClient: QueryClient, authClient: TAuthClient, userId: string | undefined, params: HasPermissionParams) => Promise; export declare const fetchHasPermission: (queryClient: QueryClient, authClient: TAuthClient, userId: string | undefined, params: HasPermissionParams) => Promise>; export type UseHasPermissionOptions = HasPermissionOptions & HasPermissionParams; export declare function useHasPermission(authClient: TAuthClient, options: UseHasPermissionOptions, queryClient?: QueryClient): import('@tanstack/react-query').UseQueryResult>, BetterFetchError>;