typescript define object in interface code example

Example 1: typescript class interface

interface IPerson {
  name: string
  age: number
  hobby?: string[]
}

class Person implements IPerson {
  name: string
  age: number
  hobby?: string[]

  constructor(name: string, age: number, hobby: string[]) {
    this.name = name
    this.age = age
    this.hobby = hobby
  }
}

const output = new Person('john doe', 23, ['swimming', 'traveling', 'badminton'])
console.log(output)

Example 2: typescript create new object from interface

interface Foo {
    bar: string;
    qux: number;
}
// Creates object implementing interface:
const MyFoo = <Foo> {
    bar: "Hello",
    qux: 7
}
// Or:
const MyFoo: Foo = {
    bar: "Hello",
    qux: 7
}

Example 3: typescript type interface

//INTERFACE	                                TYPE
interface Animal {	                        type Animal = {
    name: string;	                            name: string;
}	                                        }
interface Bear extends Animal {	            type Bear = Animal & { 
    honey: boolean;	                            honey: Boolean;
}	                                        }

const bear = getBear();	                    const bear = getBear();
bear.name;	                                bear.name;
bear.honey;	                                bear.honey;