import { ParsedUrlQuery } from 'querystring'; /* eslint-disable @typescript-eslint/naming-convention */ export interface Activity { title: string; description: string; value: number; startDate?: string; endDate?: string; } export interface Training { info: Activity; url: string; } export interface Closure { info: Activity; video: string; } export interface Answer { id: string; text: string; isCorrect: boolean; } export interface PictureSize { url: string; } export interface Picture { formats: { medium?: PictureSize; small?: PictureSize; large?: PictureSize; thumbnail: PictureSize; }; } export interface Question { id: string; question: string; picture: Picture; description?: string; answers: Answer[]; } export interface Trivial { info: Activity; questions: Question[]; } export interface Challenge { info: Activity; question: Question; } export interface File { id: string; name: string; mime: string; url: string; } export interface ClinicCase { info: Activity; template: File; picture: Picture; } export interface Ring { id: string; title: string; order: number; description: string; duration: number; training: Training; trivial: Trivial; challenge?: Challenge; closure: Closure; clinicCase?: ClinicCase; } export enum Routes { formation, trivial, challenge, closure, clinicCase, event, } export interface RingParams extends ParsedUrlQuery { id: string; } export const phaseNames = ['Formación', 'Trivial', 'Reto', 'Cierre']; export interface RingErrorProps { ring: string; } export interface RingErrorPageParams extends ParsedUrlQuery { ring: string; }