interface Malware { IDMalware : string ; getOSInformation ( ) : void ; infectStartup ( ) : void ; } interface ITrojan { IDTrojan : string ; keylogger ( ) : void ; screenlogger ( ) : void ; } interface IRansomware extends Malware , ITrojan { RansomwareVersion : string ; encryptAllFiles ( ) : void ; extortion ( ) : void ; } class CryptoLocker implements IRansomware { public RansomwareVersion : string ; public IDMalware : string ; public IDTrojan : string ; constructor ( IDMalware , RansomwareVersion , IDTrojan ) { this . IDMalware = IDMalware ; this . RansomwareVersion = RansomwareVersion ; this . IDTrojan = IDTrojan ; } getOSInformation ( ) { console . log ( "OS Windows : User Maudy" ) ; } infectStartup ( ) { console . log ( "Startup OS Infected" ) ; } encryptAllFiles ( ) { console . log ( "Encrypt All Files, Success" ) ; } extortion ( ) { console . log ( "Send Bitcoin to : 8sdhshj6sgjhd&" ) ; } keylogger ( ) { console . log ( "Keylogger Active!" ) ; } screenlogger ( ) { console . log ( "Screen Active!" ) ; } } const exampleCryptoLocker = new CryptoLocker ( "101" , "v1.0.1" , "22" ) ; exampleCryptoLocker . encryptAllFiles ( ) ; exampleCryptoLocker . extortion ( ) ;