/** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ import type { EventLocationProps } from "../event-location/EventLocationProps"; /** * Title of the event */ export type EventTitle = string; /** * Label of the category */ export type Label = string; /** * Categories to which the event belongs */ export type Categories = { label?: Label; }[]; /** * Short intro text for the event */ export type Intro = string; /** * List of locations with attendable appointments */ export type Locations = EventLocationProps[]; /** * Description of the event */ export type Description = string; /** * The images to display in the gallery * * @minItems 1 * @maxItems 10 */ export type Images = [ { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ] | [ { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; }, { src: Src; alt?: AltText; caption?: Caption; } ]; /** * The source of the image */ export type Src = string; /** * Alt text of the image */ export type AltText = string; /** * The caption of the image */ export type Caption = string; /** * Label of the button */ export type Label1 = string; /** * URL the button links to */ export type Url = string; export interface EventDetailProps { title?: EventTitle; categories?: Categories; intro?: Intro; locations?: Locations; download?: { /** * The name of the file */ name: string; /** * A brief description of the file */ description?: string; /** * A URL to an image that previews the file. */ previewImage?: string; /** * The URL to download the file from. */ url: string; /** * The size of the download file */ size?: string; /** * The format of the download file */ format?: string; }[]; description?: Description; images?: Images; button?: Button; } /** * Button at the bottom of the event detail */ export interface Button { label?: Label1; url?: Url; }