/**-----------------------------------------------------------------------------------------
* Copyright © 2026 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { SpeechToTextButtonSettings } from "@progress/kendo-angular-buttons";
import { TextAreaSettings } from "@progress/kendo-angular-inputs";
import { SVGIcon } from "@progress/kendo-svg-icons";
import { PromptCommand } from "./command.interface";
import { PromptOutput } from "./prompt-output.interface";
/**
 * Interface representing all configuration options of the Ai Prompt.
 */
export interface AIPromptSettings {
    /**
     * The active view index of the AIPrompt component.
     */
    activeView?: number;
    /**
     * Sets the collection of commands to render in the Command view.
     */
    promptCommands?: Array<PromptCommand>;
    /**
     * Sets the collection of suggestions to render in the **Prompt** view.
     */
    promptSuggestions?: Array<string>;
    /**
     * Sets the collection of generated prompt outputs to render in the Output view.
     */
    promptOutputs?: Array<PromptOutput>;
    /**
     * Specifies whether the Stop generation button appears in the Output view.
     */
    streaming?: boolean;
    /**
     * Specifies if the rating buttons appear in each **Output** view card.
     * By default, the rating buttons do not appear.
     */
    showOutputRating?: boolean;
    /**
     * Sets the settings for the Speech to Text button in the Prompt view.
     */
    speechToTextButton?: boolean | SpeechToTextButtonSettings;
    /**
     * Sets the settings for the TextArea in the Prompt view.
     * Use this property to customize the TextArea appearance.
     */
    textAreaSettings?: TextAreaSettings;
    /**
     * Sets the SVG icon for the Generate button in the Prompt view.
     */
    generateButtonSVGIcon?: SVGIcon;
    /**
     * Sets the icon for the Generate button in the Prompt view.
     */
    generateButtonIcon?: string;
    /**
     * Sets the disabled state for the Generate button in the Prompt view.
     */
    disabledGenerateButton?: boolean;
}
