SDA/SCL pins Arduino Uno
It is CMOS in that the IO pins of the MCU use MOSFETs not BJTs.

However I2C is slightly different in that it is open-drain not push-pull, so it's not really either TTL or CMOS since it doesn't conform to either logic level standard (since there is no "high" voltage, only what is pulled up by the external resistor). That said, since the ATMega is normally CMOS when in input or push-pull mode the logic levels of the I2C should conform to CMOS not TTL in order for the Arduino to read them properly.

It's closer to RTL than TTL or CMOS.