hwc
Version:
A react Headless Week Calendar toolkit to build calendars like Google Calendar.
29 lines (28 loc) • 1.26 kB
TypeScript
import React from 'react';
import { GripPosition } from '../components/GripRenderer';
import { HwcEvent, Pos } from '../types';
export declare type IHwcContext<EvType extends HwcEvent> = {
pos: Pos;
date: Date;
startDay: Date;
daysCount: number;
cellHeight: number;
cellWidth: number;
events: EvType[];
setPos: (pos: Pos) => void;
setWidth: (width: number) => void;
shadowEvent?: HwcEvent;
setStartDragDate: (date?: Date) => void;
setEventMoving: (index?: number) => void;
setEventResizing: (index?: number, grip?: GripPosition) => void;
addEvent: (ev: HwcEvent) => void;
updateEvent: (eventIndex: number, newEvent: EvType, previousEvent: EvType) => void;
};
export declare const HwcContext: React.Context<IHwcContext<HwcEvent> | null>;
export declare const OldHwcProvider: React.Provider<IHwcContext<HwcEvent> | null>;
export declare type HwcProviderProps<EvType extends HwcEvent> = {
value: IHwcContext<EvType>;
children?: React.ReactNode;
};
export declare const HwcProvider: <EvType extends HwcEvent>({ value, children, }: HwcProviderProps<EvType>) => React.ReactElement;
export declare const useHwcContext: <EvType extends HwcEvent>() => IHwcContext<EvType>;