Object containing user files state and actions
User files are fetched without requiring an active room connection. Room owners get all their files across all rooms.
For real-time updates (a file arriving from another user, a sharing change),
call connectUserFiles(streamUrl) with the URL returned by
cloudClient.getUserFilesStreamUrl(userId). The hook's files array stays
in sync as long as isConnected is true. Call disconnectUserFiles() when
the user logs out or the consumer unmounts.
Access all user files across all rooms, with optional real-time updates and management actions.