| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | import { Category } from "./enums";interface Author extends Person {  numBooksPublished: number;}interface Book {  author: string,  available: boolean,  category: Category;  id: number,  markDamaged?: DamageLogger,  pages?: number,  title: string,}interface DamageLogger {  (reason: string): void;}interface Inventory<T> {  addItem: (newItem: T) => void;  getAllItems: () => Array<T>;  getNewestItem: () => T;}interface Librarian extends Person {  assistCustomer: (custName: string) => void,  department: string,}interface Magazine {  publisher: string;  title: string;}interface Person {  email: string;  name: string;}export {  Author,  Book,  DamageLogger as Logger,  Inventory,  Librarian,  Magazine,}
 |