import { Schedule , ScheduleInput } from './Schedule' ; typeparam typeparam export interface EventInput < T , M > { id ? : any ; data ? : T ; schedule : ScheduleInput < M > | Schedule < M > ; } typeparam typeparam export class Event < T , M > { /**
     * User specified ID which can be used to find or remove this event from a
     * Calendar.
     */ public id : any ; /**
     * User specified object which describes this event.
     */ public data : T ; /**
     * The schedule which defines when this event occurs.
     */ public schedule : Schedule < M > ; /**
     * If the event is visible on the calendar.
     */ public visible : boolean ; param schedule param data param id public constructor ( schedule , data ? , id ? , visible = true ) { this . schedule = schedule ; this . data = data ; this . id = id ; this . visible = visible ; } }