There are a few snaps that dump precompiled source from upstream. Some upstreams have different source/packages for i386 and amd64.
Is there a way to define source based on arches ?
Not yet, but it’s on our near-term roadmap. You can track the task here. Until then, the best way to do this is probably with a custom plugin that pulls the source depending on arch.