You can use any types you like, as long as you provide some circuit that can read the memory and then control the FPGAs configuration interface in an appropriate way to configure the device according to the data in the memory.
For example, a microcontroller could read the flash and send it to the FPGA on its serial or parallel configuration interface.
Or a PC could store the configuration on a hard disk, and send it to a circuit on the PCB with the FPGA, which delivers the data to the FPGA's configuration interface.
The FPGA may also have a built in state machine that can read memory with a specified interface directly, eliminating the need for an external micro or CPLD to operate the configuration interface. The requirements on the flash interface for the FPGA to do this will be spelled out in the documentation for the FPGA. (For Xilinx, there will be a document called the Configuration Guide, but Intel might have a different name for this document or combine it in a general Users Guide).