/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
import { CellContext, SelectionRange, ViewService } from '../models/main';
import { BusViewService } from '../services/main';
import { PropType } from 'vue';
/**
 * @hidden
 */
export interface ViewEventArguments {
    event?: any;
    value: Date;
    target: any;
}
/**
 * @hidden
 */
export interface ViewWeekCellEventArguments {
    event?: any;
    value: number | null;
}
/**
 * @hidden
 */
export interface ViewWeekNameEventArguments {
    event?: any;
    value: string | null;
}
/**
 * @hidden
 */
export interface ViewDimensions {
    headerHight: number;
    offsetHeight: number;
}
/**
 * @hidden
 */
export interface ViewProps {
    activeRangeEnd?: string;
    activeView: number;
    bus: BusViewService;
    cellUID: string;
    direction?: 'horizontal' | 'vertical';
    isActive: boolean;
    focusedDate: Date;
    weekCell?: any;
    max: Date;
    min: Date;
    cell?: any;
    selectedDate: Date | Date[] | null;
    selectionRange?: SelectionRange;
    service: ViewService;
    showWeekNumbers?: boolean;
    viewDate: Date;
    onChange?: (args: ViewEventArguments) => void;
    onWeekcellclick?: (args: ViewWeekCellEventArguments) => void;
    onCellenter?: (value: Date) => void;
    onViewmousedown?: (args: ViewEventArguments) => void;
}
/**
 * @hidden
 */
export interface ViewComputed {
    [key: string]: any;
    isMonthView?: boolean;
    weekNumber?: boolean;
    isHorizontal?: boolean;
}
/**
 * @hidden
 */
declare const View: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    activeRangeEnd: {
        type: PropType<string>;
    };
    activeView: {
        type: PropType<number>;
        required: true;
    };
    cell: PropType<any>;
    cellUID: {
        type: PropType<string>;
        required: true;
    };
    direction: {
        type: PropType<"horizontal" | "vertical">;
        default: string;
    };
    isActive: {
        type: PropType<boolean>;
        default: any;
    };
    focusedDate: {
        type: PropType<Date>;
        required: true;
    };
    max: {
        type: PropType<Date>;
        required: true;
    };
    min: {
        type: PropType<Date>;
        required: true;
    };
    selectedDate: {
        type: PropType<Date | Date[]>;
        default: () => Date;
    };
    selectionRange: PropType<SelectionRange>;
    showWeekNumbers: {
        type: PropType<boolean>;
        default: boolean;
    };
    viewDate: {
        type: PropType<Date>;
        required: true;
    };
    weekCell: PropType<any>;
    bus: PropType<BusViewService>;
    service: PropType<ViewService>;
    onChange: PropType<(args: ViewEventArguments) => void>;
    onWeekcellclick: PropType<(args: ViewWeekCellEventArguments) => void>;
    onCellenter: PropType<(value: Date) => void>;
    onViewmousedown: PropType<(args: ViewEventArguments) => void>;
}>, {
    kendoIntlService: {};
}, {}, {
    isHorizontal(): ViewComputed['isHorizontal'];
    isMonthView(): ViewComputed['isMonthView'];
    weekNumber(): ViewComputed['weekNumber'];
}, {
    getWeekNumber(date: Date): number | null;
    firstDate(row: any): any;
    firstWeekDateContext(rowCtx: CellContext[]): CellContext | null;
    handleClick(value: Date, event: any): void;
    handleWeekCellClick(value: number | null, event: any): void;
    handleMouseDown(value: Date, event: any): void;
    handleMouseEnter(value: Date): void;
    handleMouseLeave(value: Date): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    activeRangeEnd: {
        type: PropType<string>;
    };
    activeView: {
        type: PropType<number>;
        required: true;
    };
    cell: PropType<any>;
    cellUID: {
        type: PropType<string>;
        required: true;
    };
    direction: {
        type: PropType<"horizontal" | "vertical">;
        default: string;
    };
    isActive: {
        type: PropType<boolean>;
        default: any;
    };
    focusedDate: {
        type: PropType<Date>;
        required: true;
    };
    max: {
        type: PropType<Date>;
        required: true;
    };
    min: {
        type: PropType<Date>;
        required: true;
    };
    selectedDate: {
        type: PropType<Date | Date[]>;
        default: () => Date;
    };
    selectionRange: PropType<SelectionRange>;
    showWeekNumbers: {
        type: PropType<boolean>;
        default: boolean;
    };
    viewDate: {
        type: PropType<Date>;
        required: true;
    };
    weekCell: PropType<any>;
    bus: PropType<BusViewService>;
    service: PropType<ViewService>;
    onChange: PropType<(args: ViewEventArguments) => void>;
    onWeekcellclick: PropType<(args: ViewWeekCellEventArguments) => void>;
    onCellenter: PropType<(value: Date) => void>;
    onViewmousedown: PropType<(args: ViewEventArguments) => void>;
}>> & Readonly<{}>, {
    direction: "horizontal" | "vertical";
    selectedDate: Date | Date[];
    isActive: boolean;
    showWeekNumbers: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export { View };
