import { CloudinaryAssetMgmtCore } from "../core.js";
import { RequestOptions } from "../lib/sdks.js";
import { APIError } from "../models/errors/apierror.js";
import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError } from "../models/errors/httpclienterrors.js";
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
import { UploadRequest } from "../models/uploadrequest.js";
import { UploadResourceType } from "../models/uploadresourcetype.js";
import { APIPromise } from "../types/async.js";
import { Result } from "../types/fp.js";
export declare enum UploadAcceptEnum {
    applicationJsonAccept = "application/json",
    textHtmlAccept = "text/html"
}
/**
 * Uploads media assets (images, videos, raw files) to your Cloudinary product environment
 *
 * @remarks
 * Uploads media assets (images, videos, raw files) to your Cloudinary product environment. The file is securely stored
 * in the cloud with backup and revision history. Cloudinary automatically analyzes and saves important data about each
 * asset, such as format, size, resolution, and prominent colors, which is indexed to enable searching on those attributes.
 *
 * Supports uploading from:
 * - Local file paths (SDKs/MCP server only). For MCP server path MUST start with file://
 * - Remote HTTP/HTTPS URLs
 * - Base64 Data URIs (max ~60 MB)
 * - Private storage buckets (S3 or Google Storage)
 * - FTP addresses
 *
 * The uploaded asset is immediately available for transformation and delivery upon successful upload.
 *
 * Transform media files using transformation syntax in delivery URLs, which creates derived files accessible immediately without re-uploading the original.
 */
export declare function uploadUpload(client$: CloudinaryAssetMgmtCore, resource_type: UploadResourceType | undefined, upload_request: UploadRequest, options?: RequestOptions): APIPromise<Result<Response, APIError | SDKValidationError | UnexpectedClientError | InvalidRequestError | RequestAbortedError | RequestTimeoutError | ConnectionError>>;
//# sourceMappingURL=uploadUpload.d.ts.map