To have a serial-port plug, you will indeed have to have a gadget expose that plug.
By default, the pi-gadget does not expose such a plug (https://github.com/snapcore/pi-gadget/blob/18-armhf/snapcraft.yaml).
If you’re already using a custom gadget which you maintain, you can add it by following Gadget providing serial-port slot, note if you’re using a pure serial-port, you can omit the usb-* declarations
I myself use this method and it works.
my-serial-slot:
interface: serial-port
path: /dev/ttyAMA0
After which you can use
snap connect your-snap:serial-port :my-serial-slot