Wireguard works at layer 3 (routed IP packet) while a bridge works at layer 2 (switched ethernet frame). So wireguard can't do this. This question was already asked and an answer made by wireguard's author in wireguard's mailing list: Bridging wg and normal interfaces?.
So an additional encapsulation layer is needed before going through wireguard. I'm sure ...
Instead of specifying AllowedIPs = 0.0.0.0/0 specify an ip address.
Ran into this question wondering the same thing. The use case detailed here pointed me in the right direction: https://emanuelduss.ch/2018/09/wireguard-vpn-road-warrior-setup/
As a workaround, you could manually add the following to your /etc/apt/sources.list:
deb http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic main
deb-src http://ppa.launchpad.net/wireguard/wireguard/ubuntu bionic main
And then sudo apt-get update.
You could see these steps in the WireGuard Launchpad page - reveal by expanding "Technical details ...
Each side of the tunnel has own generated key and derived public key (defined as "peer" on other side of connection). To act as you are writing you would share the private key between the "clients" which is the worst case you can do (technically you can but I hope nobody would even think about that).
Let think about "client vs. server" roles.