import type { Context } from 'koa';
declare const _default: {
    bulkUpdateFileInfo(ctx: Context): Promise<void>;
    updateFileInfo(ctx: Context): Promise<void>;
    replaceFile(ctx: Context): Promise<void>;
    uploadFiles(ctx: Context): Promise<any>;
    /**
     * @experimental
     * Upload a single file and return the created File.
     *
     * Accepts one file per request (multipart `files` + `fileInfo`) and returns a
     * single `File` object. Unlike `uploadFiles`, it does **not** run AI metadata
     * generation inline — that responsibility is decoupled and will be handled by a
     * background job. Auth and permission checks mirror `POST /upload`.
     */
    unstable_uploadFile(ctx: Context): Promise<any>;
    /**
     * @experimental
     * Upload files from URLs with SSE streaming for per-file progress
     *
     * Accepts JSON body with URLs and fetches them server-side.
     * Streams Server-Sent Events as each URL is fetched and uploaded:
     * - file:fetching  — when starting to fetch a URL
     * - file:uploading — when upload starts for a fetched file
     * - file:complete  — when a file is successfully uploaded
     * - file:error     — when a URL fetch or upload fails
     * - stream:complete — final summary with all results
     */
    unstable_uploadFromUrls(ctx: Context): Promise<any>;
    upload(ctx: Context): Promise<void>;
};
export default _default;
//# sourceMappingURL=admin-upload.d.ts.map