jb-date-input
Version:
jalali date input web component
34 lines (33 loc) • 1.79 kB
TypeScript
import { RefObject } from "react";
import type { JBDateInputWebComponent, JBDateInputEventType } from 'jb-date-input';
export type EventProps = {
/**
* when component loaded, in most cases component is already loaded before react mount so you dont need this but if you load web-component dynamically with lazy load it will be called after react mount
*/
onLoad?: (e: JBDateInputEventType<CustomEvent>) => void;
/**
* when all property set and ready to use, in most cases component is already loaded before react mount so you dont need this but if you load web-component dynamically with lazy load it will be called after react mount
*/
onInit?: (e: JBDateInputEventType<CustomEvent>) => void;
/**
* when value changed to invalid value
*/
onInvalid?: (e: JBDateInputEventType<CustomEvent>) => void;
/**
* base on standard js `change` event so it only called on blur. use onInput to get every keyStroke
*/
onChange?: (e: JBDateInputEventType<Event>) => void;
onInput?: (e: JBDateInputEventType<InputEvent>) => void;
onBeforeInput?: (e: JBDateInputEventType<InputEvent>) => void;
onKeyUp?: (e: JBDateInputEventType<KeyboardEvent>) => void;
onKeyPress?: (e: JBDateInputEventType<KeyboardEvent>) => void;
onKeyDown?: (e: JBDateInputEventType<KeyboardEvent>) => void;
onSelect?: (e: JBDateInputEventType<CustomEvent>) => void;
/**
* when user press enter button
*/
onEnter?: (e: JBDateInputEventType<CustomEvent>) => void;
onFocus?: (e: JBDateInputEventType<FocusEvent>) => void;
onBlur?: (e: JBDateInputEventType<FocusEvent>) => void;
};
export declare function useEvents(element: RefObject<JBDateInputWebComponent>, props: EventProps): void;