import { OnDestroy, OnInit } from '@angular/core';
import { Channel, FormatMessageResponse } from 'stream-chat';
import { ChannelService } from '../channel.service';
import { DefaultStreamChatGenerics } from '../types';
import { ChatClientService } from '../chat-client.service';
import { MessageService } from '../message.service';
import { CustomTemplatesService } from '../custom-templates.service';
import { DateParserService } from '../date-parser.service';
import * as i0 from "@angular/core";
/**
 * The `ChannelPreview` component displays a channel preview in the channel list, it consists of the image, name and latest message of the channel.
 */
export declare class ChannelPreviewComponent implements OnInit, OnDestroy {
    private channelService;
    private chatClientService;
    customTemplatesService: CustomTemplatesService;
    private dateParser;
    /**
     * The channel to be displayed
     */
    channel: Channel<DefaultStreamChatGenerics> | undefined;
    isActive: boolean;
    isUnreadMessageWasCalled: boolean;
    isUnread: boolean;
    unreadCount: number | undefined;
    latestMessageText: string;
    latestMessageStatus?: 'delivered' | 'read';
    latestMessageTime?: string;
    latestMessage?: FormatMessageResponse<DefaultStreamChatGenerics>;
    displayAs: 'text' | 'html';
    userId?: string;
    private subscriptions;
    private canSendReadEvents;
    constructor(channelService: ChannelService, chatClientService: ChatClientService, messageService: MessageService, customTemplatesService: CustomTemplatesService, dateParser: DateParserService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    get avatarImage(): string | undefined;
    get avatarName(): string | undefined;
    get title(): string | undefined;
    setAsActiveChannel(): void;
    private handleMessageEvent;
    private setLatestMessage;
    private updateUnreadState;
    static ɵfac: i0.ɵɵFactoryDeclaration<ChannelPreviewComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ChannelPreviewComponent, "stream-channel-preview", never, { "channel": { "alias": "channel"; "required": false; }; }, {}, never, never, false, never>;
}
