import { TemplateRef } from '@angular/core'; import { BehaviorSubject } from 'rxjs'; import { AttachmentContext, AttachmentListContext, AttachmentPreviewListContext, AvatarContext, ChannelActionsContext, ChannelHeaderInfoContext, ChannelPreviewContext, ChannelPreviewInfoContext, CommandAutocompleteListItemContext, CustomAttachmentListContext, CustomAttachmentPreviewListContext, CustomAttachmentUploadContext, CustomMetadataContext, DateSeparatorContext, DeliveredStatusContext, EmojiPickerContext, GalleryAttachmentContext, IconContext, MentionAutcompleteListItemContext, MentionTemplateContext, MessageActionBoxItemContext, MessageActionsBoxContext, MessageBlockedContext, MessageContext, MessageReactionsContext, MessageReactionsSelectorContext, MessageTextContext, ModalContext, NotificationContext, ReadStatusContext, SendingStatusContext, SystemMessageContext, ThreadHeaderContext, ThreadReplyButtonContext, TypingIndicatorContext, UnreadMessagesIndicatorContext, UnreadMessagesNotificationContext } from './types'; import * as i0 from "@angular/core"; /** * A central location for registering your custom templates to override parts of the chat application. * * For code examples to the different customizations see our [customizations example application](https://github.com/GetStream/stream-chat-angular/tree/master/projects/customizations-example), specifically the [AppComponent](https://github.com/GetStream/stream-chat-angular/tree/master/projects/customizations-example/src/app) (see [README](https://github.com/GetStream/stream-chat-angular/blob/master/README.md#customization-examples) for instructions on how to start the application). * * You can find the type definitions of the context that is provided for each template [on GitHub](https://github.com/GetStream/stream-chat-angular/blob/master/projects/stream-chat-angular/src/lib/types.ts) */ export declare class CustomTemplatesService { /** * The autocomplete list item template for mentioning users (used in the [`AutocompleteTextareaComponent`](/chat/docs/sdk/angular/components/AutocompleteTextareaComponent/)) */ mentionAutocompleteItemTemplate$: BehaviorSubject | undefined>; /** * The autocomplete list item template for commands (used in the [`AutocompleteTextareaComponent`](/chat/docs/sdk/angular/components/AutocompleteTextareaComponent/)) */ commandAutocompleteItemTemplate$: BehaviorSubject | undefined>; /** * Template used to display an item in the [channel list](/chat/docs/sdk/angular/components/ChannelListComponent/) (instead of the default [channal list item](/chat/docs/sdk/angular/components/ChannelPreviewComponent/)) * */ channelPreviewTemplate$: BehaviorSubject | undefined>; /** * The template used for displaying a [mention inside a message](/chat/docs/sdk/angular/code-examples/mention-actions/) * */ mentionTemplate$: BehaviorSubject | undefined>; /** * The template for [emoji picker](/chat/docs/sdk/angular/code-examples/emoji-picker) * */ emojiPickerTemplate$: BehaviorSubject | undefined>; /** * The typing indicator template used in the [message list](/chat/docs/sdk/angular/components/MessageListComponent/) * */ typingIndicatorTemplate$: BehaviorSubject | undefined>; /** * The template used to display a message in the [message list](/chat/docs/sdk/angular/components/MessageListComponent/) (instead of the [default message component](/chat/docs/sdk/angular/components/MessageComponent/)) * */ messageTemplate$: BehaviorSubject | undefined>; /** * The template for channel actions displayed in the [channel header](/chat/docs/sdk/angular/components/ChannelHeaderComponent/) (by default no channel action is displayed) * */ channelActionsTemplate$: BehaviorSubject | undefined>; /** * The template used to display attachments of a [message](/chat/docs/sdk/angular/components/MessageComponent/) (instead of the [default attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/)) * */ attachmentListTemplate$: BehaviorSubject | undefined>; /** * The template used to display attachments in the [message input](/chat/docs/sdk/angular/components/MessageInputComponent) component (instead of the [default attachment preview](/chat/docs/sdk/angular/components/AttachmentPreviewListComponent)) * */ attachmentPreviewListTemplate$: BehaviorSubject | undefined>; /** * The template used to display avatars for channels and users (instead of the [default avatar](/chat/docs/sdk/angular/components/AvatarComponent/)) * */ avatarTemplate$: BehaviorSubject | undefined>; /** * Template for displaying icons (instead of the [default icon component](/chat/docs/sdk/angular/components/IconComponent/)) * */ iconTemplate$: BehaviorSubject | undefined>; /** * Template for displaying the loading indicator (instead of the [default loading indicator](/chat/docs/sdk/angular/components/LoadingIndicatorComponent/)) * */ loadingIndicatorTemplate$: BehaviorSubject | undefined>; /** * Template for displaying the message actions box (instead of the [default message actions box](/chat/docs/sdk/angular/components/MessageActionsBoxComponent/)) * */ messageActionsBoxTemplate$: BehaviorSubject | undefined>; /** * The template used for displaying an item in the [message actions box](/chat/docs/sdk/angular/components/MessageActionsBoxComponent/) * */ messageActionsBoxItemTemplate$: BehaviorSubject | undefined>; /** * The template used to display the reactions of a [message](/chat/docs/sdk/angular/components/MessageComponent/), and the selector to add a reaction to a message (instead of the [default message reactions component](/chat/docs/sdk/angular/components/MessageReactionsComponent/)) * */ messageReactionsTemplate$: BehaviorSubject | undefined>; /** * The template used to display the reactions of a [message](/chat/docs/sdk/angular/components/MessageComponent/), and the selector to add a reaction to a message (instead of the [default message reactions component](/chat/docs/sdk/angular/components/MessageReactionsComponent/)) * */ messageReactionsSelectorTemplate$: BehaviorSubject | undefined>; /** * The template used to display a modal window (instead of the [default modal](/chat/docs/sdk/angular/components/ModalComponent/)) * */ modalTemplate$: BehaviorSubject | undefined>; /** * The template used to override the [default notification component](/chat/docs/sdk/angular/components/NotificationComponent/) * */ notificationTemplate$: BehaviorSubject | undefined>; /** * The template used for header of a [thread](/chat/docs/sdk/angular/components/ThreadComponent/) * */ threadHeaderTemplate$: BehaviorSubject | undefined>; /** * The template used for displaying the delivered state of the message inside the [message component](/chat/docs/sdk/angular/components/MessageComponent/) * * Displayed for the last message sent by the current user, if the message isn't yet read by anyone * */ deliveredStatusTemplate$: BehaviorSubject | undefined>; /** * The template used for displaying the sending state of the message inside the [message component](/chat/docs/sdk/angular/components/MessageComponent/) * * Displayed for the last message sent by the current user, if the message is currently being sent * */ sendingStatusTemplate$: BehaviorSubject | undefined>; /** * The template used for displaying the sent state of the message inside the [message component](/chat/docs/sdk/angular/components/MessageComponent/) * * Displayed for the last message sent by the current user, if the message is read at least by one user * */ readStatusTemplate$: BehaviorSubject | undefined>; /** * Template to display custom metadata inside [message component](/chat/docs/sdk/angular/components/MessageComponent/) * */ customMessageMetadataTemplate$: BehaviorSubject | undefined>; /** * The template used to display additional information about a channel under the channel name inside the [channel header component](/chat/docs/sdk/angular/components/ChannelHeaderComponent/) * */ channelHeaderInfoTemplate$: BehaviorSubject | undefined>; /** * The template used for displaying file upload/attachment selector inside the [message input](/chat/docs/sdk/angular/components/MessageInputComponent/) * */ customAttachmentUploadTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how a single image attachment is displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/) */ imageAttachmentTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how a voice recording attachment is displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/), by default the [voice recording component](/chat/docs/sdk/angular/components/VoiceRecordingComponent/) is used */ voiceRecordingAttachmentTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how a video attachment is displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/) */ videoAttachmentTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how image gallery is displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/) */ galleryAttachmentTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how a file attachment is displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/) */ fileAttachmentTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how a card attachment is displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/) */ cardAttachmentTemplate$: BehaviorSubject | undefined>; /** * The template that can be used to override how attachment actions are displayed inside the [attachment list](/chat/docs/sdk/angular/components/AttachmentListComponent/) */ attachmentActionsTemplate$: BehaviorSubject | undefined>; /** * The template used to display [system messages](/chat/docs/javascript/silent_messages/) indise the [message component](/chat/docs/sdk/angular/components/MessageComponent/) */ systemMessageTemplate$: BehaviorSubject | undefined>; /** * The template used to display the date separator inside the [message list](/chat/docs/sdk/angular/components/MessageListComponent/) */ dateSeparatorTemplate$: BehaviorSubject | undefined>; /** * The template used to display unread messages indicator inside the [message list](/chat/docs/sdk/angular/components/MessageListComponent/) when the channel is opened * * This UI element is used to separate unread messages from read messages */ newMessagesIndicatorTemplate$: BehaviorSubject | undefined>; /** * The template used to display unread messages notification inside the [message list](/chat/docs/sdk/angular/components/MessageListComponent/) when the channel is opened * * Users can use this notification to jump to the first unread message when it's clicked */ newMessagesNotificationTemplate$: BehaviorSubject | undefined>; /** * The template to show if the main message list is empty */ emptyMainMessageListPlaceholder$: BehaviorSubject | undefined>; /** * The template to show if the thread message list is empty */ emptyThreadMessageListPlaceholder$: BehaviorSubject | undefined>; /** * The template used to display the [message bounce prompt](/chat/docs/sdk/angular/components/MessageBouncePromptComponent/) */ messageBouncePromptTemplate$: BehaviorSubject | undefined>; /** * Template used to display the channel information inside the [channel list item](/chat/docs/sdk/angular/components/ChannelPreviewComponent/) * */ channelPreviewInfoTemplate$: BehaviorSubject | undefined>; /** * The template used to display custom attachment previews in the [message input component](/chat/docs/sdk/angular/components/MessageInputComponent/) */ customAttachmentPreviewListTemplate$: BehaviorSubject | undefined>; /** * The template used to display custom attachments in the [message component](/chat/docs/sdk/angular/components/MessageComponent/) */ customAttachmentListTemplate$: BehaviorSubject | undefined>; /** * The template used to display the number of thread replies inside the [message component](/chat/docs/sdk/angular/components/MessageComponent/) */ threadLinkButton$: BehaviorSubject | undefined>; /** * Template to display custom metadata inside the message bubble of the [message component](/chat/docs/sdk/angular/components/MessageComponent/) * * To properly position your template you should override the `grid-template-areas` of the `.str-chat__message-inner` selector */ customMessageMetadataInsideBubbleTemplate$: BehaviorSubject | undefined>; /** * Template to display the text content inside the [message component](/chat/docs/sdk/angular/components/MessageComponent/). The default component is [stream-message-text](/chat/docs/sdk/angular/components/MessageTextComponent/) */ messageTextTemplate$: BehaviorSubject | undefined>; /** * The template used to display blocked messages that have been removed by moderation policies instead of the default [message blocked component](/chat/docs/sdk/angular/components/MessageBlockedComponent/) * * The template has no effect if you're using a custom `messageTemplate$` */ messageBlockedTemplate$: BehaviorSubject | undefined>; /** * Template to display polls inside [message component](/chat/docs/sdk/angular/components/MessageComponent/). There is no default template, but the `PollsModule` contains default components. */ pollTemplate$: BehaviorSubject | undefined>; /** * Template to display poll composer inside [message input component](/chat/docs/sdk/angular/components/MessageInputComponent/). There is no default template, but the `PollsModule` contains default components. */ pollComposerTemplate$: BehaviorSubject void; cancel: () => void; }> | undefined>; constructor(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }