import { z } from 'zod'; export declare const DEFAULT_SEARCH_TEXT_LIMIT = 20; export declare const DEFAULT_GLOB_FILES_LIMIT = 20; export declare const MAX_SEARCH_LINE_CHARS = 500; export declare const MAX_READ_LINE_CHARS = 2000; export declare const MAX_OPERATION_OUTPUT_CHARS = 20000; export declare const MAX_SEARCH_CONTEXT_LINES = 10; export declare const MAX_READ_RANGES = 10; export declare const searchKnowledgeInputSchema: z.ZodObject<{ pattern: z.ZodString; path: z.ZodEffects>, string[] | undefined, unknown>; output_mode: z.ZodOptional>; head_limit: z.ZodOptional; '-C': z.ZodOptional; '-i': z.ZodOptional; }, "strict", z.ZodTypeAny, { pattern: string; path?: string[] | undefined; output_mode?: "content" | "count" | "files_with_matches" | undefined; head_limit?: number | undefined; '-C'?: number | undefined; '-i'?: boolean | undefined; }, { pattern: string; path?: unknown; output_mode?: "content" | "count" | "files_with_matches" | undefined; head_limit?: number | undefined; '-C'?: number | undefined; '-i'?: boolean | undefined; }>; export declare const globKnowledgeFilesInputSchema: z.ZodEffects; offset: z.ZodOptional; caseSensitive: z.ZodOptional; }, "strict", z.ZodTypeAny, { pattern: string; limit?: number | undefined; offset?: number | undefined; caseSensitive?: boolean | undefined; }, { pattern: string; limit?: number | undefined; offset?: number | undefined; caseSensitive?: boolean | undefined; }>, { pattern: string; limit?: number | undefined; offset?: number | undefined; caseSensitive?: boolean | undefined; }, { pattern: string; limit?: number | undefined; offset?: number | undefined; caseSensitive?: boolean | undefined; }>; export declare const readKnowledgeInputSchema: z.ZodEffects; fileId: z.ZodOptional; ranges: z.ZodOptional, "many">>; }, "strict", z.ZodTypeAny, { file?: string | undefined; fileId?: string | undefined; ranges?: { startLine: number; endLine: number; }[] | undefined; }, { file?: string | undefined; fileId?: string | undefined; ranges?: { startLine: number; endLine: number; }[] | undefined; }>, { file?: string | undefined; fileId?: string | undefined; ranges?: { startLine: number; endLine: number; }[] | undefined; }, { file?: string | undefined; fileId?: string | undefined; ranges?: { startLine: number; endLine: number; }[] | undefined; }>; export type SearchKnowledgeRequest = z.infer; export type GlobKnowledgeFilesRequest = z.infer; export type ReadKnowledgeRequest = z.infer; export interface AgentKnowledgeFileReference { file: string; fileId: string; binaryDataId: string; displayName: string; mimeType: string; fileSizeBytes: number; createdAt: string; } export interface AgentKnowledgeCitation { file: string; fileId: string; displayName: string; startLine: number; endLine: number; } export interface AgentKnowledgeLine { lineNumber: number; text: string; truncated: boolean; } export interface SearchKnowledgeMatch { file: string; fileId: string; displayName: string; lineNumber: number; text: string; textTruncated: boolean; context?: SearchKnowledgeContextLine[]; } export interface SearchKnowledgeContextLine { lineNumber: number; text: string; matched: boolean; } export interface SearchKnowledgeCount { file: string; fileId: string; displayName: string; count: number; } export interface SearchKnowledgeContentResult { outputMode: 'content'; matches: SearchKnowledgeMatch[]; limit: number; hasMore: boolean; truncated: boolean; } export interface SearchKnowledgeFilesResult { outputMode: 'files_with_matches'; files: AgentKnowledgeFileReference[]; limit: number; hasMore: boolean; truncated: boolean; } export interface SearchKnowledgeCountResult { outputMode: 'count'; counts: SearchKnowledgeCount[]; limit: number; hasMore: boolean; truncated: boolean; } export type SearchKnowledgeResult = SearchKnowledgeContentResult | SearchKnowledgeFilesResult | SearchKnowledgeCountResult; export interface GlobKnowledgeFilesResult { files: AgentKnowledgeFileReference[]; limit: number; offset: number; hasMore: boolean; } export interface ReadKnowledgeRangeResult { startLine: number; endLine: number; text: string; citation: AgentKnowledgeCitation; } export interface ReadKnowledgeResult { file: string; fileId: string; displayName: string; ranges: ReadKnowledgeRangeResult[]; truncated: boolean; } export declare function parseSearchKnowledgeRequest(input: unknown): SearchKnowledgeRequest; export declare function parseGlobKnowledgeFilesRequest(input: unknown): GlobKnowledgeFilesRequest; export declare function parseReadKnowledgeRequest(input: unknown): ReadKnowledgeRequest; export declare function assertValidKnowledgeFilePath(filePath: string): string; export declare function truncateKnowledgeText(text: string, maxLength: number): { text: string; truncated: boolean; };