/** * The following code is modified based on * https://github.com/nanobrowser/nanobrowser/blob/master/chrome-extension/src/background/agent/executor.ts * * Apache-2.0 License * Copyright (c) 2024 alexchenzl * https://github.com/nanobrowser/nanobrowser/blob/master/LICENSE */ import type { BaseChatModel } from '@langchain/core/language_models/chat_models'; import { type AgentOptions } from './types'; import type BrowserContext from '../browser/context'; import { type EventCallback } from './event/types'; export interface ExecutorExtraArgs { plannerLLM?: BaseChatModel; validatorLLM?: BaseChatModel; extractorLLM?: BaseChatModel; agentOptions?: Partial; } export declare class Executor { private readonly navigator; private readonly planner; private readonly validator; private readonly context; private readonly plannerPrompt; private readonly navigatorPrompt; private readonly validatorPrompt; private tasks; constructor(task: string, taskId: string, browserContext: BrowserContext, navigatorLLM: BaseChatModel, extraArgs?: Partial); subscribeExecutionEvents(callback: EventCallback): void; clearExecutionEvents(): void; addFollowUpTask(task: string): void; /** * Execute the task * * @returns {Promise} */ execute(): Promise; private navigate; private shouldStop; cancel(): Promise; resume(): Promise; pause(): Promise; cleanup(): Promise; getCurrentTaskId(): Promise; } //# sourceMappingURL=executor.d.ts.map