Difference between catchall route filenames

What’s the difference between pages/[[...catchall]].tsx and pages/[...catchall].tsx for auto-loading next.js pages? I couldn’t understand the ... syntax and the double [] syntax differences.

The [[]] double bracket means it can also be used as index.tsx

see: https://nextjs.org/docs/routing/dynamic-routes#optional-catch-all-routes

Thank you, and the ... ?

That’s just always required by Next.js when creating these dynamic route files