I have found the following example in the documentation, and it would do exactly what I want, except that the contents at the location are not static.
<resource type="download" name="icons/" location="templates/extra/autofavourite/icons/"/>
Ideally, I would like location to be something external to the plugin, like database content or an exploded zip file pulled from download/attachments.
So my question is, can I define my own resource type, and provide an implementation class that can access that location, and how would I go about it.
Alternatively, is there another way to accomplish what I am trying to do, and I just have't stumbled across it yet?