UNPKG

@josmangarsal/pragmatic-scheduler

Version:
130 lines (129 loc) 4.75 kB
import React from 'react'; import 'react-grid-layout/css/styles.css'; import 'react-resizable/css/styles.css'; import { BoxProps } from '@mui/material'; import { ScheduleDay, Resource, CalEvent, Config, DivisionDetail, GridCellLayout } from '../types'; declare module '@mui/material/styles' { interface TypographyVariants { tableHeader: React.CSSProperties; } interface TypographyVariantsOptions { tableHeader?: React.CSSProperties; } } declare module '@mui/material/Typography' { interface TypographyPropsVariantOverrides { tableHeader: true; } } export declare const SchedulerContext: React.Context<{ activeDate: Date; days: ScheduleDay[]; resources: Resource[]; events: CalEvent[]; config: Config; calendarBounds: { start: Date; end: Date; range: number; totalDivisions: number; }; onEventChange?: ((event: CalEvent) => void) | undefined; HeaderRow?: React.FC<{ days: ScheduleDay[]; }> | undefined; ResourceCell?: React.FC<{ resource: Resource; }> | undefined; ResourceHeader?: React.FC<{}> | undefined; UnassignedHeader?: React.FC<{}> | undefined; UnAssignedBoxProps?: BoxProps<"div", {}> | undefined; GridCell?: React.FC<{ layout: GridCellLayout; }> | undefined; EventTile?: React.FC<{ event: CalEvent; }> | undefined; extendFrom?: (() => void) | undefined; extendTo?: (() => void) | undefined; changeDates?: ((start: Date, end: Date) => void) | undefined; extendWithScroll?: boolean | undefined; ExtendLeftIconButton?: React.FC<{ onClick: () => void; }> | undefined; ExtendRightIconButton?: React.FC<{ onClick: () => void; }> | undefined; ScrollLeftIconButton?: React.FC<{ onClick: () => void; disabled?: boolean | undefined; }> | undefined; ScrollRightIconButton?: React.FC<{ onClick: () => void; disabled?: boolean | undefined; }> | undefined; goNow?: boolean | undefined; lockNow?: boolean | undefined; GoNowIconButton?: React.FC<{ onClick: () => void; }> | undefined; LockNowIconButton?: React.FC<{ locked: boolean; onClick: () => void; }> | undefined; resizingEvent: CalEvent | null; setResizingEvent: React.Dispatch<React.SetStateAction<CalEvent | null>>; dndCreatingEvent?: boolean | undefined; }>; export declare const Scheduler: ({ activeDate, divisionDetails, resources, events, config, onEventChange, HeaderRow, ResourceCell, ResourceHeader, UnassignedHeader, UnAssignedBoxProps, GridCell, EventTile, extendFrom, extendTo, extendWithScroll, changeDates, ExtendLeftIconButton, ExtendRightIconButton, ScrollLeftIconButton, ScrollRightIconButton, firstDay: firstDayProp, lastDay: lastDayProp, goNow, lockNow, GoNowIconButton, LockNowIconButton, dndCreatingEvent, }: { activeDate: Date; divisionDetails?: DivisionDetail[] | undefined; resources: Resource[]; events: CalEvent[]; config?: Config | undefined; onEventChange?: ((event: CalEvent) => void) | undefined; HeaderRow?: React.FC<{ days: ScheduleDay[]; }> | undefined; ResourceCell?: React.FC<{ resource: Resource; }> | undefined; ResourceHeader?: React.FC<{}> | undefined; UnassignedHeader?: React.FC<{}> | undefined; UnAssignedBoxProps?: BoxProps<"div", {}> | undefined; GridCell?: React.FC<{ layout: GridCellLayout; }> | undefined; EventTile?: React.FC<{ event: CalEvent; }> | undefined; extendFrom?: (() => void) | undefined; extendTo?: (() => void) | undefined; changeDates?: ((start: Date, end: Date) => void) | undefined; extendWithScroll?: boolean | undefined; ExtendLeftIconButton?: React.FC<{ onClick: () => void; }> | undefined; ExtendRightIconButton?: React.FC<{ onClick: () => void; }> | undefined; ScrollLeftIconButton?: React.FC<{ onClick: () => void; disabled?: boolean | undefined; }> | undefined; ScrollRightIconButton?: React.FC<{ onClick: () => void; disabled?: boolean | undefined; }> | undefined; firstDay?: Date | undefined; lastDay?: Date | undefined; goNow?: boolean | undefined; lockNow?: boolean | undefined; GoNowIconButton?: React.FC<{ onClick: () => void; }> | undefined; LockNowIconButton?: React.FC<{ onClick: () => void; }> | undefined; dndCreatingEvent?: boolean | undefined; }) => import("@emotion/react/jsx-runtime").JSX.Element;