/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { DialogCloseEvent } from './events'; import { PropType } from 'vue'; /** * Represents the props of the [KendoVue Dialog component]({% slug overview_dialog %}). */ export interface DialogProps { /** * Defines the string selector to the element to which the Dialog will be appended. Defaults to its parent element. */ appendTo?: string; /** * Sets the title of the Dialog ([see example]({% slug title_dialog %})). If `title` is not specified, the Dialog does not render a **Close** button. */ title?: string | any; /** * Defines the custom rendering of the title. Accepts a Vue component, a `render` function, or a slot name. */ titleRender?: string | Function | object | boolean; /** * Sets a class of the Dialog DOM element. */ className?: string; /** * Specifies whether a close button should be rendered at the top corner of the dialog. */ closeIcon?: boolean; /** * Specifies the width of the Dialog ([see example]({% slug dimensions_dialog %})). */ width?: number | string; /** * Specifies the height of the Dialog ([see example]({% slug dimensions_dialog %})). */ height?: number | string; /** * Specifies the minimum width of the Dialog. */ minWidth?: number | string; /** * Specifies the theme color of the Dialog. The available options are `primary`, `dark`, and `light`. */ themeColor?: 'primary' | 'dark' | 'light' | string; /** * Fires when the **Close** button in the title is clicked or when the `Esc` button is pressed. */ onClose?: (event: DialogCloseEvent) => void; /** * Fires when modal overlay of the Window is clicked. */ onOverlayclick?: (event: any) => void; /** * Sets the `aria-labelledby` value. */ id?: string; /** * Sets the `id` of the wrapper element. */ wrapperId?: string; /** * Represents the `dir` HTML attribute. */ dir?: string; /** * The styles that are applied to the Dialog. */ style?: any; /** * The styles that are applied to the content of the Dialog. */ contentStyle?: any; dialogClass?: string; } /** * @hidden */ declare const Dialog: import('vue').DefineComponent; title: PropType; titleRender: PropType; id: PropType; wrapperId: PropType; dir: PropType; closeIcon: { type: PropType; default: boolean; }; width: PropType; height: PropType; minWidth: PropType; className: PropType; dialogClass: PropType; themeColor: { type: PropType; validator: (value: any) => any; }; onClose: PropType<(event: DialogCloseEvent) => void>; }>, {}, { showLicenseWatermark: boolean; licenseMessage: any; }, { wrapperClass(): { [x: number]: any; 'k-dialog-wrapper': boolean; }; dialogElementClass(): { [x: string]: any; [x: number]: any; 'k-window': boolean; 'k-dialog': boolean; }; }, { handleCloseDialog(event: any): void; handleKeyDown(event: any): void; transformDimesion(initialValue: string | number | undefined): string; getActionBarIndex(children: any): any; generateTitleId(): string; generateContentId(): string; handleClick(e: any): void; }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { close: (event: DialogCloseEvent) => true; overlayclick: any; }, string, import('vue').PublicProps, Readonly; title: PropType; titleRender: PropType; id: PropType; wrapperId: PropType; dir: PropType; closeIcon: { type: PropType; default: boolean; }; width: PropType; height: PropType; minWidth: PropType; className: PropType; dialogClass: PropType; themeColor: { type: PropType; validator: (value: any) => any; }; onClose: PropType<(event: DialogCloseEvent) => void>; }>> & Readonly<{ onClose?: (event: DialogCloseEvent) => any; onOverlayclick?: (...args: any[] | unknown[]) => any; }>, { closeIcon: boolean; }, {}, {}, {}, string, () => { kCurrentZIndex: number; }, true, {}, any>; export { Dialog };