/*! * devextreme-angular * Version: 25.2.6 * Build date: Mon Mar 30 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 { TransferState, ElementRef, NgZone, OnDestroy, EventEmitter, OnChanges, DoCheck, SimpleChanges, QueryList } from '@angular/core'; import DataSource from 'devextreme/data/data_source'; import dxChat from 'devextreme/ui/chat'; import { Alert, Message, AttachmentDownloadClickEvent, DisposingEvent, InitializedEvent, MessageDeletedEvent, MessageDeletingEvent, MessageEditCanceledEvent, MessageEditingStartEvent, MessageEnteredEvent, MessageUpdatedEvent, MessageUpdatingEvent, OptionChangedEvent, TypingEndEvent, TypingStartEvent, User } from 'devextreme/ui/chat'; import { DataSourceOptions } from 'devextreme/data/data_source'; import { Store } from 'devextreme/data/store'; import { Format } from 'devextreme/common/core/localization'; import { dxFileUploaderOptions } from 'devextreme/ui/file_uploader'; import DxChat from 'devextreme/ui/chat'; import { DxComponent, DxTemplateHost, NestedOptionHost, IterableDifferHelper, WatcherHelper, CollectionNestedOption } from 'devextreme-angular/core'; import type * as DxChatTypes from "devextreme/ui/chat_types"; import * as i0 from "@angular/core"; import * as i1 from "devextreme-angular/ui/nested"; import * as i2 from "devextreme-angular/ui/chat/nested"; import * as i3 from "devextreme-angular/core"; /** * The Chat UI component is an interactive interface that allows users to send and receive messages in real time. */ export declare class DxChatComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck { private _watcherHelper; private _idh; set _alertsContentChildren(value: QueryList); set _attachmentsContentChildren(value: QueryList); set _itemsContentChildren(value: QueryList); set _typingUsersContentChildren(value: QueryList); instance: DxChat; /** * Specifies the shortcut key that sets focus on the UI component. */ get accessKey(): string | undefined; set accessKey(value: string | undefined); /** * Specifies whether the UI component changes its visual state as a result of user interaction. */ get activeStateEnabled(): boolean; set activeStateEnabled(value: boolean); /** * A list of available alerts. */ get alerts(): Array; set alerts(value: Array); /** * Binds the UI component to data. */ get dataSource(): Array | DataSource | DataSourceOptions | null | Store | string; set dataSource(value: Array | DataSource | DataSourceOptions | null | Store | string); /** * Specifies the day header format. */ get dayHeaderFormat(): Format; set dayHeaderFormat(value: Format); /** * Specifies whether the UI component responds to user interaction. */ get disabled(): boolean; set disabled(value: boolean); /** * Configures editing. */ get editing(): { allowDeleting?: boolean | ((options: { component: dxChat; message: Message; }) => boolean); allowUpdating?: boolean | ((options: { component: dxChat; message: Message; }) => boolean); }; set editing(value: { allowDeleting?: boolean | ((options: { component: dxChat; message: Message; }) => boolean); allowUpdating?: boolean | ((options: { component: dxChat; message: Message; }) => boolean); }); /** * Specifies the global attributes to be attached to the UI component's container element. */ get elementAttr(): Record; set elementAttr(value: Record); /** * Specifies a custom template for the Chat message container when the component displays no messages. */ get emptyViewTemplate(): any; set emptyViewTemplate(value: any); get fileUploaderOptions(): dxFileUploaderOptions; set fileUploaderOptions(value: dxFileUploaderOptions); /** * Specifies whether the Chat's input element can be focused using keyboard navigation. */ get focusStateEnabled(): boolean; set focusStateEnabled(value: boolean); /** * Specifies the UI component's height. */ get height(): number | string | undefined; set height(value: number | string | undefined); /** * Specifies text for a hint that appears when a user pauses on the UI component. */ get hint(): string | undefined; set hint(value: string | undefined); /** * Specifies whether the UI component changes its state when a user pauses on it. */ get hoverStateEnabled(): boolean; set hoverStateEnabled(value: boolean); /** * Specifies an array of chat messages. */ get items(): Array; set items(value: Array); /** * Specifies a custom template for a chat message. */ get messageTemplate(): any; set messageTemplate(value: any); /** * Specifies the message timestamp format. */ get messageTimestampFormat(): Format; set messageTimestampFormat(value: Format); /** * Specifies whether the Chat UI component displays newly entered messages immediately. This property only applies if dataSource is used. */ get reloadOnChange(): boolean; set reloadOnChange(value: boolean); /** * Switches the UI component to a right-to-left representation. */ get rtlEnabled(): boolean; set rtlEnabled(value: boolean); /** * Specifies whether to show avatars. */ get showAvatar(): boolean; set showAvatar(value: boolean); /** * Specifies whether to show day headers. */ get showDayHeaders(): boolean; set showDayHeaders(value: boolean); /** * Specifies whether to show message time stamps. */ get showMessageTimestamp(): boolean; set showMessageTimestamp(value: boolean); /** * Specifies whether to show user names. */ get showUserName(): boolean; set showUserName(value: boolean); /** * An array of users who are currently typing. */ get typingUsers(): Array; set typingUsers(value: Array); /** * Specifies the current chat user (messages displayed on the right side). */ get user(): User; set user(value: User); /** * Specifies whether the UI component is visible. */ get visible(): boolean; set visible(value: boolean); /** * Specifies the UI component's width. */ get width(): number | string | undefined; set width(value: number | string | undefined); /** * */ onAttachmentDownloadClick: EventEmitter; /** * A function that is executed before the UI component is disposed of. */ onDisposing: EventEmitter; /** * A function used in JavaScript frameworks to save the UI component instance. */ onInitialized: EventEmitter; /** * A function that is executed after a message was removed from the UI. */ onMessageDeleted: EventEmitter; /** * A function that is executed before a message is removed from the UI. */ onMessageDeleting: EventEmitter; /** * A function that is executed after message changes are discarded. */ onMessageEditCanceled: EventEmitter; /** * A function that is executed before a message switches to the editing state. */ onMessageEditingStart: EventEmitter; /** * A function that is executed after a message is entered into the chat. */ onMessageEntered: EventEmitter; /** * A function that is executed after a message was edited in the UI. */ onMessageUpdated: EventEmitter; /** * A function that is executed before a message is edited in the UI. */ onMessageUpdating: EventEmitter; /** * A function that is executed after a UI component property is changed. */ onOptionChanged: EventEmitter; /** * A function that is called 2 seconds after a user stops typing or after a message is entered. */ onTypingEnd: EventEmitter; /** * A function that is called after a user starts typing. */ onTypingStart: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ accessKeyChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ activeStateEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ alertsChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ dataSourceChange: EventEmitter | DataSource | DataSourceOptions | null | Store | string>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ dayHeaderFormatChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ disabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ editingChange: EventEmitter<{ allowDeleting?: boolean | ((options: { component: dxChat; message: Message; }) => boolean); allowUpdating?: boolean | ((options: { component: dxChat; message: Message; }) => boolean); }>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ elementAttrChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ emptyViewTemplateChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ fileUploaderOptionsChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ focusStateEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ heightChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ hintChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ hoverStateEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ itemsChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ messageTemplateChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ messageTimestampFormatChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ reloadOnChangeChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ rtlEnabledChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ showAvatarChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ showDayHeadersChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ showMessageTimestampChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ showUserNameChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ typingUsersChange: EventEmitter>; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ userChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ visibleChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ widthChange: EventEmitter; constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, _watcherHelper: WatcherHelper, _idh: IterableDifferHelper, optionHost: NestedOptionHost, transferState: TransferState, platformId: any); protected _createInstance(element: any, options: any): dxChat; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; setupChanges(prop: string, changes: SimpleChanges): void; ngDoCheck(): void; _setOption(name: string, value: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export declare class DxChatModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export * from 'devextreme-angular/ui/chat/nested'; export { DxChatTypes };