import * as z from "zod";
import { ClosedEnum } from "../types/enums.js";
import { AccessControlItem } from "./accesscontrolitem.js";
import { ResponsiveBreakpoint } from "./responsivebreakpoint.js";
import { StructuredMetadataParam } from "./structuredmetadataparam.js";
import { TagsParam } from "./tagsparam.js";
import { UploadDeliveryType } from "./uploaddeliverytype.js";
/**
 * Configuration object for automatic video transcription with translation options.
 */
export type UploadRequestAutoTranscription = {
    translate?: Array<string> | undefined;
};
export declare const UploadRequestAutoTranscription$zodSchema: z.ZodType<UploadRequestAutoTranscription>;
export type UploadRequestAutoTranscriptionUnion = boolean | UploadRequestAutoTranscription;
export declare const UploadRequestAutoTranscriptionUnion$zodSchema: z.ZodType<UploadRequestAutoTranscriptionUnion>;
/**
 * Deprecated. Use access_control instead. Allows the asset to behave as if it's of the authenticated delivery type while still using the default 'upload' type in delivery URLs. The asset can later be made public by changing its access_mode via the Admin API, without having to update any delivery URLs.
 *
 * @remarks
 *
 * @deprecated enum: The access_mode parameter is no longer supported. To restrict access to assets, you can use the access_control parameter.. Use access_control instead.
 */
export declare const UploadRequestAccessMode: {
    readonly Public: "public";
    readonly Authenticated: "authenticated";
};
/**
 * Deprecated. Use access_control instead. Allows the asset to behave as if it's of the authenticated delivery type while still using the default 'upload' type in delivery URLs. The asset can later be made public by changing its access_mode via the Admin API, without having to update any delivery URLs.
 *
 * @remarks
 *
 * @deprecated enum: The access_mode parameter is no longer supported. To restrict access to assets, you can use the access_control parameter.. Use access_control instead.
 */
export type UploadRequestAccessMode = ClosedEnum<typeof UploadRequestAccessMode>;
export declare const UploadRequestAccessMode$zodSchema: z.ZodEnum<{
    authenticated: "authenticated";
    public: "public";
}>;
/**
 * Named region coordinate groups for cropping with region gravity.
 *
 * @remarks
 * Can be a JSON-encoded string or an object. Each region name may contain
 * only letters, numbers, or hyphens, and must have at least two coordinate pairs.
 */
export type UploadRequestRegions = string | {
    [k: string]: Array<Array<number>>;
};
export declare const UploadRequestRegions$zodSchema: z.ZodType<UploadRequestRegions>;
/**
 * Settings to automatically generate breakpoints for responsive images.
 */
export type UploadRequestResponsiveBreakpoints = Array<ResponsiveBreakpoint> | ResponsiveBreakpoint;
export declare const UploadRequestResponsiveBreakpoints$zodSchema: z.ZodType<UploadRequestResponsiveBreakpoints>;
/**
 * Parameters for configuring asset uploads, including transformation, tagging, metadata, and delivery options.
 */
export type UploadRequest = {
    accessibility_analysis?: boolean | undefined;
    asset_folder?: string | undefined;
    async?: boolean | undefined;
    auto_chaptering?: boolean | undefined;
    auto_tagging?: number | undefined;
    auto_transcription?: boolean | UploadRequestAutoTranscription | undefined;
    access_control?: Array<AccessControlItem> | undefined;
    access_mode?: UploadRequestAccessMode | undefined;
    backup?: boolean | undefined;
    background_removal?: string | undefined;
    callback?: string | undefined;
    categorization?: string | undefined;
    cinemagraph_analysis?: boolean | undefined;
    colors?: boolean | undefined;
    detection?: string | undefined;
    discard_original_filename?: boolean | undefined;
    display_name?: string | undefined;
    eager_async?: boolean | undefined;
    eager_notification_url?: string | undefined;
    eval?: string | undefined;
    faces?: boolean | undefined;
    filename_override?: string | undefined;
    folder?: string | undefined;
    format?: string | undefined;
    invalidate?: boolean | undefined;
    media_metadata?: boolean | undefined;
    metadata?: StructuredMetadataParam | undefined;
    clear_invalid?: boolean | undefined;
    moderation?: string | undefined;
    notification_url?: string | undefined;
    ocr?: string | undefined;
    on_success?: string | undefined;
    overwrite?: boolean | undefined;
    phash?: boolean | undefined;
    proxy?: string | undefined;
    public_id?: string | undefined;
    public_id_prefix?: string | undefined;
    quality_analysis?: boolean | undefined;
    raw_convert?: string | undefined;
    regions?: string | {
        [k: string]: Array<Array<number>>;
    } | undefined;
    responsive_breakpoints?: Array<ResponsiveBreakpoint> | ResponsiveBreakpoint | undefined;
    return_delete_token?: boolean | undefined;
    upload_preset?: string | undefined;
    use_asset_folder_as_public_id_prefix?: boolean | undefined;
    use_filename?: boolean | undefined;
    use_filename_as_display_name?: boolean | undefined;
    unique_display_name?: boolean | undefined;
    unique_filename?: boolean | undefined;
    visual_search?: boolean | undefined;
    tags?: TagsParam | undefined;
    context?: string | undefined;
    eager?: string | undefined;
    transformation?: string | undefined;
    allowed_formats?: string | undefined;
    headers?: string | undefined;
    face_coordinates?: string | undefined;
    custom_coordinates?: string | undefined;
    type?: UploadDeliveryType | undefined;
    file: string;
};
export declare const UploadRequest$zodSchema: z.ZodType<UploadRequest>;
//# sourceMappingURL=uploadrequest.d.ts.map