void[] is just an array of anything. in void[] is a convenient signature for a function that just writes bytes to a file or something because it will accept any kind of array - void meaning the type isn't important and in meaning you aren't meaning to modify or store it, thus allowing you to accept const or immutable arrays too.
To use a void[], you must first cast it to something else, typically, ubyte[], so the elements have a concrete size allowing you to index it. void[].length is given as the total number of bytes in the array, so if you are just passing a pointer and length of data to a function (like an operating system level file write, e.g. Linux's write syscall), passing arr.ptr, arr.length will get those bytes written without caring about what they represent.