interface DeveloperI {
name: string;
role: string;
email: string;
openToWork: boolean;
languageSpoken: string[];
introduction(): () => void;
sayHello: () => void;
isOpenToWork: () => void
getLinkedinProfile: () => string;
getResume: () => string;
}
const SoftwareDeveloper: DeveloperI = {
name: "John",
role: "Software Developer",
email: "[email protected]",
openToWork: true,
languageSpoken: ["es-ES", "en_US"],
introduction() {
console.log(`Hi!, I'm ${this.name}, I'm a ${this.role}.`);
},
sayHello() {
console.log("Thanks for reaching out, let's build great products together!.");
},
isOpenToWork() {
console.log(`Open to Work: ${this.openToWork}.`);
},
getLinkedinProfile() {
return "https://www.linkedin.com/in/jonathan-messina";
},
getResume() {
return "https://github.com/jonathan-messina/resume";
}
}
SoftwareDeveloper.introduction();
SoftwareDeveloper.sayHello();
SoftwareDeveloper.isOpenToWork();
const linkedinProfile = SoftwareDeveloper.getLinkedinProfile();
const resume = SoftwareDeveloper.getResume();
console.log(linkedinProfile);
console.log(resume);
output:
Hi!, I'm John, I'm a Software Developer.
Thanks for reaching out, let's build great products together!.
Open to Work: true.
https://www.linkedin.com/in/jonathan-messina
https://github.com/jonathan-messina/resume