How can I quickly create markdown callouts and quote blocks?

With hotkeys / automatic actions, I want to put text inside either on the current line in normal mode, or all visually selected lines, into a callout or quote block; as well as select lines in the callout or quote and remove the > quote mark on said lines. (Callouts are like quotes but with an extra line on top: > [!Callout Title], and vice versa).

Text
Text
↓

> [!Callout Title]
> text
> text

I just setup LuaSnip with two snippets with fmt, and looked up how to add visual selections or the clipboard (perhaps as nodes) for Lua snippets, but didn’t find any asnwers. What would be the best way(s) to do this?