import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import * as components from "../components/index.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type UploadChunkGlobals = {
    /**
     * The cloud name of your product environment.
     */
    cloudName?: string | undefined;
};
export type UploadChunkRequest = {
    /**
     * The type of resource to upload:
     *
     * @remarks
     * - "image" for uploading strictly images
     * - "video" for uploading strictly videos
     * - "raw" for uploading non-media files
     * - "auto" for allowing Cloudinary to automatically detect the type of the uploaded file
     */
    resourceType?: components.UploadResourceType | undefined;
    /**
     * The range of bytes being uploaded in the current chunk, in the format "bytes start-end/total". For example, "bytes 0-999999/3000000" indicates the first 1MB chunk of a 3MB file.
     */
    contentRange: string;
    /**
     * A unique identifier for the upload. Must be the same for all chunks of the same file.
     */
    xUniqueUploadId: string;
    uploadRequest: components.UploadRequest;
};
/**
 * Chunk upload successful. For all but the final chunk, this returns upload status. For the final chunk, it returns the complete upload response.
 */
export type UploadChunkResponseBody = components.NonFinalChunkUploadResponse | components.AsyncUploadResponse | components.UploadResponse;
export type UploadChunkResponse = components.NonFinalChunkUploadResponse | components.AsyncUploadResponse | components.UploadResponse | string;
/** @internal */
export declare const UploadChunkGlobals$inboundSchema: z.ZodType<UploadChunkGlobals, z.ZodTypeDef, unknown>;
/** @internal */
export type UploadChunkGlobals$Outbound = {
    cloud_name?: string | undefined;
};
/** @internal */
export declare const UploadChunkGlobals$outboundSchema: z.ZodType<UploadChunkGlobals$Outbound, z.ZodTypeDef, UploadChunkGlobals>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UploadChunkGlobals$ {
    /** @deprecated use `UploadChunkGlobals$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UploadChunkGlobals, z.ZodTypeDef, unknown>;
    /** @deprecated use `UploadChunkGlobals$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UploadChunkGlobals$Outbound, z.ZodTypeDef, UploadChunkGlobals>;
    /** @deprecated use `UploadChunkGlobals$Outbound` instead. */
    type Outbound = UploadChunkGlobals$Outbound;
}
export declare function uploadChunkGlobalsToJSON(uploadChunkGlobals: UploadChunkGlobals): string;
export declare function uploadChunkGlobalsFromJSON(jsonString: string): SafeParseResult<UploadChunkGlobals, SDKValidationError>;
/** @internal */
export declare const UploadChunkRequest$inboundSchema: z.ZodType<UploadChunkRequest, z.ZodTypeDef, unknown>;
/** @internal */
export type UploadChunkRequest$Outbound = {
    resource_type: string;
    "Content-Range": string;
    "X-Unique-Upload-Id": string;
    upload_request: components.UploadRequest$Outbound;
};
/** @internal */
export declare const UploadChunkRequest$outboundSchema: z.ZodType<UploadChunkRequest$Outbound, z.ZodTypeDef, UploadChunkRequest>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UploadChunkRequest$ {
    /** @deprecated use `UploadChunkRequest$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UploadChunkRequest, z.ZodTypeDef, unknown>;
    /** @deprecated use `UploadChunkRequest$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UploadChunkRequest$Outbound, z.ZodTypeDef, UploadChunkRequest>;
    /** @deprecated use `UploadChunkRequest$Outbound` instead. */
    type Outbound = UploadChunkRequest$Outbound;
}
export declare function uploadChunkRequestToJSON(uploadChunkRequest: UploadChunkRequest): string;
export declare function uploadChunkRequestFromJSON(jsonString: string): SafeParseResult<UploadChunkRequest, SDKValidationError>;
/** @internal */
export declare const UploadChunkResponseBody$inboundSchema: z.ZodType<UploadChunkResponseBody, z.ZodTypeDef, unknown>;
/** @internal */
export type UploadChunkResponseBody$Outbound = components.NonFinalChunkUploadResponse$Outbound | components.AsyncUploadResponse$Outbound | components.UploadResponse$Outbound;
/** @internal */
export declare const UploadChunkResponseBody$outboundSchema: z.ZodType<UploadChunkResponseBody$Outbound, z.ZodTypeDef, UploadChunkResponseBody>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UploadChunkResponseBody$ {
    /** @deprecated use `UploadChunkResponseBody$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UploadChunkResponseBody, z.ZodTypeDef, unknown>;
    /** @deprecated use `UploadChunkResponseBody$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UploadChunkResponseBody$Outbound, z.ZodTypeDef, UploadChunkResponseBody>;
    /** @deprecated use `UploadChunkResponseBody$Outbound` instead. */
    type Outbound = UploadChunkResponseBody$Outbound;
}
export declare function uploadChunkResponseBodyToJSON(uploadChunkResponseBody: UploadChunkResponseBody): string;
export declare function uploadChunkResponseBodyFromJSON(jsonString: string): SafeParseResult<UploadChunkResponseBody, SDKValidationError>;
/** @internal */
export declare const UploadChunkResponse$inboundSchema: z.ZodType<UploadChunkResponse, z.ZodTypeDef, unknown>;
/** @internal */
export type UploadChunkResponse$Outbound = components.NonFinalChunkUploadResponse$Outbound | components.AsyncUploadResponse$Outbound | components.UploadResponse$Outbound | string;
/** @internal */
export declare const UploadChunkResponse$outboundSchema: z.ZodType<UploadChunkResponse$Outbound, z.ZodTypeDef, UploadChunkResponse>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UploadChunkResponse$ {
    /** @deprecated use `UploadChunkResponse$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UploadChunkResponse, z.ZodTypeDef, unknown>;
    /** @deprecated use `UploadChunkResponse$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UploadChunkResponse$Outbound, z.ZodTypeDef, UploadChunkResponse>;
    /** @deprecated use `UploadChunkResponse$Outbound` instead. */
    type Outbound = UploadChunkResponse$Outbound;
}
export declare function uploadChunkResponseToJSON(uploadChunkResponse: UploadChunkResponse): string;
export declare function uploadChunkResponseFromJSON(jsonString: string): SafeParseResult<UploadChunkResponse, SDKValidationError>;
//# sourceMappingURL=uploadchunk.d.ts.map