import * as z from "zod/v4";
import { OpenEnum } from "../types/enums.js";
import { FrameImage, FrameImage$Outbound } from "./frameimage.js";
import { InputReference, InputReference$Outbound } from "./inputreference.js";
/**
 * Aspect ratio of the generated video
 */
export declare const VideoGenerationRequestAspectRatio: {
    readonly OneHundredAndSixtyNine: "16:9";
    readonly NineHundredAndSixteen: "9:16";
    readonly Eleven: "1:1";
    readonly FortyThree: "4:3";
    readonly ThirtyFour: "3:4";
    readonly ThirtyTwo: "3:2";
    readonly TwentyThree: "2:3";
    readonly TwoHundredAndNineteen: "21:9";
    readonly NineHundredAndTwentyOne: "9:21";
};
/**
 * Aspect ratio of the generated video
 */
export type VideoGenerationRequestAspectRatio = OpenEnum<typeof VideoGenerationRequestAspectRatio>;
/**
 * Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped.
 */
export type VideoGenerationRequestOptions = {
    oneai?: {
        [k: string]: any;
    } | undefined;
    ai21?: {
        [k: string]: any;
    } | undefined;
    aionLabs?: {
        [k: string]: any;
    } | undefined;
    akashml?: {
        [k: string]: any;
    } | undefined;
    alibaba?: {
        [k: string]: any;
    } | undefined;
    amazonBedrock?: {
        [k: string]: any;
    } | undefined;
    amazonBedrockClaudeOnAws?: {
        [k: string]: any;
    } | undefined;
    amazonNova?: {
        [k: string]: any;
    } | undefined;
    ambient?: {
        [k: string]: any;
    } | undefined;
    anthropic?: {
        [k: string]: any;
    } | undefined;
    anthropic2?: {
        [k: string]: any;
    } | undefined;
    anyscale?: {
        [k: string]: any;
    } | undefined;
    arceeAi?: {
        [k: string]: any;
    } | undefined;
    atlasCloud?: {
        [k: string]: any;
    } | undefined;
    atoma?: {
        [k: string]: any;
    } | undefined;
    avian?: {
        [k: string]: any;
    } | undefined;
    azure?: {
        [k: string]: any;
    } | undefined;
    baidu?: {
        [k: string]: any;
    } | undefined;
    baseten?: {
        [k: string]: any;
    } | undefined;
    blackForestLabs?: {
        [k: string]: any;
    } | undefined;
    byteplus?: {
        [k: string]: any;
    } | undefined;
    centml?: {
        [k: string]: any;
    } | undefined;
    cerebras?: {
        [k: string]: any;
    } | undefined;
    chutes?: {
        [k: string]: any;
    } | undefined;
    cirrascale?: {
        [k: string]: any;
    } | undefined;
    clarifai?: {
        [k: string]: any;
    } | undefined;
    claudeOnAws?: {
        [k: string]: any;
    } | undefined;
    cloudflare?: {
        [k: string]: any;
    } | undefined;
    cohere?: {
        [k: string]: any;
    } | undefined;
    coreweave?: {
        [k: string]: any;
    } | undefined;
    crofai?: {
        [k: string]: any;
    } | undefined;
    crucible?: {
        [k: string]: any;
    } | undefined;
    crusoe?: {
        [k: string]: any;
    } | undefined;
    darkbloom?: {
        [k: string]: any;
    } | undefined;
    databricks?: {
        [k: string]: any;
    } | undefined;
    decart?: {
        [k: string]: any;
    } | undefined;
    deepgram?: {
        [k: string]: any;
    } | undefined;
    deepinfra?: {
        [k: string]: any;
    } | undefined;
    deepseek?: {
        [k: string]: any;
    } | undefined;
    dekallm?: {
        [k: string]: any;
    } | undefined;
    digitalocean?: {
        [k: string]: any;
    } | undefined;
    enfer?: {
        [k: string]: any;
    } | undefined;
    fakeProvider?: {
        [k: string]: any;
    } | undefined;
    featherless?: {
        [k: string]: any;
    } | undefined;
    fireworks?: {
        [k: string]: any;
    } | undefined;
    fishAudio?: {
        [k: string]: any;
    } | undefined;
    friendli?: {
        [k: string]: any;
    } | undefined;
    gmicloud?: {
        [k: string]: any;
    } | undefined;
    googleAiStudio?: {
        [k: string]: any;
    } | undefined;
    googleVertex?: {
        [k: string]: any;
    } | undefined;
    gopomelo?: {
        [k: string]: any;
    } | undefined;
    groq?: {
        [k: string]: any;
    } | undefined;
    heygen?: {
        [k: string]: any;
    } | undefined;
    huggingface?: {
        [k: string]: any;
    } | undefined;
    hyperbolic?: {
        [k: string]: any;
    } | undefined;
    hyperbolicQuantized?: {
        [k: string]: any;
    } | undefined;
    inception?: {
        [k: string]: any;
    } | undefined;
    inceptron?: {
        [k: string]: any;
    } | undefined;
    inferactVllm?: {
        [k: string]: any;
    } | undefined;
    inferenceNet?: {
        [k: string]: any;
    } | undefined;
    infermatic?: {
        [k: string]: any;
    } | undefined;
    inflection?: {
        [k: string]: any;
    } | undefined;
    inocloud?: {
        [k: string]: any;
    } | undefined;
    ioNet?: {
        [k: string]: any;
    } | undefined;
    ionstream?: {
        [k: string]: any;
    } | undefined;
    klusterai?: {
        [k: string]: any;
    } | undefined;
    krea?: {
        [k: string]: any;
    } | undefined;
    lambda?: {
        [k: string]: any;
    } | undefined;
    lepton?: {
        [k: string]: any;
    } | undefined;
    liquid?: {
        [k: string]: any;
    } | undefined;
    lynn?: {
        [k: string]: any;
    } | undefined;
    lynnPrivate?: {
        [k: string]: any;
    } | undefined;
    mancer?: {
        [k: string]: any;
    } | undefined;
    mancerOld?: {
        [k: string]: any;
    } | undefined;
    mara?: {
        [k: string]: any;
    } | undefined;
    meta?: {
        [k: string]: any;
    } | undefined;
    minimax?: {
        [k: string]: any;
    } | undefined;
    mistral?: {
        [k: string]: any;
    } | undefined;
    modal?: {
        [k: string]: any;
    } | undefined;
    modelrun?: {
        [k: string]: any;
    } | undefined;
    modular?: {
        [k: string]: any;
    } | undefined;
    moonshotai?: {
        [k: string]: any;
    } | undefined;
    morph?: {
        [k: string]: any;
    } | undefined;
    ncompass?: {
        [k: string]: any;
    } | undefined;
    nebius?: {
        [k: string]: any;
    } | undefined;
    nexAgi?: {
        [k: string]: any;
    } | undefined;
    nextbit?: {
        [k: string]: any;
    } | undefined;
    nineteen?: {
        [k: string]: any;
    } | undefined;
    novita?: {
        [k: string]: any;
    } | undefined;
    nvidia?: {
        [k: string]: any;
    } | undefined;
    octoai?: {
        [k: string]: any;
    } | undefined;
    openInference?: {
        [k: string]: any;
    } | undefined;
    openai?: {
        [k: string]: any;
    } | undefined;
    parasail?: {
        [k: string]: any;
    } | undefined;
    perceptron?: {
        [k: string]: any;
    } | undefined;
    perplexity?: {
        [k: string]: any;
    } | undefined;
    phala?: {
        [k: string]: any;
    } | undefined;
    poolside?: {
        [k: string]: any;
    } | undefined;
    quiver?: {
        [k: string]: any;
    } | undefined;
    recraft?: {
        [k: string]: any;
    } | undefined;
    recursal?: {
        [k: string]: any;
    } | undefined;
    reflection?: {
        [k: string]: any;
    } | undefined;
    reka?: {
        [k: string]: any;
    } | undefined;
    relace?: {
        [k: string]: any;
    } | undefined;
    replicate?: {
        [k: string]: any;
    } | undefined;
    runway?: {
        [k: string]: any;
    } | undefined;
    sailResearch?: {
        [k: string]: any;
    } | undefined;
    sakana?: {
        [k: string]: any;
    } | undefined;
    sakanaAi?: {
        [k: string]: any;
    } | undefined;
    sambanova?: {
        [k: string]: any;
    } | undefined;
    sambanovaCloaked?: {
        [k: string]: any;
    } | undefined;
    seed?: {
        [k: string]: any;
    } | undefined;
    sfCompute?: {
        [k: string]: any;
    } | undefined;
    siliconflow?: {
        [k: string]: any;
    } | undefined;
    sourceful?: {
        [k: string]: any;
    } | undefined;
    stealth?: {
        [k: string]: any;
    } | undefined;
    stepfun?: {
        [k: string]: any;
    } | undefined;
    streamlake?: {
        [k: string]: any;
    } | undefined;
    switchpoint?: {
        [k: string]: any;
    } | undefined;
    targon?: {
        [k: string]: any;
    } | undefined;
    tencent?: {
        [k: string]: any;
    } | undefined;
    tenstorrent?: {
        [k: string]: any;
    } | undefined;
    thinkingmachines?: {
        [k: string]: any;
    } | undefined;
    together?: {
        [k: string]: any;
    } | undefined;
    togetherLite?: {
        [k: string]: any;
    } | undefined;
    ubicloud?: {
        [k: string]: any;
    } | undefined;
    upstage?: {
        [k: string]: any;
    } | undefined;
    venice?: {
        [k: string]: any;
    } | undefined;
    voyageai?: {
        [k: string]: any;
    } | undefined;
    wafer?: {
        [k: string]: any;
    } | undefined;
    wandb?: {
        [k: string]: any;
    } | undefined;
    wandbLegacy?: {
        [k: string]: any;
    } | undefined;
    xai?: {
        [k: string]: any;
    } | undefined;
    xiaomi?: {
        [k: string]: any;
    } | undefined;
    zAi?: {
        [k: string]: any;
    } | undefined;
};
/**
 * Provider-specific passthrough configuration
 */
export type VideoGenerationRequestProvider = {
    options?: VideoGenerationRequestOptions | undefined;
};
/**
 * Resolution of the generated video
 */
export declare const VideoGenerationRequestResolution: {
    readonly FourHundredAndEightyp: "480p";
    readonly SevenHundredAndTwentyp: "720p";
    readonly SevenHundredAndSixtyEightp: "768p";
    readonly OneThousandAndEightyp: "1080p";
    readonly OneK: "1K";
    readonly TwoK: "2K";
    readonly FourK: "4K";
};
/**
 * Resolution of the generated video
 */
export type VideoGenerationRequestResolution = OpenEnum<typeof VideoGenerationRequestResolution>;
export type VideoGenerationRequest = {
    /**
     * Aspect ratio of the generated video
     */
    aspectRatio?: VideoGenerationRequestAspectRatio | undefined;
    /**
     * URL to receive a webhook notification when the video generation job completes. Overrides the workspace-level default callback URL if set. Must be HTTPS.
     */
    callbackUrl?: string | undefined;
    /**
     * Creativity level for video upscaling models only. This parameter is not supported by video generation models.
     */
    creativity?: number | undefined;
    /**
     * Duration of the generated video in seconds
     */
    duration?: number | undefined;
    /**
     * Images to use as the first and/or last frame of the generated video. Each image must specify a frame_type of first_frame or last_frame.
     */
    frameImages?: Array<FrameImage> | undefined;
    /**
     * Whether to generate audio alongside the video. Defaults to the endpoint's generate_audio capability flag, false if not set.
     */
    generateAudio?: boolean | undefined;
    /**
     * Reference assets to guide video generation. Accepts image, audio, and video references. Audio and video references are only honored by providers that support them (including BytePlus Seedance generation 2 and newer); other providers use image references and ignore the rest.
     */
    inputReferences?: Array<InputReference> | undefined;
    model: string;
    /**
     * Text prompt describing the video to generate. Optional for models that support generating a video from image input alone; required by all other models.
     */
    prompt?: string | undefined;
    /**
     * Provider-specific passthrough configuration
     */
    provider?: VideoGenerationRequestProvider | undefined;
    /**
     * Resolution of the generated video
     */
    resolution?: VideoGenerationRequestResolution | undefined;
    /**
     * If specified, the generation will sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed for all providers.
     */
    seed?: number | undefined;
    /**
     * Exact pixel dimensions of the generated video in "WIDTHxHEIGHT" format (e.g. "1280x720"). Interchangeable with resolution + aspect_ratio.
     */
    size?: string | undefined;
    /**
     * Upscale factor for video upscaling models only. This parameter is not supported by video generation models.
     */
    upscaleFactor?: number | undefined;
};
/** @internal */
export declare const VideoGenerationRequestAspectRatio$outboundSchema: z.ZodType<string, VideoGenerationRequestAspectRatio>;
/** @internal */
export type VideoGenerationRequestOptions$Outbound = {
    "01ai"?: {
        [k: string]: any;
    } | undefined;
    ai21?: {
        [k: string]: any;
    } | undefined;
    "aion-labs"?: {
        [k: string]: any;
    } | undefined;
    akashml?: {
        [k: string]: any;
    } | undefined;
    alibaba?: {
        [k: string]: any;
    } | undefined;
    "amazon-bedrock"?: {
        [k: string]: any;
    } | undefined;
    "amazon-bedrock/claude-on-aws"?: {
        [k: string]: any;
    } | undefined;
    "amazon-nova"?: {
        [k: string]: any;
    } | undefined;
    ambient?: {
        [k: string]: any;
    } | undefined;
    anthropic?: {
        [k: string]: any;
    } | undefined;
    "anthropic/2"?: {
        [k: string]: any;
    } | undefined;
    anyscale?: {
        [k: string]: any;
    } | undefined;
    "arcee-ai"?: {
        [k: string]: any;
    } | undefined;
    "atlas-cloud"?: {
        [k: string]: any;
    } | undefined;
    atoma?: {
        [k: string]: any;
    } | undefined;
    avian?: {
        [k: string]: any;
    } | undefined;
    azure?: {
        [k: string]: any;
    } | undefined;
    baidu?: {
        [k: string]: any;
    } | undefined;
    baseten?: {
        [k: string]: any;
    } | undefined;
    "black-forest-labs"?: {
        [k: string]: any;
    } | undefined;
    byteplus?: {
        [k: string]: any;
    } | undefined;
    centml?: {
        [k: string]: any;
    } | undefined;
    cerebras?: {
        [k: string]: any;
    } | undefined;
    chutes?: {
        [k: string]: any;
    } | undefined;
    cirrascale?: {
        [k: string]: any;
    } | undefined;
    clarifai?: {
        [k: string]: any;
    } | undefined;
    "claude-on-aws"?: {
        [k: string]: any;
    } | undefined;
    cloudflare?: {
        [k: string]: any;
    } | undefined;
    cohere?: {
        [k: string]: any;
    } | undefined;
    coreweave?: {
        [k: string]: any;
    } | undefined;
    crofai?: {
        [k: string]: any;
    } | undefined;
    crucible?: {
        [k: string]: any;
    } | undefined;
    crusoe?: {
        [k: string]: any;
    } | undefined;
    darkbloom?: {
        [k: string]: any;
    } | undefined;
    databricks?: {
        [k: string]: any;
    } | undefined;
    decart?: {
        [k: string]: any;
    } | undefined;
    deepgram?: {
        [k: string]: any;
    } | undefined;
    deepinfra?: {
        [k: string]: any;
    } | undefined;
    deepseek?: {
        [k: string]: any;
    } | undefined;
    dekallm?: {
        [k: string]: any;
    } | undefined;
    digitalocean?: {
        [k: string]: any;
    } | undefined;
    enfer?: {
        [k: string]: any;
    } | undefined;
    "fake-provider"?: {
        [k: string]: any;
    } | undefined;
    featherless?: {
        [k: string]: any;
    } | undefined;
    fireworks?: {
        [k: string]: any;
    } | undefined;
    "fish-audio"?: {
        [k: string]: any;
    } | undefined;
    friendli?: {
        [k: string]: any;
    } | undefined;
    gmicloud?: {
        [k: string]: any;
    } | undefined;
    "google-ai-studio"?: {
        [k: string]: any;
    } | undefined;
    "google-vertex"?: {
        [k: string]: any;
    } | undefined;
    gopomelo?: {
        [k: string]: any;
    } | undefined;
    groq?: {
        [k: string]: any;
    } | undefined;
    heygen?: {
        [k: string]: any;
    } | undefined;
    huggingface?: {
        [k: string]: any;
    } | undefined;
    hyperbolic?: {
        [k: string]: any;
    } | undefined;
    "hyperbolic-quantized"?: {
        [k: string]: any;
    } | undefined;
    inception?: {
        [k: string]: any;
    } | undefined;
    inceptron?: {
        [k: string]: any;
    } | undefined;
    "inferact-vllm"?: {
        [k: string]: any;
    } | undefined;
    "inference-net"?: {
        [k: string]: any;
    } | undefined;
    infermatic?: {
        [k: string]: any;
    } | undefined;
    inflection?: {
        [k: string]: any;
    } | undefined;
    inocloud?: {
        [k: string]: any;
    } | undefined;
    "io-net"?: {
        [k: string]: any;
    } | undefined;
    ionstream?: {
        [k: string]: any;
    } | undefined;
    klusterai?: {
        [k: string]: any;
    } | undefined;
    krea?: {
        [k: string]: any;
    } | undefined;
    lambda?: {
        [k: string]: any;
    } | undefined;
    lepton?: {
        [k: string]: any;
    } | undefined;
    liquid?: {
        [k: string]: any;
    } | undefined;
    lynn?: {
        [k: string]: any;
    } | undefined;
    "lynn-private"?: {
        [k: string]: any;
    } | undefined;
    mancer?: {
        [k: string]: any;
    } | undefined;
    "mancer-old"?: {
        [k: string]: any;
    } | undefined;
    mara?: {
        [k: string]: any;
    } | undefined;
    meta?: {
        [k: string]: any;
    } | undefined;
    minimax?: {
        [k: string]: any;
    } | undefined;
    mistral?: {
        [k: string]: any;
    } | undefined;
    modal?: {
        [k: string]: any;
    } | undefined;
    modelrun?: {
        [k: string]: any;
    } | undefined;
    modular?: {
        [k: string]: any;
    } | undefined;
    moonshotai?: {
        [k: string]: any;
    } | undefined;
    morph?: {
        [k: string]: any;
    } | undefined;
    ncompass?: {
        [k: string]: any;
    } | undefined;
    nebius?: {
        [k: string]: any;
    } | undefined;
    "nex-agi"?: {
        [k: string]: any;
    } | undefined;
    nextbit?: {
        [k: string]: any;
    } | undefined;
    nineteen?: {
        [k: string]: any;
    } | undefined;
    novita?: {
        [k: string]: any;
    } | undefined;
    nvidia?: {
        [k: string]: any;
    } | undefined;
    octoai?: {
        [k: string]: any;
    } | undefined;
    "open-inference"?: {
        [k: string]: any;
    } | undefined;
    openai?: {
        [k: string]: any;
    } | undefined;
    parasail?: {
        [k: string]: any;
    } | undefined;
    perceptron?: {
        [k: string]: any;
    } | undefined;
    perplexity?: {
        [k: string]: any;
    } | undefined;
    phala?: {
        [k: string]: any;
    } | undefined;
    poolside?: {
        [k: string]: any;
    } | undefined;
    quiver?: {
        [k: string]: any;
    } | undefined;
    recraft?: {
        [k: string]: any;
    } | undefined;
    recursal?: {
        [k: string]: any;
    } | undefined;
    reflection?: {
        [k: string]: any;
    } | undefined;
    reka?: {
        [k: string]: any;
    } | undefined;
    relace?: {
        [k: string]: any;
    } | undefined;
    replicate?: {
        [k: string]: any;
    } | undefined;
    runway?: {
        [k: string]: any;
    } | undefined;
    "sail-research"?: {
        [k: string]: any;
    } | undefined;
    sakana?: {
        [k: string]: any;
    } | undefined;
    "sakana-ai"?: {
        [k: string]: any;
    } | undefined;
    sambanova?: {
        [k: string]: any;
    } | undefined;
    "sambanova-cloaked"?: {
        [k: string]: any;
    } | undefined;
    seed?: {
        [k: string]: any;
    } | undefined;
    "sf-compute"?: {
        [k: string]: any;
    } | undefined;
    siliconflow?: {
        [k: string]: any;
    } | undefined;
    sourceful?: {
        [k: string]: any;
    } | undefined;
    stealth?: {
        [k: string]: any;
    } | undefined;
    stepfun?: {
        [k: string]: any;
    } | undefined;
    streamlake?: {
        [k: string]: any;
    } | undefined;
    switchpoint?: {
        [k: string]: any;
    } | undefined;
    targon?: {
        [k: string]: any;
    } | undefined;
    tencent?: {
        [k: string]: any;
    } | undefined;
    tenstorrent?: {
        [k: string]: any;
    } | undefined;
    thinkingmachines?: {
        [k: string]: any;
    } | undefined;
    together?: {
        [k: string]: any;
    } | undefined;
    "together-lite"?: {
        [k: string]: any;
    } | undefined;
    ubicloud?: {
        [k: string]: any;
    } | undefined;
    upstage?: {
        [k: string]: any;
    } | undefined;
    venice?: {
        [k: string]: any;
    } | undefined;
    voyageai?: {
        [k: string]: any;
    } | undefined;
    wafer?: {
        [k: string]: any;
    } | undefined;
    wandb?: {
        [k: string]: any;
    } | undefined;
    "wandb-legacy"?: {
        [k: string]: any;
    } | undefined;
    xai?: {
        [k: string]: any;
    } | undefined;
    xiaomi?: {
        [k: string]: any;
    } | undefined;
    "z-ai"?: {
        [k: string]: any;
    } | undefined;
};
/** @internal */
export declare const VideoGenerationRequestOptions$outboundSchema: z.ZodType<VideoGenerationRequestOptions$Outbound, VideoGenerationRequestOptions>;
export declare function videoGenerationRequestOptionsToJSON(videoGenerationRequestOptions: VideoGenerationRequestOptions): string;
/** @internal */
export type VideoGenerationRequestProvider$Outbound = {
    options?: VideoGenerationRequestOptions$Outbound | undefined;
};
/** @internal */
export declare const VideoGenerationRequestProvider$outboundSchema: z.ZodType<VideoGenerationRequestProvider$Outbound, VideoGenerationRequestProvider>;
export declare function videoGenerationRequestProviderToJSON(videoGenerationRequestProvider: VideoGenerationRequestProvider): string;
/** @internal */
export declare const VideoGenerationRequestResolution$outboundSchema: z.ZodType<string, VideoGenerationRequestResolution>;
/** @internal */
export type VideoGenerationRequest$Outbound = {
    aspect_ratio?: string | undefined;
    callback_url?: string | undefined;
    creativity?: number | undefined;
    duration?: number | undefined;
    frame_images?: Array<FrameImage$Outbound> | undefined;
    generate_audio?: boolean | undefined;
    input_references?: Array<InputReference$Outbound> | undefined;
    model: string;
    prompt?: string | undefined;
    provider?: VideoGenerationRequestProvider$Outbound | undefined;
    resolution?: string | undefined;
    seed?: number | undefined;
    size?: string | undefined;
    upscale_factor?: number | undefined;
};
/** @internal */
export declare const VideoGenerationRequest$outboundSchema: z.ZodType<VideoGenerationRequest$Outbound, VideoGenerationRequest>;
export declare function videoGenerationRequestToJSON(videoGenerationRequest: VideoGenerationRequest): string;
//# sourceMappingURL=videogenerationrequest.d.ts.map