/** * 🛠️ Smart Tools - Intelligent Browser Automation Tools * Provides LangChain tools for the Smart AI Agent * Adapted from Endorphin AI's sophisticated tool system for WebDriverIO */ import { z } from 'zod'; import { Browser } from 'webdriverio'; export interface SmartToolContext { browser: Browser; currentUrl?: string; pageTitle?: string; lastAction?: string; errorCount: number; successCount: number; } /** * Smart Navigation Tool - Enhanced with schema validation */ export declare function createSmartNavigationTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool; }, "strip", z.ZodTypeAny, { url: string; waitForLoad?: boolean | undefined; }, { url: string; waitForLoad?: boolean | undefined; }>, { url: string; waitForLoad?: boolean; }, { url: string; waitForLoad?: boolean | undefined; }, string>; /** * Smart Click Tool - Enhanced with multiple strategies */ export declare function createSmartClickTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool>; timeout: z.ZodOptional; force: z.ZodOptional; }, "strip", z.ZodTypeAny, { selector: string; strategy?: "text" | "id" | "name" | "css" | "exact-text" | "xpath" | undefined; timeout?: number | undefined; force?: boolean | undefined; }, { selector: string; strategy?: "text" | "id" | "name" | "css" | "exact-text" | "xpath" | undefined; timeout?: number | undefined; force?: boolean | undefined; }>, { selector: string; strategy?: "css" | "text" | "exact-text" | "xpath" | "id" | "name"; timeout?: number; force?: boolean; }, { selector: string; strategy?: "text" | "id" | "name" | "css" | "exact-text" | "xpath" | undefined; timeout?: number | undefined; force?: boolean | undefined; }, string>; /** * Smart Fill Tool - Enhanced with field detection */ export declare function createSmartFillTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool>; clearFirst: z.ZodOptional; pressEnter: z.ZodOptional; }, "strip", z.ZodTypeAny, { selector: string; value: string; strategy?: "type" | "fill" | undefined; clearFirst?: boolean | undefined; pressEnter?: boolean | undefined; }, { selector: string; value: string; strategy?: "type" | "fill" | undefined; clearFirst?: boolean | undefined; pressEnter?: boolean | undefined; }>, { selector: string; value: string; strategy?: "fill" | "type"; clearFirst?: boolean; pressEnter?: boolean; }, { selector: string; value: string; strategy?: "type" | "fill" | undefined; clearFirst?: boolean | undefined; pressEnter?: boolean | undefined; }, string>; /** * Smart Verify Tool - Enhanced with multiple verification types */ export declare function createSmartVerifyTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool; selector: z.ZodOptional; expected: z.ZodUnion<[z.ZodString, z.ZodNumber]>; timeout: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "url" | "element" | "text" | "title" | "count"; expected: string | number; selector?: string | undefined; timeout?: number | undefined; }, { type: "url" | "element" | "text" | "title" | "count"; expected: string | number; selector?: string | undefined; timeout?: number | undefined; }>, { type: "text" | "element" | "url" | "title" | "count"; selector?: string; expected: string | number; timeout?: number; }, { type: "url" | "element" | "text" | "title" | "count"; expected: string | number; selector?: string | undefined; timeout?: number | undefined; }, string>; /** * Smart Wait Tool - Enhanced with multiple wait types */ export declare function createSmartWaitTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool; selector: z.ZodOptional; value: z.ZodOptional; timeout: z.ZodOptional; }, "strip", z.ZodTypeAny, { type: "element" | "text" | "time" | "network"; selector?: string | undefined; timeout?: number | undefined; value?: string | undefined; }, { type: "element" | "text" | "time" | "network"; selector?: string | undefined; timeout?: number | undefined; value?: string | undefined; }>, { type: "element" | "text" | "time" | "network"; selector?: string; value?: string; timeout?: number; }, { type: "element" | "text" | "time" | "network"; selector?: string | undefined; timeout?: number | undefined; value?: string | undefined; }, string>; /** * Smart Screenshot Tool - Enhanced with intelligent naming */ export declare function createSmartScreenshotTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool; description: z.ZodOptional; }, "strip", z.ZodTypeAny, { description?: string | undefined; name?: string | undefined; }, { description?: string | undefined; name?: string | undefined; }>, { name?: string; description?: string; }, { description?: string | undefined; name?: string | undefined; }, string>; /** * Smart Get Content Tool - Enhanced content analysis */ export declare function createSmartGetContentTool(context: SmartToolContext): import("@langchain/core/tools").DynamicStructuredTool>; selector: z.ZodOptional; }, "strip", z.ZodTypeAny, { type?: "text" | "full" | "elements" | undefined; selector?: string | undefined; }, { type?: "text" | "full" | "elements" | undefined; selector?: string | undefined; }>, { type?: "full" | "text" | "elements"; selector?: string; }, { type?: "text" | "full" | "elements" | undefined; selector?: string | undefined; }, string>; /** * Create all smart tools for the framework */ export declare function createAllSmartTools(browser: Browser): any[]; //# sourceMappingURL=SmartTools.d.ts.map