In case of a multi-function device you can create different interface for each of the configuration (function of the device) of the device. A device could have 1 or many interface descriptors active at a time. For example, if a USB device with functions A, B and C exists then you can create three Interface descriptors for each of the functions. Also, there is no limitation as to having only on interface active at a time.
We create different alternate settings for an interface descriptor when an interface can be used in two modes (one at a time). USB interface endpoints may act as interrupt pipes in normal settings, but might act as Bulk pipe in alternate settings providing you the facility of two different mode on the same interface.
Therefore you can either add interface descriptor if the two functions are active at the same time or an alternate setting within the same interface descriptor if you are switching the modes of the device.
An endpoint is not shared among different interfaces within a single configuration, although a single interface can have several alternate settings which may use the same endpoints.