import type { AgentToolResult } from "@oh-my-pi/pi-agent-core"; import { type Component } from "@oh-my-pi/pi-tui"; import type { RenderResultOptions } from "../extensibility/custom-tools/types"; import { type Theme } from "../modes/theme/theme"; import type { ToolSession } from "../sdk"; import { type OutputMeta } from "./output-meta"; export declare function isReadableUrlPath(value: string): boolean; export interface ParsedReadUrlTarget { path: string; raw: boolean; offset?: number; limit?: number; } export declare function parseReadUrlTarget(readPath: string): ParsedReadUrlTarget | null; interface FetchImagePayload { data: string; mimeType: string; } export interface ReadUrlToolDetails { kind: "url"; url: string; finalUrl: string; contentType: string; method: string; truncated: boolean; notes: string[]; meta?: OutputMeta; } interface ReadUrlCacheEntry { artifactId?: string; details: ReadUrlToolDetails; image?: FetchImagePayload; output: string; } export declare function loadReadUrlCacheEntry(session: ToolSession, params: { path: string; raw?: boolean; }, signal?: AbortSignal, options?: { ensureArtifact?: boolean; preferCached?: boolean; }): Promise; export declare function executeReadUrl(session: ToolSession, params: { path: string; raw?: boolean; }, signal?: AbortSignal): Promise>; /** Render URL read call (URL preview) */ export declare function renderReadUrlCall(args: { path?: string; url?: string; raw?: boolean; }, _options: RenderResultOptions, uiTheme?: Theme): Component; /** Render URL read result with tree-based layout */ export declare function renderReadUrlResult(result: { content: Array<{ type: string; text?: string; }>; details?: ReadUrlToolDetails; isError?: boolean; }, options: RenderResultOptions, uiTheme?: Theme): Component; export {};