@senka-ai/ui
Version:
A modern, type-safe Svelte 5 UI component library with full theme support, accessibility standards, and robust state management patterns
45 lines • 1.77 kB
TypeScript
import type { BaseProps, SizedComponent, ChangeHandler, InteractiveHandlers } from '../../type/component';
interface CalendarLabels {
/** Month names (12 entries: January, February, ...) */
months?: string[];
/** Short month names (12 entries: Jan, Feb, ...) */
monthsShort?: string[];
/** Day names (7 entries: Sunday, Monday, ...) */
days?: string[];
/** Short day names (7 entries: Sun, Mon, ...) */
daysShort?: string[];
/** Very short day names (7 entries: SU, MO, ...) */
daysMin?: string[];
}
interface Props extends BaseProps, SizedComponent, ChangeHandler<Date>, InteractiveHandlers {
/** Currently selected date */
selectedDate?: Date;
/** Currently displayed month/year */
currentMonth?: Date;
/** Today's date (for visual testing consistency) */
today?: Date;
/** Minimum selectable date */
minDate?: Date;
/** Maximum selectable date */
maxDate?: Date;
/** Whether the calendar is read-only */
readonly?: boolean;
/** Calendar view mode */
view?: 'month' | 'week';
/** Start day of week (0 = Sunday, 1 = Monday) */
startOfWeek?: 0 | 1;
/** Format for displaying dates - fallback for aria-labels */
locale?: string;
/** Whether calendar should fill container width */
fullWidth?: boolean;
/** Header navigation layout */
headerLayout?: 'spread' | 'grouped';
/** Custom labels for months and days */
labels?: CalendarLabels;
/** Custom function to determine if a date should be disabled */
isDateDisabled?: (date: Date) => boolean;
}
declare const Calendar: import("svelte").Component<Props, {}, "">;
type Calendar = ReturnType<typeof Calendar>;
export default Calendar;
//# sourceMappingURL=Calendar.svelte.d.ts.map