One nice thing about tmux is it also supports include files in its config.
This lets you put your theme colors in a different file, such as `source-file "~/.config/tmux/theme.conf"` and then your theme switching external script or tool can symlink a specific theme's tmux file to that path.
That's what I do in my dotfiles:
# Main tmux config
https://github.com/nickjj/dotfiles/blob/master/.config/tmux/tmux.conf
# One of the theme files
https://github.com/nickjj/dotfiles/blob/master/themes/tokyonight-moon/tmux.conf
It allows for hot-reloading different themes as well.