form is a reactive object and what you did above is watching on a File | null variable (not a ref).
What you should do is mentioned in Vue 3 documentation: https://vuejs.org/guide/essentials/watchers.html#watch-source-types
watch(
() => form.file, // use a getter like this
(file) => {
console.log('file changed', file);
form.post(route('users.import'));
}
)