/**
 * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
 * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
 */
/**
 * @module ai/aichat/ui/feed/aichatfeeditemview
 */
import { View } from '@ckeditor/ckeditor5-ui';
import { type Document } from '../../../aicore/utils/htmlparser.js';
/**
 * A base class for all item views in the chat feed.
 */
export declare abstract class AIChatFeedItemView<TOptions extends AIChatItemViewOptions = AIChatItemViewOptions> extends View<HTMLDivElement> {
    /**
     * The options of the item passed to the constructor.
     */
    options: TOptions;
    /**
     * A flag indicating that the streaming has finished in this item. It is reflected in the CSS class.
     */
    isDone: boolean;
    /**
     * Specifies whether the item should be visible or not.
     */
    isVisible: boolean;
    /**
     * @inheritDoc
     */
    constructor(options: TOptions);
    /**
     * Marks the item as done.
     *
     * **Note**: It removes the animations from the content.
     */
    markAsDone(): void;
    /**
     * Streams the content into an arbitrary HTML element.
     */
    protected streamIntoElement(parsedContent: Document, targetElement: HTMLElement, abortSignal?: AbortSignal): Promise<void>;
}
export interface AIChatItemViewOptions {
    /**
     * The ID of the item.
     */
    id: string;
}
