@@ -4,6 +4,7 @@ import type {
4
4
ComponentPropsOptions ,
5
5
ComponentPublicInstance ,
6
6
ComputedOptions ,
7
+ ComputedRef ,
7
8
DefineComponent ,
8
9
MethodOptions ,
9
10
} from 'vue' ;
@@ -343,17 +344,139 @@ export interface PublicMethods extends MethodOptions {
343
344
toggleMenu : ( ) => void ;
344
345
}
345
346
346
- declare const _default : DefineComponent <
347
- ComponentPropsOptions < VueDatePickerProps > ,
348
- { } ,
349
- { } ,
350
- ComputedOptions ,
351
- PublicMethods ,
352
- ComponentOptionsMixin ,
353
- ComponentOptionsMixin ,
354
- EmitEvents [ ] ,
355
- EmitEvents ,
356
- VueDatePickerProps
347
+ type InternalModelValue = Date | Date [ ] | null ;
348
+ interface InternalTime {
349
+ hours : number | number [ ] ;
350
+ minutes : number | number [ ] ;
351
+ seconds : number | number [ ] ;
352
+ }
353
+
354
+ interface MonthYearOverlay {
355
+ month : number ;
356
+ year : number ;
357
+ items : { text : string ; value : number } [ ] ;
358
+ updateMonthYear : ( month : number , year : number ) => void ;
359
+ instance : number ;
360
+ toggle : ( ) => void ;
361
+ }
362
+
363
+ interface SidebarSlotProps {
364
+ modelValue : InternalModelValue ;
365
+ month ?: ComputedRef < ( instance : number ) => number > ;
366
+ year ?: ComputedRef < ( instance : number ) => number > ;
367
+ time ?: InternalTime ;
368
+ updateTime ?: ( value : number | number [ ] , isHours ?: boolean , isSeconds ?: boolean ) => void ;
369
+ updateMonthYear ?: ( instance : number , val : { month : number ; year : number ; fromNav ?: boolean } ) => void ;
370
+ selectDate ?: ( day : { value : Date } , isNext : boolean = false ) => { } ;
371
+ presetDate ?: ( value : Date [ ] | string [ ] | Date | string , noTz ?: boolea ) => void ;
372
+ getModelMonthYear ?: ( ) => { month : number | null ; year : number | null } [ ] ;
373
+ selectMonth ?: ( month : number , instance : number ) => void ;
374
+ selectYear ?: ( year : number , instance : number ) => void ;
375
+ handleYear ?: ( instance : number , increment ?: boolean ) => void ;
376
+ selectQuarter ?: ( date : Date , instance : number , disabled : boolean ) => void ;
377
+ handleYearSelect ?: ( year : number , instance : number ) => void ;
378
+ }
379
+
380
+ interface Slots {
381
+ 'clock-icon' ( ) : any ;
382
+ 'arrow-left' ( ) : any ;
383
+ 'arrow-right' ( ) : any ;
384
+ 'arrow-up' ( ) : any ;
385
+ 'arrow-down' ( ) : any ;
386
+ 'calendar-icon' ( ) : any ;
387
+ day ( props : { date : Date ; day : number } ) : any ;
388
+ 'month-overlay-value' ( props : { text : string ; value : number } ) : any ;
389
+ 'year-overlay-value' ( props : { text : string ; value : number } ) : any ;
390
+ 'year-overlay' ( props : MonthYearOverlay ) : any ;
391
+ 'month-overlay' ( props : MonthYearOverlay ) : any ;
392
+ 'month-overlay-header' ( props : { toggle : ( ) => void } ) : any ;
393
+ 'year-overlay-header' ( props : { toggle : ( ) => void } ) : any ;
394
+ 'hours-overlay-value' ( props : { text : string ; value : number } ) : any ;
395
+ 'minutes-overlay-value' ( props : { text : string ; value : number } ) : any ;
396
+ 'seconds-overlay-value' ( props : { text : string ; value : number } ) : any ;
397
+ hours ( props : { text : string ; value : number } ) : any ;
398
+ minutes ( props : { text : string ; value : number } ) : any ;
399
+ month ( props : { text : string ; value : number } ) : any ;
400
+ year ( props : { year : number } ) : any ;
401
+ 'action-buttons' ( props : { value : InternalModelValue } ) : any ;
402
+ 'action-preview' ( props : { value : InternalModelValue } ) : any ;
403
+ 'calendar-header' ( props : { day : string ; index : number } ) : any ;
404
+ 'marker-tooltip' ( props : { day : Date ; tooltip : { text ?: string ; html ?: string ; color ?: string } [ ] } ) : any ;
405
+ 'action-extra' ( props : { selectCurrentDate : ( ) => void } ) : any ;
406
+ 'time-picker-overlay' ( props : {
407
+ hours : number | number [ ] ;
408
+ minutes : number | number [ ] ;
409
+ seconds : number | number [ ] ;
410
+ setHours : ( hours : number | number [ ] ) => void ;
411
+ setMinutes : ( minutes : number | number [ ] ) => void ;
412
+ setSeconds : ( seconds : number | number [ ] ) => void ;
413
+ } ) : any ;
414
+ 'am-pm-button' ( props : { toggle : ( ) => void ; value : string } ) : any ;
415
+ 'left-sidebar' ( props : SidebarSlotProps ) : any ;
416
+ 'right-sidebar' ( props : SidebarSlotProps ) : any ;
417
+ 'month-year' ( props : {
418
+ year : number ;
419
+ month ?: number ;
420
+ months ?: { value : number ; text : string ; className ?: Record < string , boolean > } [ ] ;
421
+ years ?: { value : number ; text : string ; className ?: Record < string , boolean > } [ ] ;
422
+ updateMonthYear ?: ( month : number , year : number , fromNav : boolean ) => void ;
423
+ handleMonthYearChange ?: ( isNext : boolean , fromNav = false ) => void ;
424
+ instance ?: number ;
425
+ selectMonth ?: ( month : number , instance : number ) => void ;
426
+ selectYear ?: ( year : number , instance : number ) => void ;
427
+ } ) : any ;
428
+ 'time-picker' ( props : {
429
+ time : InternalTime ;
430
+ updateTime : ( value : number | number [ ] , isHours = true , isSeconds = false ) => void ;
431
+ } ) : any ;
432
+ 'action-row' ( props : {
433
+ internalModelValue : InternalModelValue ;
434
+ disabled : boolean ;
435
+ selectDate : ( ) => void ;
436
+ closePicker : ( ) => void ;
437
+ } ) : any ;
438
+ marker ( props : { marker : DatePickerMarker ; day : number ; date : Date } ) : any ;
439
+ quarter ( props : { value : Date ; text : string } ) : any ;
440
+ 'top-extra' ( props : { value : InternalModelValue } ) : any ;
441
+ trigger ( ) : any ;
442
+ 'input-icon' ( ) : any ;
443
+ 'clear-icon' ( ) : any ;
444
+ 'dp-input' ( props : {
445
+ value : string ;
446
+ isMenuOpen : boolean ;
447
+ onInput : ( ev : string | Event ) => void ;
448
+ onEnter : ( ev : KeyboardEvent ) => void ;
449
+ onTab : ( ev : KeyboardEvent ) => void ;
450
+ onClear : ( ev ?: Event | undefined ) => void ;
451
+ onBlur : ( ) => void ;
452
+ onKeypress : ( ev : KeyboardEvent ) => void ;
453
+ onPaste : ( ) => void ;
454
+ openMenu : ( ) => void ;
455
+ closeMenu : ( ) => void ;
456
+ toggleMenu : ( ) => void ;
457
+ } ) : any ;
458
+ }
459
+
460
+ type __VLS_WithTemplateSlots < T , S > = T & {
461
+ new ( ) : {
462
+ $slots : S ;
463
+ } ;
464
+ } ;
465
+
466
+ declare const _default : __VLS_WithTemplateSlots <
467
+ DefineComponent <
468
+ ComponentPropsOptions < VueDatePickerProps > ,
469
+ { } ,
470
+ { } ,
471
+ ComputedOptions ,
472
+ PublicMethods ,
473
+ ComponentOptionsMixin ,
474
+ ComponentOptionsMixin ,
475
+ EmitEvents [ ] ,
476
+ EmitEvents ,
477
+ VueDatePickerProps
478
+ > ,
479
+ Readonly < Slots > & Slots
357
480
> ;
358
481
359
482
export default _default ;
0 commit comments