The ??? type is the oddity among the types. Unlike the Bird type and other glitch types, the ??? type does not exist in the coding of Generation I: it, along with the Dark and Steel types, was introduced in Generation II, though unlike its counterparts, it does not have as much fanfare. In Generations II, III, and IV, the ??? type exists solely to be the type of Pokémon eggs and the move Curse, a unique move which changes effect depending on whether or not it is used by a Ghost-type Pokémon.
Unlike other types, the ??? type is not programmed to have weaknesses or resistances: it is effectively neutral. Due to this, however, issues arise if damaging moves are hacked to be of this type in the Generation II and Generation III games: since it was considered neither a physical nor a special move, the damage dealt by a ???-type move is minimal, even if the move has 255 power, the highest possible.
Find the full article here.