import { PartOfSpeech } from "../struct/PartOfSpeech"; import Example from "./Example"; export default class WordOfTheDay { readonly _id: string; readonly word: string; readonly contentProvider: { readonly name: string; readonly id: number; }; readonly definitions: { readonly source: string; readonly text: string; readonly note: string | null; readonly partOfSpeech: PartOfSpeech; }[]; readonly publishDate: string; readonly examples: Example[]; readonly pdd: string; readonly htmlExtra: string | null; readonly note: string | null; /** * Word of the day constructor. * * @param _id {string} the ID of the word. * @param word {string} the word. * @param contentProvider {{readonly name: string, readonly id: number}} too lazy to make a class for this. * @param definitions {{readonly source: string, readonly text: string, readonly note: string | null, readonly partOfSpeech: PartOfSpeech}[]} the definitions. * @param publishDate {string} the publish date in ISO8601. * @param examples {Example[]} the examples. * @param pdd {string} the PDD. * @param htmlExtra {string | null} the HTML extra. * @param note {string | null} the note. */ constructor(_id: string, word: string, contentProvider: { readonly name: string; readonly id: number; }, definitions: { readonly source: string; readonly text: string; readonly note: string | null; readonly partOfSpeech: PartOfSpeech; }[], publishDate: string, examples: Example[], pdd: string, htmlExtra: string | null, note: string | null); }