// Combinded with union types
type MarginOrPadding = "m" | "p";
type Position = "l" | "r" | "t" | "b";
type Size = "s" | "m" | "l" | "xl";
// Conbined with template literal types
type Result = `${MarginOrPadding}${Position}-${Size}`;
const useState = <T>(initialValue: T): [T, (newValue: T) => void] => {
  let value = initialValue;
  const setValue = (newValue: T) => {
    value = newValue;
  };
  return [value, setValue];
};
declare type Todo = {
  id: string,
  title: string,
  content: string,
  isDone: boolean
}
TS Tip 수업을 듣고 흩어져있던 정보들이 하나로 정리된 것 같다. 내일부터는 이코테 공부를 다시 시작하자!