I found this web page that describes some of the process of setting up a Debian system to make a virtual USB mass storage device: https://docs.embeddedarm.com/USB_Gadget_Mass_Storage
Is that helpful? I'm guessing that by setting up two block devices, mounted on both systems but each one set-up to be read only by one system, that way a person can have two way file transfer and not worry about either computer trying to write something at the same time. To move a file from Debian to Windows you can copy a file to the virtual drive it can write to, then go to the Windows computer and you should see that file appear and then copy it from there. To move a file the other way copy a file to the Windows read/write virtual drive and then copy it out of the read only virtual drive on Debian.
The hardware setup on Debian should be fairly trivial so long as it has a free USB-C port. Configure the "gadget" on that port and connect the port to the Windows computer by a USB-C to USB-C cable or USB-C to USB-A cable as appropriate. If the Debian computer does not have any USB-C ports then the USB connection is not so trivial.
From what I've seen many newer computers with USB-A ports use the same chips as those that have USB-C ports, so the port should support a slave mode like most any USB-C port would. What I don't know is if there is a requirement for the cable to signal a switch to slave/device/gadget/whatever mode like the old USB-OTG ports did. If there is a means to set a USB-A port to device mode in software then this likely will mean the port cannot recognize the presence of a device being plugged in, such as a mouse or flash drive.
Cables to safely connect USB 3.x type-A ports together do exist. Here's one example: https://www.datapro.net/products/usb-3-0-super-speed-a-a-debugging-cable.html
In the product description is a link to a Microsoft document on how to set this up on Windows so a USB-A port can look like a device port to another computer. This is not likely all that helpful but it proves this is possible, and shows some of the pitfalls and caveats on making this work. One caveat is that the port needs to have a USB 3.x controller that supports debugging. Again, this appears to be relatively common now since computer makers are using the same chips behind their USB-A ports as they use for USB-C ports that are capable of entering a device mode (required for things like USB Power Delivery to charge a laptop battery).
Using an active USB-A to USB-A "bridge" or "file transfer" cable might not get what you want. This kind of cable will look to both computers as an Ethernet or serial device. This would allow for sharing of files but would mean limiting data transfer speeds to that of the chip in the middle. A quality passive USB cable should give 10 Gbps (with USB 3.x and USB-A port) or even 20 Gbps (USB 3.2 and USB-C) transfer speeds. With the right kind of "gadget" settings the Debian computer could appear as a multifunction dock with attached drives and an Ethernet port to the Windows computer.