Usable output (for an end-user) from an Illumina sequencer is fastq formatted gzip compressed sequence files. They are produced by processing the basecalls with a program called
bcl2fastq (soon a new program called
bclconvert) that is supplied by Illumina. Sequencing can sample only one end of the library fragments being sequence (single-end sequencing) or it can sample both ends (paired-end sequencing).
Demultiplexing happens as a part of
bcl2fastq processing (generally). When more than one samples tagged with a index sequence (or a pair) is present in the sequenced pool, sample data are binned into individual data files as a part of
bcl2fastq processing using these indexes. In Illumina sequencing index reads are never a part of actual sequence and the order of sequencing is
Read 1 --> Index 1 (if present) --> Index 2 (if present) --> Read 2.
Rest of the files you are referring to are derived data files produced after alignments (fastq --> SAM --> BAM), variant analysis (BAM --> VCF). Fastq files can sometimes be converted to plain fasta format (especially if you need to
blast them). Fastq files can also be converted to BAM files without alignments (Unaligned BAM files).