Using Typescript, write a Vite Plugin for my current vite config. The plugin must be able to virtually create, read, update and delete files and config that are used by other plugins and for the build.