import * as i0 from '@angular/core'; import { OnDestroy, WritableSignal, AfterViewInit, ElementRef } from '@angular/core'; import { Observable } from 'rxjs'; import { ChatState, ChatConfig, ChatReturn, EditOptions, ToolCall, Message } from '@agentskit/core'; /** * Angular service wrapping the shared `ChatController`. Exposes * chat state both as a Signal (template-friendly) and as a * BehaviorSubject (RxJS interop). * * Usage: * @Component({ ... }) * export class ChatPage { * constructor(public chat: AgentskitChat) { * chat.init({ adapter }) * } * } */ declare class AgentskitChat implements OnDestroy { private controller?; private unsubscribe?; readonly state: WritableSignal; private readonly _stream$; readonly stream$: Observable; init(config: ChatConfig): ChatReturn; snapshot(): ChatReturn; send: (text: string) => Promise; stop: () => void; retry: () => Promise; edit: (messageId: string, newContent: string, opts?: EditOptions) => Promise; regenerate: (messageId?: string) => Promise; setInput: (value: string) => void; clear: () => Promise; proposeToolCall: (proposal: Parameters[0]) => Promise; approve: (id: string) => Promise; deny: (id: string, reason?: string) => Promise; destroy(): void; ngOnDestroy(): void; private requireController; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * Headless Angular chat components mirroring `@agentskit/react`'s set. Each * renders `data-ak-*` attributes only — bring your own CSS. Standalone with * inline templates; published as partial-Ivy (AOT/APF) via ng-packagr. */ declare class ChatContainerComponent implements AfterViewInit, OnDestroy { scrollRef: ElementRef; private observer?; ngAfterViewInit(): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class MessageComponent { message: Message; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class InputBarComponent { chat: ChatReturn; placeholder: string; disabled: boolean; get isBlocked(): boolean; onSubmit(e: Event): void; onEnter(e: Event): void; private submit; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class MarkdownComponent { content: string; streaming: boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class CodeBlockComponent { code: string; language?: string; copyable: boolean; copy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ToolCallViewComponent { toolCall: ToolCall; readonly expanded: i0.WritableSignal; get argsJson(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ThinkingIndicatorComponent { visible: boolean; label: string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ToolConfirmationComponent { toolCall: ToolCall; onApprove: (toolCallId: string) => void; onDeny: (toolCallId: string, reason?: string) => void; get argsJson(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export { AgentskitChat, ChatContainerComponent, CodeBlockComponent, InputBarComponent, MarkdownComponent, MessageComponent, ThinkingIndicatorComponent, ToolCallViewComponent, ToolConfirmationComponent }; //# sourceMappingURL=agentskit-angular.d.ts.map