import type { SociablyNode, SociablyBot, SociablyUser, InitScopeFn, DispatchWrapper, SociablyThread } from '@sociably/core'; import Engine from '@sociably/core/engine'; import type { DispatchResponse } from '@sociably/core/engine'; import type { AnyServerAuthenticator } from '@sociably/auth'; import type { EventInput, WebSocketJob, WebSocketResult } from '@sociably/websocket'; import { WebviewSocketServer } from './interface.js'; import WebviewConnection from './Connection.js'; import type { WebviewDispatchFrame, WebviewComponent } from './types.js'; type WebSocketDispatchResponse = DispatchResponse; type SendResult = { connections: WebviewConnection[]; }; /** * @category Provider */ export declare class WebviewBot implements SociablyBot { private _server; engine: Engine; platform: "webview"; constructor(server: WebviewSocketServer, initScope?: InitScopeFn, dispatchWrapper?: DispatchWrapper); start(): Promise; stop(): Promise; render(thread: WebviewConnection, message: SociablyNode): Promise; send(thread: WebviewConnection, content: EventInput | EventInput[]): Promise; sendTopic(topicKey: string, content: EventInput | EventInput[]): Promise; sendUser(user: SociablyUser, content: EventInput | EventInput[]): Promise; sendThread(thread: SociablyThread, content: EventInput | EventInput[]): Promise; disconnect(connection: WebviewConnection, reason?: string): Promise; subscribeTopic(connection: WebviewConnection, topic: string): Promise; unsubscribeTopic(connection: WebviewConnection, topic: string): Promise; } export declare const BotP: import("@sociably/core/service").ServiceProvider, import("@sociably/core").ModuleUtilities | null, import("./types.js").WebviewPlatformUtilities | null]> & typeof WebviewBot; export type BotP = WebviewBot; export {};