interface IPerson{
name:string;
age:number;
speak():string;
}
type PersonType ={
name:string;
age:number;
speak():string;
}
let personInterface:IPerson = {} as any;
let personType :PersonType = {} as any;
personInterface = personType;
personType = personInterface;
type PersonID = string & {readonly brand:unique symbol};
function PersonID(id:string):PersonID{
return id as PersonID;
}
function getPersonById(id:PersonID){}
getPersonById(id:PersonID('id-aaaaaa'));
getPersonById(('id-aaaaaa')); //error
만약 어떤 새가 오리처럼 걷고, 헤엄치고, 꽥꽥거리는 소리를 낸다면 나는 그 새를 오리라고 부를 것이다.