/*!
 * devextreme-vue
 * Version: 25.2.7
 * Build date: Tue May 05 2026
 *
 * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
 *
 * This software may be modified and distributed under the terms
 * of the MIT license. See the LICENSE file in the root of the project for details.
 *
 * https://github.com/DevExpress/DevExtreme
 */

import { PropType } from "vue";
import Chat, { Properties } from "devextreme/ui/chat";
import DataSource from "devextreme/data/data_source";
import dxChat from "devextreme/ui/chat";
import UploadInfo from "devextreme/file_management/upload_info";
import { Alert, Message, AttachmentDownloadClickEvent, DisposingEvent, InitializedEvent, MessageDeletedEvent, MessageDeletingEvent, MessageEditCanceledEvent, MessageEditingStartEvent, MessageEnteredEvent, MessageUpdatedEvent, MessageUpdatingEvent, OptionChangedEvent, TypingEndEvent, TypingStartEvent, User, Attachment } from "devextreme/ui/chat";
import { DataSourceOptions } from "devextreme/common/data";
import { Store } from "devextreme/data/store";
import { ValidationStatus } from "devextreme/common";
import { dxFileUploaderOptions, BeforeSendEvent, ContentReadyEvent, DisposingEvent as FileUploaderDisposingEvent, DropZoneEnterEvent, DropZoneLeaveEvent, FilesUploadedEvent, InitializedEvent as FileUploaderInitializedEvent, OptionChangedEvent as FileUploaderOptionChangedEvent, ProgressEvent, UploadAbortedEvent, UploadedEvent, UploadErrorEvent, UploadStartedEvent, ValueChangedEvent, UploadHttpMethod, FileUploadMode } from "devextreme/ui/file_uploader";
type AccessibleOptions = Pick<Properties, "accessKey" | "activeStateEnabled" | "alerts" | "dataSource" | "dayHeaderFormat" | "disabled" | "editing" | "elementAttr" | "emptyViewTemplate" | "fileUploaderOptions" | "focusStateEnabled" | "height" | "hint" | "hoverStateEnabled" | "items" | "messageTemplate" | "messageTimestampFormat" | "onAttachmentDownloadClick" | "onDisposing" | "onInitialized" | "onMessageDeleted" | "onMessageDeleting" | "onMessageEditCanceled" | "onMessageEditingStart" | "onMessageEntered" | "onMessageUpdated" | "onMessageUpdating" | "onOptionChanged" | "onTypingEnd" | "onTypingStart" | "reloadOnChange" | "rtlEnabled" | "showAvatar" | "showDayHeaders" | "showMessageTimestamp" | "showUserName" | "typingUsers" | "user" | "visible" | "width">;
interface DxChat extends AccessibleOptions {
    readonly instance?: Chat;
}
declare const DxChat: import("vue").DefineComponent<{
    accessKey: StringConstructor;
    activeStateEnabled: BooleanConstructor;
    alerts: PropType<Alert[]>;
    dataSource: PropType<string | Record<string, any> | DataSource<any, any> | DataSourceOptions<any, any, any, any> | Store<any, any> | Message[] | null>;
    dayHeaderFormat: PropType<string | Record<string, any> | import("devextreme/common/core/localization").FormatObject | ((value: number | Date) => string) | ((value: Date) => string) | ((value: number) => string) | Intl.DateTimeFormatOptions | Intl.NumberFormatOptions | ((value: number | Date) => string) | undefined>;
    disabled: BooleanConstructor;
    editing: PropType<Record<string, any>>;
    elementAttr: PropType<Record<string, any>>;
    emptyViewTemplate: {};
    fileUploaderOptions: PropType<Record<string, any> | dxFileUploaderOptions>;
    focusStateEnabled: BooleanConstructor;
    height: (NumberConstructor | StringConstructor)[];
    hint: StringConstructor;
    hoverStateEnabled: BooleanConstructor;
    items: PropType<Message[]>;
    messageTemplate: {};
    messageTimestampFormat: PropType<string | Record<string, any> | import("devextreme/common/core/localization").FormatObject | ((value: number | Date) => string) | ((value: Date) => string) | ((value: number) => string) | Intl.DateTimeFormatOptions | Intl.NumberFormatOptions | ((value: number | Date) => string) | undefined>;
    onAttachmentDownloadClick: PropType<(e: AttachmentDownloadClickEvent) => void>;
    onDisposing: PropType<(e: DisposingEvent) => void>;
    onInitialized: PropType<(e: InitializedEvent) => void>;
    onMessageDeleted: PropType<(e: MessageDeletedEvent) => void>;
    onMessageDeleting: PropType<(e: MessageDeletingEvent) => void>;
    onMessageEditCanceled: PropType<(e: MessageEditCanceledEvent) => void>;
    onMessageEditingStart: PropType<(e: MessageEditingStartEvent) => void>;
    onMessageEntered: PropType<(e: MessageEnteredEvent) => void>;
    onMessageUpdated: PropType<(e: MessageUpdatedEvent) => void>;
    onMessageUpdating: PropType<(e: MessageUpdatingEvent) => void>;
    onOptionChanged: PropType<(e: OptionChangedEvent) => void>;
    onTypingEnd: PropType<(e: TypingEndEvent) => void>;
    onTypingStart: PropType<(e: TypingStartEvent) => void>;
    reloadOnChange: BooleanConstructor;
    rtlEnabled: BooleanConstructor;
    showAvatar: BooleanConstructor;
    showDayHeaders: BooleanConstructor;
    showMessageTimestamp: BooleanConstructor;
    showUserName: BooleanConstructor;
    typingUsers: PropType<User[]>;
    user: PropType<Record<string, any> | User>;
    visible: BooleanConstructor;
    width: (NumberConstructor | StringConstructor)[];
}, unknown, unknown, {
    instance(): Chat;
}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:accessKey": null;
    "update:activeStateEnabled": null;
    "update:alerts": null;
    "update:dataSource": null;
    "update:dayHeaderFormat": null;
    "update:disabled": null;
    "update:editing": null;
    "update:elementAttr": null;
    "update:emptyViewTemplate": null;
    "update:fileUploaderOptions": null;
    "update:focusStateEnabled": null;
    "update:height": null;
    "update:hint": null;
    "update:hoverStateEnabled": null;
    "update:items": null;
    "update:messageTemplate": null;
    "update:messageTimestampFormat": null;
    "update:onAttachmentDownloadClick": null;
    "update:onDisposing": null;
    "update:onInitialized": null;
    "update:onMessageDeleted": null;
    "update:onMessageDeleting": null;
    "update:onMessageEditCanceled": null;
    "update:onMessageEditingStart": null;
    "update:onMessageEntered": null;
    "update:onMessageUpdated": null;
    "update:onMessageUpdating": null;
    "update:onOptionChanged": null;
    "update:onTypingEnd": null;
    "update:onTypingStart": null;
    "update:reloadOnChange": null;
    "update:rtlEnabled": null;
    "update:showAvatar": null;
    "update:showDayHeaders": null;
    "update:showMessageTimestamp": null;
    "update:showUserName": null;
    "update:typingUsers": null;
    "update:user": null;
    "update:visible": null;
    "update:width": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    accessKey: StringConstructor;
    activeStateEnabled: BooleanConstructor;
    alerts: PropType<Alert[]>;
    dataSource: PropType<string | Record<string, any> | DataSource<any, any> | DataSourceOptions<any, any, any, any> | Store<any, any> | Message[] | null>;
    dayHeaderFormat: PropType<string | Record<string, any> | import("devextreme/common/core/localization").FormatObject | ((value: number | Date) => string) | ((value: Date) => string) | ((value: number) => string) | Intl.DateTimeFormatOptions | Intl.NumberFormatOptions | ((value: number | Date) => string) | undefined>;
    disabled: BooleanConstructor;
    editing: PropType<Record<string, any>>;
    elementAttr: PropType<Record<string, any>>;
    emptyViewTemplate: {};
    fileUploaderOptions: PropType<Record<string, any> | dxFileUploaderOptions>;
    focusStateEnabled: BooleanConstructor;
    height: (NumberConstructor | StringConstructor)[];
    hint: StringConstructor;
    hoverStateEnabled: BooleanConstructor;
    items: PropType<Message[]>;
    messageTemplate: {};
    messageTimestampFormat: PropType<string | Record<string, any> | import("devextreme/common/core/localization").FormatObject | ((value: number | Date) => string) | ((value: Date) => string) | ((value: number) => string) | Intl.DateTimeFormatOptions | Intl.NumberFormatOptions | ((value: number | Date) => string) | undefined>;
    onAttachmentDownloadClick: PropType<(e: AttachmentDownloadClickEvent) => void>;
    onDisposing: PropType<(e: DisposingEvent) => void>;
    onInitialized: PropType<(e: InitializedEvent) => void>;
    onMessageDeleted: PropType<(e: MessageDeletedEvent) => void>;
    onMessageDeleting: PropType<(e: MessageDeletingEvent) => void>;
    onMessageEditCanceled: PropType<(e: MessageEditCanceledEvent) => void>;
    onMessageEditingStart: PropType<(e: MessageEditingStartEvent) => void>;
    onMessageEntered: PropType<(e: MessageEnteredEvent) => void>;
    onMessageUpdated: PropType<(e: MessageUpdatedEvent) => void>;
    onMessageUpdating: PropType<(e: MessageUpdatingEvent) => void>;
    onOptionChanged: PropType<(e: OptionChangedEvent) => void>;
    onTypingEnd: PropType<(e: TypingEndEvent) => void>;
    onTypingStart: PropType<(e: TypingStartEvent) => void>;
    reloadOnChange: BooleanConstructor;
    rtlEnabled: BooleanConstructor;
    showAvatar: BooleanConstructor;
    showDayHeaders: BooleanConstructor;
    showMessageTimestamp: BooleanConstructor;
    showUserName: BooleanConstructor;
    typingUsers: PropType<User[]>;
    user: PropType<Record<string, any> | User>;
    visible: BooleanConstructor;
    width: (NumberConstructor | StringConstructor)[];
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:disabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:elementAttr"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onDisposing"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onInitialized"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onOptionChanged"?: ((...args: any[]) => any) | undefined;
    "onUpdate:rtlEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:height"?: ((...args: any[]) => any) | undefined;
    "onUpdate:width"?: ((...args: any[]) => any) | undefined;
    "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
    "onUpdate:dataSource"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoverStateEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:items"?: ((...args: any[]) => any) | undefined;
    "onUpdate:accessKey"?: ((...args: any[]) => any) | undefined;
    "onUpdate:activeStateEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:focusStateEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hint"?: ((...args: any[]) => any) | undefined;
    "onUpdate:editing"?: ((...args: any[]) => any) | undefined;
    "onUpdate:alerts"?: ((...args: any[]) => any) | undefined;
    "onUpdate:dayHeaderFormat"?: ((...args: any[]) => any) | undefined;
    "onUpdate:emptyViewTemplate"?: ((...args: any[]) => any) | undefined;
    "onUpdate:fileUploaderOptions"?: ((...args: any[]) => any) | undefined;
    "onUpdate:messageTemplate"?: ((...args: any[]) => any) | undefined;
    "onUpdate:messageTimestampFormat"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onAttachmentDownloadClick"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageDeleted"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageDeleting"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageEditCanceled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageEditingStart"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageEntered"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageUpdated"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onMessageUpdating"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onTypingEnd"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onTypingStart"?: ((...args: any[]) => any) | undefined;
    "onUpdate:reloadOnChange"?: ((...args: any[]) => any) | undefined;
    "onUpdate:showAvatar"?: ((...args: any[]) => any) | undefined;
    "onUpdate:showDayHeaders"?: ((...args: any[]) => any) | undefined;
    "onUpdate:showMessageTimestamp"?: ((...args: any[]) => any) | undefined;
    "onUpdate:showUserName"?: ((...args: any[]) => any) | undefined;
    "onUpdate:typingUsers"?: ((...args: any[]) => any) | undefined;
    "onUpdate:user"?: ((...args: any[]) => any) | undefined;
}, {
    disabled: boolean;
    rtlEnabled: boolean;
    visible: boolean;
    hoverStateEnabled: boolean;
    activeStateEnabled: boolean;
    focusStateEnabled: boolean;
    reloadOnChange: boolean;
    showAvatar: boolean;
    showDayHeaders: boolean;
    showMessageTimestamp: boolean;
    showUserName: boolean;
}>;
declare const DxAlert: import("vue").DefineComponent<{
    id: (NumberConstructor | StringConstructor)[];
    message: StringConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:id": null;
    "update:message": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    id: (NumberConstructor | StringConstructor)[];
    message: StringConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:message"?: ((...args: any[]) => any) | undefined;
    "onUpdate:id"?: ((...args: any[]) => any) | undefined;
}, {}>;
declare const DxAttachment: import("vue").DefineComponent<{
    name: StringConstructor;
    size: NumberConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:name": null;
    "update:size": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    name: StringConstructor;
    size: NumberConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:size"?: ((...args: any[]) => any) | undefined;
    "onUpdate:name"?: ((...args: any[]) => any) | undefined;
}, {}>;
declare const DxAuthor: import("vue").DefineComponent<{
    avatarAlt: StringConstructor;
    avatarUrl: StringConstructor;
    id: (NumberConstructor | StringConstructor)[];
    name: StringConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:avatarAlt": null;
    "update:avatarUrl": null;
    "update:id": null;
    "update:name": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    avatarAlt: StringConstructor;
    avatarUrl: StringConstructor;
    id: (NumberConstructor | StringConstructor)[];
    name: StringConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:name"?: ((...args: any[]) => any) | undefined;
    "onUpdate:id"?: ((...args: any[]) => any) | undefined;
    "onUpdate:avatarAlt"?: ((...args: any[]) => any) | undefined;
    "onUpdate:avatarUrl"?: ((...args: any[]) => any) | undefined;
}, {}>;
declare const DxDayHeaderFormat: import("vue").DefineComponent<{
    currency: StringConstructor;
    formatter: PropType<(value: number | Date) => string>;
    parser: PropType<(value: string) => number | Date>;
    precision: NumberConstructor;
    type: PropType<string>;
    useCurrencyAccountingStyle: BooleanConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:currency": null;
    "update:formatter": null;
    "update:parser": null;
    "update:precision": null;
    "update:type": null;
    "update:useCurrencyAccountingStyle": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    currency: StringConstructor;
    formatter: PropType<(value: number | Date) => string>;
    parser: PropType<(value: string) => number | Date>;
    precision: NumberConstructor;
    type: PropType<string>;
    useCurrencyAccountingStyle: BooleanConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:type"?: ((...args: any[]) => any) | undefined;
    "onUpdate:currency"?: ((...args: any[]) => any) | undefined;
    "onUpdate:formatter"?: ((...args: any[]) => any) | undefined;
    "onUpdate:parser"?: ((...args: any[]) => any) | undefined;
    "onUpdate:precision"?: ((...args: any[]) => any) | undefined;
    "onUpdate:useCurrencyAccountingStyle"?: ((...args: any[]) => any) | undefined;
}, {
    useCurrencyAccountingStyle: boolean;
}>;
declare const DxEditing: import("vue").DefineComponent<{
    allowDeleting: PropType<boolean | ((options: {
        component: dxChat;
        message: Message;
    }) => boolean)>;
    allowUpdating: PropType<boolean | ((options: {
        component: dxChat;
        message: Message;
    }) => boolean)>;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:allowDeleting": null;
    "update:allowUpdating": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    allowDeleting: PropType<boolean | ((options: {
        component: dxChat;
        message: Message;
    }) => boolean)>;
    allowUpdating: PropType<boolean | ((options: {
        component: dxChat;
        message: Message;
    }) => boolean)>;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:allowDeleting"?: ((...args: any[]) => any) | undefined;
    "onUpdate:allowUpdating"?: ((...args: any[]) => any) | undefined;
}, {}>;
declare const DxFileUploaderOptions: import("vue").DefineComponent<{
    abortUpload: PropType<(file: any, uploadInfo?: UploadInfo) => any>;
    accept: StringConstructor;
    accessKey: StringConstructor;
    activeStateEnabled: BooleanConstructor;
    allowCanceling: BooleanConstructor;
    allowedFileExtensions: PropType<string[]>;
    chunkSize: NumberConstructor;
    dialogTrigger: {};
    disabled: BooleanConstructor;
    dropZone: {};
    elementAttr: PropType<Record<string, any>>;
    focusStateEnabled: BooleanConstructor;
    height: (NumberConstructor | StringConstructor)[];
    hint: StringConstructor;
    hoverStateEnabled: BooleanConstructor;
    inputAttr: {};
    invalidFileExtensionMessage: StringConstructor;
    invalidMaxFileSizeMessage: StringConstructor;
    invalidMinFileSizeMessage: StringConstructor;
    isDirty: BooleanConstructor;
    isValid: BooleanConstructor;
    labelText: StringConstructor;
    maxFileSize: NumberConstructor;
    minFileSize: NumberConstructor;
    multiple: BooleanConstructor;
    name: StringConstructor;
    onBeforeSend: PropType<(e: BeforeSendEvent) => void>;
    onContentReady: PropType<(e: ContentReadyEvent) => void>;
    onDisposing: PropType<(e: FileUploaderDisposingEvent) => void>;
    onDropZoneEnter: PropType<(e: DropZoneEnterEvent) => void>;
    onDropZoneLeave: PropType<(e: DropZoneLeaveEvent) => void>;
    onFilesUploaded: PropType<(e: FilesUploadedEvent) => void>;
    onInitialized: PropType<(e: FileUploaderInitializedEvent) => void>;
    onOptionChanged: PropType<(e: FileUploaderOptionChangedEvent) => void>;
    onProgress: PropType<(e: ProgressEvent) => void>;
    onUploadAborted: PropType<(e: UploadAbortedEvent) => void>;
    onUploaded: PropType<(e: UploadedEvent) => void>;
    onUploadError: PropType<(e: UploadErrorEvent) => void>;
    onUploadStarted: PropType<(e: UploadStartedEvent) => void>;
    onValueChanged: PropType<(e: ValueChangedEvent) => void>;
    progress: NumberConstructor;
    readOnly: BooleanConstructor;
    readyToUploadMessage: StringConstructor;
    rtlEnabled: BooleanConstructor;
    selectButtonText: StringConstructor;
    showFileList: BooleanConstructor;
    tabIndex: NumberConstructor;
    uploadAbortedMessage: StringConstructor;
    uploadButtonText: StringConstructor;
    uploadChunk: PropType<(file: any, uploadInfo: UploadInfo) => any>;
    uploadCustomData: {};
    uploadedMessage: StringConstructor;
    uploadFailedMessage: StringConstructor;
    uploadFile: PropType<(file: any, progressCallback: (() => void)) => any>;
    uploadHeaders: {};
    uploadMethod: PropType<UploadHttpMethod>;
    uploadMode: PropType<FileUploadMode>;
    uploadUrl: StringConstructor;
    validationError: {};
    validationErrors: PropType<any[]>;
    validationStatus: PropType<ValidationStatus>;
    value: PropType<any[]>;
    visible: BooleanConstructor;
    width: (NumberConstructor | StringConstructor)[];
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:abortUpload": null;
    "update:accept": null;
    "update:accessKey": null;
    "update:activeStateEnabled": null;
    "update:allowCanceling": null;
    "update:allowedFileExtensions": null;
    "update:chunkSize": null;
    "update:dialogTrigger": null;
    "update:disabled": null;
    "update:dropZone": null;
    "update:elementAttr": null;
    "update:focusStateEnabled": null;
    "update:height": null;
    "update:hint": null;
    "update:hoverStateEnabled": null;
    "update:inputAttr": null;
    "update:invalidFileExtensionMessage": null;
    "update:invalidMaxFileSizeMessage": null;
    "update:invalidMinFileSizeMessage": null;
    "update:isDirty": null;
    "update:isValid": null;
    "update:labelText": null;
    "update:maxFileSize": null;
    "update:minFileSize": null;
    "update:multiple": null;
    "update:name": null;
    "update:onBeforeSend": null;
    "update:onContentReady": null;
    "update:onDisposing": null;
    "update:onDropZoneEnter": null;
    "update:onDropZoneLeave": null;
    "update:onFilesUploaded": null;
    "update:onInitialized": null;
    "update:onOptionChanged": null;
    "update:onProgress": null;
    "update:onUploadAborted": null;
    "update:onUploaded": null;
    "update:onUploadError": null;
    "update:onUploadStarted": null;
    "update:onValueChanged": null;
    "update:progress": null;
    "update:readOnly": null;
    "update:readyToUploadMessage": null;
    "update:rtlEnabled": null;
    "update:selectButtonText": null;
    "update:showFileList": null;
    "update:tabIndex": null;
    "update:uploadAbortedMessage": null;
    "update:uploadButtonText": null;
    "update:uploadChunk": null;
    "update:uploadCustomData": null;
    "update:uploadedMessage": null;
    "update:uploadFailedMessage": null;
    "update:uploadFile": null;
    "update:uploadHeaders": null;
    "update:uploadMethod": null;
    "update:uploadMode": null;
    "update:uploadUrl": null;
    "update:validationError": null;
    "update:validationErrors": null;
    "update:validationStatus": null;
    "update:value": null;
    "update:visible": null;
    "update:width": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    abortUpload: PropType<(file: any, uploadInfo?: UploadInfo) => any>;
    accept: StringConstructor;
    accessKey: StringConstructor;
    activeStateEnabled: BooleanConstructor;
    allowCanceling: BooleanConstructor;
    allowedFileExtensions: PropType<string[]>;
    chunkSize: NumberConstructor;
    dialogTrigger: {};
    disabled: BooleanConstructor;
    dropZone: {};
    elementAttr: PropType<Record<string, any>>;
    focusStateEnabled: BooleanConstructor;
    height: (NumberConstructor | StringConstructor)[];
    hint: StringConstructor;
    hoverStateEnabled: BooleanConstructor;
    inputAttr: {};
    invalidFileExtensionMessage: StringConstructor;
    invalidMaxFileSizeMessage: StringConstructor;
    invalidMinFileSizeMessage: StringConstructor;
    isDirty: BooleanConstructor;
    isValid: BooleanConstructor;
    labelText: StringConstructor;
    maxFileSize: NumberConstructor;
    minFileSize: NumberConstructor;
    multiple: BooleanConstructor;
    name: StringConstructor;
    onBeforeSend: PropType<(e: BeforeSendEvent) => void>;
    onContentReady: PropType<(e: ContentReadyEvent) => void>;
    onDisposing: PropType<(e: FileUploaderDisposingEvent) => void>;
    onDropZoneEnter: PropType<(e: DropZoneEnterEvent) => void>;
    onDropZoneLeave: PropType<(e: DropZoneLeaveEvent) => void>;
    onFilesUploaded: PropType<(e: FilesUploadedEvent) => void>;
    onInitialized: PropType<(e: FileUploaderInitializedEvent) => void>;
    onOptionChanged: PropType<(e: FileUploaderOptionChangedEvent) => void>;
    onProgress: PropType<(e: ProgressEvent) => void>;
    onUploadAborted: PropType<(e: UploadAbortedEvent) => void>;
    onUploaded: PropType<(e: UploadedEvent) => void>;
    onUploadError: PropType<(e: UploadErrorEvent) => void>;
    onUploadStarted: PropType<(e: UploadStartedEvent) => void>;
    onValueChanged: PropType<(e: ValueChangedEvent) => void>;
    progress: NumberConstructor;
    readOnly: BooleanConstructor;
    readyToUploadMessage: StringConstructor;
    rtlEnabled: BooleanConstructor;
    selectButtonText: StringConstructor;
    showFileList: BooleanConstructor;
    tabIndex: NumberConstructor;
    uploadAbortedMessage: StringConstructor;
    uploadButtonText: StringConstructor;
    uploadChunk: PropType<(file: any, uploadInfo: UploadInfo) => any>;
    uploadCustomData: {};
    uploadedMessage: StringConstructor;
    uploadFailedMessage: StringConstructor;
    uploadFile: PropType<(file: any, progressCallback: (() => void)) => any>;
    uploadHeaders: {};
    uploadMethod: PropType<UploadHttpMethod>;
    uploadMode: PropType<FileUploadMode>;
    uploadUrl: StringConstructor;
    validationError: {};
    validationErrors: PropType<any[]>;
    validationStatus: PropType<ValidationStatus>;
    value: PropType<any[]>;
    visible: BooleanConstructor;
    width: (NumberConstructor | StringConstructor)[];
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:disabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:elementAttr"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onDisposing"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onInitialized"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onOptionChanged"?: ((...args: any[]) => any) | undefined;
    "onUpdate:rtlEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:height"?: ((...args: any[]) => any) | undefined;
    "onUpdate:name"?: ((...args: any[]) => any) | undefined;
    "onUpdate:width"?: ((...args: any[]) => any) | undefined;
    "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoverStateEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onContentReady"?: ((...args: any[]) => any) | undefined;
    "onUpdate:accessKey"?: ((...args: any[]) => any) | undefined;
    "onUpdate:activeStateEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:focusStateEnabled"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hint"?: ((...args: any[]) => any) | undefined;
    "onUpdate:tabIndex"?: ((...args: any[]) => any) | undefined;
    "onUpdate:inputAttr"?: ((...args: any[]) => any) | undefined;
    "onUpdate:isDirty"?: ((...args: any[]) => any) | undefined;
    "onUpdate:isValid"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onValueChanged"?: ((...args: any[]) => any) | undefined;
    "onUpdate:readOnly"?: ((...args: any[]) => any) | undefined;
    "onUpdate:validationError"?: ((...args: any[]) => any) | undefined;
    "onUpdate:validationErrors"?: ((...args: any[]) => any) | undefined;
    "onUpdate:validationStatus"?: ((...args: any[]) => any) | undefined;
    "onUpdate:value"?: ((...args: any[]) => any) | undefined;
    "onUpdate:multiple"?: ((...args: any[]) => any) | undefined;
    "onUpdate:abortUpload"?: ((...args: any[]) => any) | undefined;
    "onUpdate:accept"?: ((...args: any[]) => any) | undefined;
    "onUpdate:allowCanceling"?: ((...args: any[]) => any) | undefined;
    "onUpdate:allowedFileExtensions"?: ((...args: any[]) => any) | undefined;
    "onUpdate:chunkSize"?: ((...args: any[]) => any) | undefined;
    "onUpdate:dialogTrigger"?: ((...args: any[]) => any) | undefined;
    "onUpdate:dropZone"?: ((...args: any[]) => any) | undefined;
    "onUpdate:invalidFileExtensionMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:invalidMaxFileSizeMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:invalidMinFileSizeMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:labelText"?: ((...args: any[]) => any) | undefined;
    "onUpdate:maxFileSize"?: ((...args: any[]) => any) | undefined;
    "onUpdate:minFileSize"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onBeforeSend"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onDropZoneEnter"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onDropZoneLeave"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onFilesUploaded"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onProgress"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onUploadAborted"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onUploaded"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onUploadError"?: ((...args: any[]) => any) | undefined;
    "onUpdate:onUploadStarted"?: ((...args: any[]) => any) | undefined;
    "onUpdate:progress"?: ((...args: any[]) => any) | undefined;
    "onUpdate:readyToUploadMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:selectButtonText"?: ((...args: any[]) => any) | undefined;
    "onUpdate:showFileList"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadAbortedMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadButtonText"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadChunk"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadCustomData"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadedMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadFailedMessage"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadFile"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadHeaders"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadMethod"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadMode"?: ((...args: any[]) => any) | undefined;
    "onUpdate:uploadUrl"?: ((...args: any[]) => any) | undefined;
}, {
    disabled: boolean;
    rtlEnabled: boolean;
    visible: boolean;
    multiple: boolean;
    hoverStateEnabled: boolean;
    activeStateEnabled: boolean;
    focusStateEnabled: boolean;
    isDirty: boolean;
    isValid: boolean;
    readOnly: boolean;
    allowCanceling: boolean;
    showFileList: boolean;
}>;
declare const DxItem: import("vue").DefineComponent<{
    alt: StringConstructor;
    attachments: PropType<Attachment[]>;
    author: PropType<Record<string, any> | User>;
    id: (NumberConstructor | StringConstructor)[];
    isDeleted: BooleanConstructor;
    isEdited: BooleanConstructor;
    src: StringConstructor;
    text: StringConstructor;
    timestamp: (DateConstructor | NumberConstructor | StringConstructor)[];
    type: StringConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:alt": null;
    "update:attachments": null;
    "update:author": null;
    "update:id": null;
    "update:isDeleted": null;
    "update:isEdited": null;
    "update:src": null;
    "update:text": null;
    "update:timestamp": null;
    "update:type": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    alt: StringConstructor;
    attachments: PropType<Attachment[]>;
    author: PropType<Record<string, any> | User>;
    id: (NumberConstructor | StringConstructor)[];
    isDeleted: BooleanConstructor;
    isEdited: BooleanConstructor;
    src: StringConstructor;
    text: StringConstructor;
    timestamp: (DateConstructor | NumberConstructor | StringConstructor)[];
    type: StringConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:text"?: ((...args: any[]) => any) | undefined;
    "onUpdate:type"?: ((...args: any[]) => any) | undefined;
    "onUpdate:id"?: ((...args: any[]) => any) | undefined;
    "onUpdate:src"?: ((...args: any[]) => any) | undefined;
    "onUpdate:alt"?: ((...args: any[]) => any) | undefined;
    "onUpdate:attachments"?: ((...args: any[]) => any) | undefined;
    "onUpdate:author"?: ((...args: any[]) => any) | undefined;
    "onUpdate:isDeleted"?: ((...args: any[]) => any) | undefined;
    "onUpdate:isEdited"?: ((...args: any[]) => any) | undefined;
    "onUpdate:timestamp"?: ((...args: any[]) => any) | undefined;
}, {
    isDeleted: boolean;
    isEdited: boolean;
}>;
declare const DxMessageTimestampFormat: import("vue").DefineComponent<{
    currency: StringConstructor;
    formatter: PropType<(value: number | Date) => string>;
    parser: PropType<(value: string) => number | Date>;
    precision: NumberConstructor;
    type: PropType<string>;
    useCurrencyAccountingStyle: BooleanConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:currency": null;
    "update:formatter": null;
    "update:parser": null;
    "update:precision": null;
    "update:type": null;
    "update:useCurrencyAccountingStyle": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    currency: StringConstructor;
    formatter: PropType<(value: number | Date) => string>;
    parser: PropType<(value: string) => number | Date>;
    precision: NumberConstructor;
    type: PropType<string>;
    useCurrencyAccountingStyle: BooleanConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:type"?: ((...args: any[]) => any) | undefined;
    "onUpdate:currency"?: ((...args: any[]) => any) | undefined;
    "onUpdate:formatter"?: ((...args: any[]) => any) | undefined;
    "onUpdate:parser"?: ((...args: any[]) => any) | undefined;
    "onUpdate:precision"?: ((...args: any[]) => any) | undefined;
    "onUpdate:useCurrencyAccountingStyle"?: ((...args: any[]) => any) | undefined;
}, {
    useCurrencyAccountingStyle: boolean;
}>;
declare const DxTypingUser: import("vue").DefineComponent<{
    avatarAlt: StringConstructor;
    avatarUrl: StringConstructor;
    id: (NumberConstructor | StringConstructor)[];
    name: StringConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:avatarAlt": null;
    "update:avatarUrl": null;
    "update:id": null;
    "update:name": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    avatarAlt: StringConstructor;
    avatarUrl: StringConstructor;
    id: (NumberConstructor | StringConstructor)[];
    name: StringConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:name"?: ((...args: any[]) => any) | undefined;
    "onUpdate:id"?: ((...args: any[]) => any) | undefined;
    "onUpdate:avatarAlt"?: ((...args: any[]) => any) | undefined;
    "onUpdate:avatarUrl"?: ((...args: any[]) => any) | undefined;
}, {}>;
declare const DxUser: import("vue").DefineComponent<{
    avatarAlt: StringConstructor;
    avatarUrl: StringConstructor;
    id: (NumberConstructor | StringConstructor)[];
    name: StringConstructor;
}, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:isActive": null;
    "update:hoveredElement": null;
    "update:avatarAlt": null;
    "update:avatarUrl": null;
    "update:id": null;
    "update:name": null;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    avatarAlt: StringConstructor;
    avatarUrl: StringConstructor;
    id: (NumberConstructor | StringConstructor)[];
    name: StringConstructor;
}>> & {
    "onUpdate:isActive"?: ((...args: any[]) => any) | undefined;
    "onUpdate:hoveredElement"?: ((...args: any[]) => any) | undefined;
    "onUpdate:name"?: ((...args: any[]) => any) | undefined;
    "onUpdate:id"?: ((...args: any[]) => any) | undefined;
    "onUpdate:avatarAlt"?: ((...args: any[]) => any) | undefined;
    "onUpdate:avatarUrl"?: ((...args: any[]) => any) | undefined;
}, {}>;
export default DxChat;
export { DxChat, DxAlert, DxAttachment, DxAuthor, DxDayHeaderFormat, DxEditing, DxFileUploaderOptions, DxItem, DxMessageTimestampFormat, DxTypingUser, DxUser };
import type * as DxChatTypes from "devextreme/ui/chat_types";
export { DxChatTypes };
