TRIM not working on LVM-LUKs encrypted external SSD. Need help!

I am facing an issue whereby my external SSD running nixos which is Luks-Lvm is unable to go beyond persisting allowing discard to the lvm root layer cryptsetup --allow-discards --persistent refresh root (not to be confused with vg1-root) but am unable to enable TRIM for the sub volumes vg1-root (0B) and vg1-swap(0B), how may i proceed here. I tried to use a script to set issue_discards=1 for lvm.conf but no luck. Appreciate if you could help me in this instance. I have also set allowDiscards to true for the physical partition as well as tried adding discard tag to vg1-root and vg1-swap. For better context this is the current structure of external SSD with LUKS-LVM:

Are you sure your SSD actually supports trim through discard opions? Some older ones don’t, though I’m unsure if that would present itself like this.

I believe this option will help in such cases: NixOS Search

@TLATER Yes I can confirm that it does, also I already have set fstrim.service.enable = true. Also I have same config on a non-LVM luks and TRIM works there when i
cryptsetup --allow-discards --persistent refresh root
but now with lvm-luks there is a existance of sub vg1-root and vg1-swap that needs to be manually exposed to TRIM