/**----------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { AfterViewInit, ElementRef, EventEmitter, NgZone, OnDestroy, ViewContainerRef } from '@angular/core'; import { InlineAIPromptRequestEvent, InlineAIPromptOutputAction, InlineAIPromptOutputActionClickEvent, InlineAIPromptOutput, InlineAIPromptCommand } from './models'; import { InlineAIPromptContentComponent } from './inlineaiprompt-content.component'; import { SpeechToTextButtonSettings } from '@progress/kendo-angular-buttons'; import { InlineAIPromptPopupSettings } from './models/inlineaiprompt-popupsettings'; import { InlineAIPromptOutputTemplateDirective } from './output-template.directive'; import * as i0 from "@angular/core"; /** * Represents the Kendo UI InlineAIPrompt component for Angular. * * @remarks * Supported children components are: {@link InlineAIPromptCustomMessagesComponent} * * @example * ```html * * * ``` */ export declare class InlineAIPromptComponent implements AfterViewInit, OnDestroy { private ngZone; element: ElementRef; /** * Sets the TextArea value. * * @default "" */ promptValue: string; /** * Sets the placeholder text that appears in the text area when it is empty. */ placeholder: string; /** * Sets the output data for the prompt. * The output displays as a card above the text area. */ promptOutput: InlineAIPromptOutput; /** * Controls the visibility and settings of the Speech to Text button. * * @default true */ enableSpeechToText: boolean | SpeechToTextButtonSettings; /** * When set to `true`, the **Send** button displays a generating state and the component emits a `promptRequestCancel` event when you click it. * * @default false */ streaming: boolean; /** * Sets the width of the component. * Accepts a number for pixels or a string for other units. * * @default 550 */ width: number | string; /** * Sets the maximum height of the component. * Accepts a number for pixels or a string for other units. */ maxHeight: number | string; /** * Represents the configuration of the default output actions. * The default actions are `copy`, `retry`, and `discard`. */ defaultOutputActions: InlineAIPromptOutputAction[]; /** * Sets the output actions that display in the output card. * The default actions are `copy`, `retry`, and `discard`. * To customize the appearance and order of the default actions, define them with the same `name`. * * @default [{ name: 'copy', type: 'button', icon: 'copy', svgIcon: copyIcon, text: 'Copy', fillMode: 'flat', themeColor: 'primary', rounded: 'medium'}, { name: 'retry', type: 'button', icon: 'arrow-rotate-cw', svgIcon: arrowRotateCwIcon, text: 'Retry', fillMode: 'flat', themeColor: 'primary', rounded: 'medium'}, { name: 'discard', type: 'button', icon: 'cancel-outline', svgIcon: cancelOutlineIcon, text: 'Discard', fillMode: 'flat', themeColor: 'base', rounded: 'medium'}] */ outputActions: InlineAIPromptOutputAction[]; /** * Sets the available prompt commands. */ promptCommands: InlineAIPromptCommand[]; /** * Sets the Popup settings. * */ set popupSettings(settings: InlineAIPromptPopupSettings); get popupSettings(): InlineAIPromptPopupSettings; /** * Fires when the send button is clicked. */ promptRequest: EventEmitter; /** * Fires when a command is executed. */ commandExecute: EventEmitter; /** * Fires when an output action button is clicked. */ outputActionClick: EventEmitter; /** * Fires when the stop button is clicked during streaming. */ promptRequestCancel: EventEmitter; /** * Fires when the component closes (Escape key, Discard action or outside click). */ close: EventEmitter; /** * Fires when the TextArea value changes. */ promptValueChange: EventEmitter; popupElement: ElementRef; popupViewContainer: ViewContainerRef; contentComponent: InlineAIPromptContentComponent; outputTemplate: InlineAIPromptOutputTemplateDirective; /** * @hidden */ calculateMeasurement: (value: string | number) => string; private _popupSettings; private subs; constructor(ngZone: NgZone, element: ElementRef); ngAfterViewInit(): void; ngOnDestroy(): void; /** * Focus the TextArea. */ focus(): void; /** * @hidden */ onPromptRequest(event: InlineAIPromptRequestEvent): void; /** * @hidden */ onCommandExecute(event: InlineAIPromptCommand): void; /** * @hidden */ onOutputActionClick(event: InlineAIPromptOutputActionClickEvent): void; /** * @hidden */ onPromptRequestCancel(): void; /** * @hidden */ onClose(): void; /** * @hidden */ onPromptValueChange(value: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }