import { Type } from "typebox"; import { type ToolServer } from "../tool-server"; type CommandResult = { exitCode: number; stdout: string; stderr: string; }; type CommandExecutor = (command: string, args: string[], cwd: string) => Promise; type DatabaseCallback = (args: Record) => Promise; export interface RemoteDevToolOptions { cwd?: string; host?: string; sshUser?: string; sshPort?: number; sshKey?: string; projectRef?: string; environment?: string; execute?: CommandExecutor; runDatabase?: DatabaseCallback; } export declare const remoteDevToolSchema: { action: Type.TEnum<("status" | "migrate" | "watch" | "sync")[]>; target: Type.TOptional>; project_dir: Type.TOptional; remote_root: Type.TOptional; remote_host: Type.TOptional; remote_user: Type.TOptional; remote_port: Type.TOptional; remote_key: Type.TOptional; function: Type.TOptional; delete: Type.TOptional; reload: Type.TOptional; interval_ms: Type.TOptional; json: Type.TOptional; apply: Type.TOptional; drizzle_config: Type.TOptional; migrations_dir: Type.TOptional; drizzle_bin: Type.TOptional; }; export declare function registerRemoteDevTools(server: ToolServer, options?: RemoteDevToolOptions): void; export {};