import { LogLine } from "./v3/types/public/logs.js"; import { LLMClient } from "./v3/llm/LLMClient.js"; import type { InferStagehandSchema, StagehandZodObject } from "./v3/zodCompat.js"; import type { Variables } from "./v3/types/public/agent.js"; export type { LLMParsedResponse, LLMUsage } from "./v3/llm/LLMClient.js"; export declare function extract({ instruction, domElements, schema, llmClient, logger, userProvidedInstructions, logInferenceToFile, }: { instruction: string; domElements: string; schema: T; llmClient: LLMClient; userProvidedInstructions?: string; logger: (message: LogLine) => void; logInferenceToFile?: boolean; }): Promise & { metadata: { completed: boolean; progress: string; }; prompt_tokens: number; completion_tokens: number; reasoning_tokens: number; cached_input_tokens: number; inference_time_ms: number; }>; export declare function observe({ instruction, domElements, llmClient, userProvidedInstructions, logger, logInferenceToFile, supportedActions, variables, }: { instruction: string; domElements: string; llmClient: LLMClient; userProvidedInstructions?: string; logger: (message: LogLine) => void; logInferenceToFile?: boolean; supportedActions?: string[]; variables?: Variables; }): Promise<{ elements: { elementId: string; description: string; method: string; arguments: string[]; }[]; prompt_tokens: number; completion_tokens: number; reasoning_tokens: number; cached_input_tokens: number; inference_time_ms: number; }>; export declare function act({ instruction, domElements, llmClient, userProvidedInstructions, logger, logInferenceToFile, }: { instruction: string; domElements: string; llmClient: LLMClient; userProvidedInstructions?: string; logger: (message: LogLine) => void; logInferenceToFile?: boolean; }): Promise<{ element: { elementId: string; description: string; method: string; arguments: string[]; }; prompt_tokens: number; completion_tokens: number; reasoning_tokens: number; cached_input_tokens: number; inference_time_ms: number; twoStep: boolean; }>;