import * as z from "zod";
import { ClosedEnum } from "../types/enums.js";
import { ApiError } from "./apierror.js";
import { ArchiveResourceType } from "./archiveresourcetype.js";
import { DeliveryTypeAll } from "./deliverytypeall.js";
import { GenerateArchiveResponse } from "./generatearchiveresponse.js";
export type GenerateArchiveGlobals = {
    cloud_name?: string | undefined;
};
export declare const GenerateArchiveGlobals$zodSchema: z.ZodType<GenerateArchiveGlobals>;
/**
 * The method for generating and delivering the archive. Options:
 *
 * @remarks
 * download - Generates and delivers the archive file without storing it
 * create - Creates and stores the archive as a raw asset, returning URLs in the response
 * create_and_download - Creates, stores, and delivers the archive file
 */
export declare const Mode: {
    readonly Download: "download";
    readonly Create: "create";
    readonly CreateAndDownload: "create_and_download";
};
/**
 * The method for generating and delivering the archive. Options:
 *
 * @remarks
 * download - Generates and delivers the archive file without storing it
 * create - Creates and stores the archive as a raw asset, returning URLs in the response
 * create_and_download - Creates, stores, and delivers the archive file
 */
export type Mode = ClosedEnum<typeof Mode>;
export declare const Mode$zodSchema: z.ZodEnum<{
    download: "download";
    create: "create";
    create_and_download: "create_and_download";
}>;
/**
 * The format of the generated archive.
 */
export declare const TargetFormat: {
    readonly Zip: "zip";
    readonly Tgz: "tgz";
};
/**
 * The format of the generated archive.
 */
export type TargetFormat = ClosedEnum<typeof TargetFormat>;
export declare const TargetFormat$zodSchema: z.ZodEnum<{
    zip: "zip";
    tgz: "tgz";
}>;
/**
 * A list of asset folder paths to include in the archive, or a single folder path string. Only available when asset folders are enabled for your account.
 */
export type AssetFolders = Array<string> | string;
export declare const AssetFolders$zodSchema: z.ZodType<AssetFolders>;
/**
 * The archive generation parameters.
 */
export type GenerateArchiveRequestBody = {
    public_ids?: Array<string> | undefined;
    tags?: Array<string> | undefined;
    prefixes?: Array<string> | undefined;
    type?: DeliveryTypeAll | undefined;
    transformations?: string | undefined;
    mode?: Mode | undefined;
    target_format?: TargetFormat | undefined;
    target_public_id?: string | undefined;
    target_asset_folder?: string | undefined;
    flatten_folders?: boolean | undefined;
    flatten_transformations?: boolean | undefined;
    skip_transformation_name?: boolean | undefined;
    allow_missing?: boolean | undefined;
    expires_at?: number | undefined;
    use_original_filename?: boolean | undefined;
    async?: boolean | undefined;
    notification_url?: string | undefined;
    target_tags?: Array<string> | undefined;
    keep_derived?: boolean | undefined;
    fully_qualified_public_ids?: Array<string> | undefined;
    search_expression?: string | undefined;
    target_filename?: string | undefined;
    asset_folders?: Array<string> | string | undefined;
};
export declare const GenerateArchiveRequestBody$zodSchema: z.ZodType<GenerateArchiveRequestBody>;
export type GenerateArchiveRequest = {
    resource_type: ArchiveResourceType;
    RequestBody: GenerateArchiveRequestBody;
};
export declare const GenerateArchiveRequest$zodSchema: z.ZodType<GenerateArchiveRequest>;
export type GenerateArchiveResponseResponse = ApiError | Uint8Array | string | GenerateArchiveResponse;
export declare const GenerateArchiveResponseResponse$zodSchema: z.ZodType<GenerateArchiveResponseResponse>;
//# sourceMappingURL=generatearchiveop.d.ts.map