import { ChatRequest } from '@theia/ai-chat'; import { AIChatInputConfiguration, AIChatInputWidget } from '@theia/ai-chat-ui/lib/browser/chat-input-widget'; import { URI, ILogger } from '@theia/core'; export declare const AskAIInputConfiguration: unique symbol; export interface AskAIInputConfiguration extends AIChatInputConfiguration { } export declare const AskAIInputArgs: unique symbol; export interface AskAIInputArgs { onSubmit: (request: ChatRequest) => void; onCancel: () => void; } export declare const AskAIInputFactory: unique symbol; export type AskAIInputFactory = (args: AskAIInputArgs) => AskAIInputWidget; /** * React input widget for Ask AI functionality, extending the AIChatInputWidget. */ export declare class AskAIInputWidget extends AIChatInputWidget { static ID: string; protected readonly args: AskAIInputArgs | undefined; protected readonly logger: ILogger; protected readonly configuration: AskAIInputConfiguration | undefined; protected readonly resourceId: string; protected heightInLines: number; protected init(): void; protected getResourceUri(): URI; protected handleSubmit(query: string, mode?: string): Promise; protected handleCancel(): void; protected onEscape(): void; /** * Override to detect receiving agent without requiring a chat session. * This implementation bypasses the session-based pinned agent logic since * Ask AI dialogs are ephemeral and don't support agent pinning. */ protected updateReceivingAgent(): Promise; } //# sourceMappingURL=ask-ai-input-widget.d.ts.map