639a070f14776d2a6cb0cd94b8a70227de78a9519c9f8bd4ddf5e6bf6e14e936f9e87d584d59df48b0c58b11fffb6e2e7b22532c0bc37a778aeba4ce90e416 1.8 KB

1234567891011121314151617181920212223242526272829303132
  1. import type { Dayjs } from 'dayjs';
  2. import type { DateModelType, DayOrDays, ModelValueType, PickerOptions, SingleOrRange, UserInput } from '../common/props';
  3. interface CommonPickerProps {
  4. modelValue: ModelValueType | null;
  5. valueFormat?: string;
  6. }
  7. type CommonPickerEmits = (event: 'update:modelValue' | 'calendar-change' | 'panel-change', ...args: any[]) => void;
  8. export declare const useCommonPicker: <P extends CommonPickerProps, E extends CommonPickerEmits>(props: P, emit: E) => {
  9. parsedValue: import("vue").ComputedRef<DayOrDays>;
  10. pickerActualVisible: import("vue").Ref<boolean>;
  11. pickerOptions: import("vue").Ref<{
  12. isValidValue?: ((date: DayOrDays) => boolean) | undefined;
  13. handleKeydownInput?: ((event: KeyboardEvent) => void) | undefined;
  14. parseUserInput?: ((value: UserInput) => DayOrDays) | undefined;
  15. formatToString?: ((value: DayOrDays) => UserInput) | undefined;
  16. getRangeAvailableTime?: ((date: DayOrDays) => DayOrDays) | undefined;
  17. getDefaultValue?: (() => DayOrDays) | undefined;
  18. panelReady?: boolean | undefined;
  19. handleClear?: (() => void) | undefined;
  20. handleFocusPicker?: (() => void) | undefined;
  21. }>;
  22. pickerVisible: import("vue").Ref<boolean>;
  23. userInput: import("vue").Ref<UserInput>;
  24. valueIsEmpty: import("vue").ComputedRef<boolean>;
  25. emitInput: (input: SingleOrRange<DateModelType> | null) => void;
  26. onCalendarChange: (e: [Date, null | Date]) => void;
  27. onPanelChange: (value: [Dayjs, Dayjs], mode: "month" | "year", view: unknown) => void;
  28. onPick: (date?: any, visible?: boolean) => void;
  29. onSetPickerOption: <T extends keyof PickerOptions>(e: [T, PickerOptions[T]]) => void;
  30. };
  31. export type CommonPickerContext = ReturnType<typeof useCommonPicker>;
  32. export {};