// Port (interface) for reader data access export class ReaderRepository { /** * Récupère le contexte d'un chapitre * @param {string} chapterId - L'identifiant du chapitre * @returns {Promise} */ async getChapterContext(chapterId) { throw new Error('Not implemented'); } /** * Récupère une page spécifique d'un chapitre * @param {string} chapterId - L'identifiant du chapitre * @param {number} pageNumber - Le numéro de la page * @returns {Promise} */ async getPage(chapterId, pageNumber) { throw new Error('Not implemented'); } /** * Récupère toutes les pages d'un chapitre * @param {string} chapterId - L'identifiant du chapitre * @returns {Promise<{pages: Page[], totalItems: number, currentPage: number, itemsPerPage: number, totalPages: number}>} */ async getPages(chapterId) { throw new Error('Not implemented'); } }