import { type EndpointToolContent } from '@xopcai/endpoint-tools-protocol'; export declare const ENDPOINT_UPLOAD_MAX_BYTES: number; export interface EndpointUploadedFile { fileId: string; invocationId: string; name: string; mimeType: string; size: number; sha256: string; path: string; } export interface EndpointUploadGrant { path: string; token: string; maxBytes: number; maxFiles: number; expiresAt: number; } export declare class EndpointUploadError extends Error { } export declare class EndpointUploadService { private readonly rootDir; private readonly grants; private readonly files; constructor(rootDir: string); createGrant(invocationId: string, endpointId: string, now?: number): EndpointUploadGrant; upload(params: { invocationId: string; endpointId: string; token: string; name: string; mimeType: string; bytes: Uint8Array; now?: number; }): EndpointUploadedFile; validateAndClose(invocationId: string, content: EndpointToolContent[]): void; abort(invocationId: string): void; getFile(fileId: string): EndpointUploadedFile | undefined; readFile(fileId: string): Uint8Array | undefined; private deleteFile; }