import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { IMarkdownString } from "@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent"; import { Disposable, DisposableStore } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { ThemeIcon } from "@codingame/monaco-vscode-api/vscode/vs/base/common/themables"; import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service"; import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service"; import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service"; import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service"; import { ChatAgentLocation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants"; import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service"; export interface IViewWelcomeDelegate { readonly onDidChangeViewWelcomeState: Event; shouldShowWelcome(): boolean; } export declare class ChatViewWelcomeController extends Disposable { private readonly container; private readonly delegate; private readonly location; private contextKeyService; private instantiationService; private element; private enabled; private readonly enabledDisposables; private readonly renderDisposables; constructor(container: HTMLElement, delegate: IViewWelcomeDelegate, location: ChatAgentLocation, contextKeyService: IContextKeyService, instantiationService: IInstantiationService); private update; private render; } export interface IChatViewWelcomeContent { icon?: ThemeIcon; title: string; message: IMarkdownString | ((disposables: DisposableStore) => HTMLElement); additionalMessage?: string | IMarkdownString; tips?: IMarkdownString; inputPart?: HTMLElement; isExperimental?: boolean; suggestedPrompts?: IChatSuggestedPrompts[]; } export interface IChatSuggestedPrompts { icon?: ThemeIcon; label: string; prompt: string; } export interface IChatViewWelcomeRenderOptions { firstLinkToButton?: boolean; location: ChatAgentLocation; isWidgetAgentWelcomeViewContent?: boolean; } export declare class ChatViewWelcomePart extends Disposable { readonly content: IChatViewWelcomeContent; private openerService; private instantiationService; private logService; private chatWidgetService; private telemetryService; readonly element: HTMLElement; constructor(content: IChatViewWelcomeContent, options: IChatViewWelcomeRenderOptions | undefined, openerService: IOpenerService, instantiationService: IInstantiationService, logService: ILogService, chatWidgetService: IChatWidgetService, telemetryService: ITelemetryService); private renderMarkdownMessageContent; }