to an extent, it is "stock" via queries. AdminCP >> Maintenance >> Execute SQL Query - for example,
TRUNCATE pm
TRUNCATE pmreceipt
TRUNCATE pmtext
will delete all private messages. more can be done via phpMyAdmin like...
EMPTY `PREFIX_pm`;
EMPTY `PREFIX_pmreceipt`;
EMPTY `PREFIX_pmtext`;
UPDATE `PREFIX_user` SET `pmtotal`='0', `pmunread`='0' WHERE 1;
but i see where you're going where you want to set conditionals. THAT would be an awesome hack.
P.S.
here's my suggestion thread over at vB.com a while back. feel free to bump and let vB know that this is actually a valid request.