/**
 * User management hooks
 */
import type { UserFilters, CreateUserRequest, UpdateUserRequest, ChangePasswordRequest, LockUserRequest, VerifyTwoFactorRequest } from '../types';
export declare const userKeys: {
    all: readonly ["users"];
    lists: () => readonly ["users", "list"];
    list: (filters: UserFilters) => readonly ["users", "list", UserFilters];
    details: () => readonly ["users", "detail"];
    detail: (id: string) => readonly ["users", "detail", string];
    roles: (id: string) => readonly ["users", "roles", string];
    permissions: (id: string) => readonly ["users", "permissions", string];
    twoFactor: (id: string) => readonly ["users", "two-factor", string];
};
/**
 * Hook to fetch users list
 */
export declare function useUsers(filters?: UserFilters): import("@tanstack/react-query").UseQueryResult<import("..").UserListResponse, Error>;
/**
 * Hook to fetch single user
 */
export declare function useUser(id: string): import("@tanstack/react-query").UseQueryResult<import("..").User, Error>;
/**
 * Hook to create user
 */
export declare function useCreateUser(): import("@tanstack/react-query").UseMutationResult<import("..").User, Error, CreateUserRequest, unknown>;
/**
 * Hook to update user
 */
export declare function useUpdateUser(): import("@tanstack/react-query").UseMutationResult<import("..").User, Error, UpdateUserRequest, unknown>;
/**
 * Hook to delete user
 */
export declare function useDeleteUser(): import("@tanstack/react-query").UseMutationResult<void, Error, string, unknown>;
/**
 * Hook to change user password
 */
export declare function useChangeUserPassword(): import("@tanstack/react-query").UseMutationResult<void, Error, ChangePasswordRequest, unknown>;
/**
 * Hook to lock user
 */
export declare function useLockUser(): import("@tanstack/react-query").UseMutationResult<void, Error, LockUserRequest, unknown>;
/**
 * Hook to unlock user
 */
export declare function useUnlockUser(): import("@tanstack/react-query").UseMutationResult<void, Error, string, unknown>;
/**
 * Hook to get user roles
 */
export declare function useUserRoles(userId: string): import("@tanstack/react-query").UseQueryResult<string[], Error>;
/**
 * Hook to assign roles to user
 */
export declare function useAssignUserRoles(): import("@tanstack/react-query").UseMutationResult<void, Error, {
    userId: string;
    roleNames: string[];
}, unknown>;
/**
 * Hook to get user permissions
 */
export declare function useUserPermissions(userId: string): import("@tanstack/react-query").UseQueryResult<string[], Error>;
/**
 * Hook to setup two-factor authentication
 */
export declare function useSetupTwoFactor(): import("@tanstack/react-query").UseMutationResult<import("..").TwoFactorSetupResponse, Error, string, unknown>;
/**
 * Hook to verify two-factor authentication
 */
export declare function useVerifyTwoFactor(): import("@tanstack/react-query").UseMutationResult<void, Error, VerifyTwoFactorRequest, unknown>;
/**
 * Hook to disable two-factor authentication
 */
export declare function useDisableTwoFactor(): import("@tanstack/react-query").UseMutationResult<void, Error, string, unknown>;
//# sourceMappingURL=use-users.d.ts.map