type Date = {
year: i64,
month: i64,
day: i64
};
val date: fn(year: i64, month: i64, day: i64) -> Date;
type CalendarEvent = {
date: Date,
style: Style
};
val calendar_event: fn(style: Style, date: Date) -> CalendarEvent;
type Calendar = {
default_style: &[Style, null],
display_date: &Date,
events: &[Array<CalendarEvent>, null],
show_month: &[Style, null],
show_surrounding: &[Style, null],
show_weekday: &[Style, null]
};
val calendar: fn(
?#default_style: &[Style, null],
?#show_month: &[Style, null],
?#show_surrounding: &[Style, null],
?#show_weekday: &[Style, null],
?#events: &[Array<CalendarEvent>, null],
display_date: &Date
) -> Tui;