import { z } from 'zod'; declare const TOOL_SCHEMAS: { readonly copyFile: { readonly description: "Copy a file to a new key within the configured bucket. The source remains intact."; readonly input: z.ZodObject<{ from: z.ZodString; to: z.ZodString; }, z.core.$strip>; }; readonly deleteFile: { readonly description: "Permanently delete a file from the configured bucket."; readonly input: z.ZodObject<{ key: z.ZodString; }, z.core.$strip>; }; readonly downloadFile: { readonly description: "Download a file and return its contents. Returns UTF-8 text by default; set binary=true to receive base64-encoded bytes. Files larger than maxBytes are rejected before transfer."; readonly input: z.ZodObject<{ binary: z.ZodOptional; key: z.ZodString; maxBytes: z.ZodOptional; }, z.core.$strip>; }; readonly getFileMetadata: { readonly description: "Fetch metadata for a single file (size, content type, etag, custom metadata) without transferring its body."; readonly input: z.ZodObject<{ key: z.ZodString; }, z.core.$strip>; }; readonly getFileUrl: { readonly description: "Return a URL the caller can use to fetch a file. Signing adapters return a presigned URL that expires after expiresIn seconds; permanent-CDN adapters (Vercel Blob public) return a permanent URL and ignore expiresIn."; readonly input: z.ZodObject<{ expiresIn: z.ZodOptional; key: z.ZodString; responseContentDisposition: z.ZodOptional; }, z.core.$strip>; }; readonly listFiles: { readonly description: "List files in the configured bucket, optionally filtered by key prefix. Returns paginated metadata with a continuation cursor."; readonly input: z.ZodObject<{ cursor: z.ZodOptional; limit: z.ZodOptional; prefix: z.ZodOptional; }, z.core.$strip>; }; readonly signUploadUrl: { readonly description: "Issue a presigned URL that lets a client upload directly to the configured bucket. Approval-gated by default — the URL grants upload permission until it expires."; readonly input: z.ZodObject<{ contentType: z.ZodOptional; expiresIn: z.ZodNumber; key: z.ZodString; maxSize: z.ZodOptional; minSize: z.ZodOptional; }, z.core.$strip>; }; readonly uploadFile: { readonly description: "Upload a file to the configured bucket. Pass content as UTF-8 text by default, or as base64 with encoding=\"base64\" for binary payloads."; readonly input: z.ZodObject<{ cacheControl: z.ZodOptional; content: z.ZodString; contentType: z.ZodOptional; encoding: z.ZodOptional>; key: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strip>; }; }; type FileToolName = keyof typeof TOOL_SCHEMAS; type FileReadToolName = "listFiles" | "getFileMetadata" | "downloadFile" | "getFileUrl"; type FileWriteToolName = "uploadFile" | "deleteFile" | "copyFile" | "signUploadUrl"; /** * Whether write operations require user approval. * * - `true` — all write tools need approval (default) * - `false` — no approval needed for any write tool * - object — per-tool override; unspecified write tools default to `true` */ type ApprovalConfig = boolean | Partial>; export type { ApprovalConfig as A, FileToolName as F, FileReadToolName as a, FileWriteToolName as b };