import * as z from "zod/v4";
import { OpenEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import { SDKValidationError } from "./errors/sdkvalidationerror.js";
export declare const SupportedAspectRatio: {
    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";
};
export type SupportedAspectRatio = OpenEnum<typeof SupportedAspectRatio>;
export declare const SupportedFrameImage: {
    readonly FirstFrame: "first_frame";
    readonly LastFrame: "last_frame";
};
export type SupportedFrameImage = OpenEnum<typeof SupportedFrameImage>;
export declare const SupportedResolution: {
    readonly FourHundredAndEightyp: "480p";
    readonly SevenHundredAndTwentyp: "720p";
    readonly SevenHundredAndSixtyEightp: "768p";
    readonly OneThousandAndEightyp: "1080p";
    readonly OneK: "1K";
    readonly TwoK: "2K";
    readonly FourK: "4K";
};
export type SupportedResolution = OpenEnum<typeof SupportedResolution>;
export declare const SupportedSize: {
    readonly FourHundredAndEightyx480: "480x480";
    readonly FourHundredAndEightyx640: "480x640";
    readonly FourHundredAndEightyx720: "480x720";
    readonly FourHundredAndEightyx854: "480x854";
    readonly FourHundredAndEightyx1120: "480x1120";
    readonly FiveHundredAndSixtyx752: "560x752";
    readonly SixHundredAndFortyx480: "640x480";
    readonly SixHundredAndFortyx640: "640x640";
    readonly SevenHundredAndTwentyx480: "720x480";
    readonly SevenHundredAndTwentyx720: "720x720";
    readonly SevenHundredAndTwentyx960: "720x960";
    readonly SevenHundredAndTwentyx1080: "720x1080";
    readonly SevenHundredAndTwentyx1280: "720x1280";
    readonly SevenHundredAndTwentyx1680: "720x1680";
    readonly SevenHundredAndFiftyTwox560: "752x560";
    readonly SevenHundredAndSixtyEightx768: "768x768";
    readonly SevenHundredAndSixtyEightx1024: "768x1024";
    readonly SevenHundredAndSixtyEightx1152: "768x1152";
    readonly SevenHundredAndSixtyEightx1366: "768x1366";
    readonly SevenHundredAndSixtyEightx1792: "768x1792";
    readonly EightHundredAndThirtyFourx1112: "834x1112";
    readonly EightHundredAndFiftyFourx480: "854x480";
    readonly NineHundredAndSixtyx720: "960x720";
    readonly NineHundredAndSixtyx960: "960x960";
    readonly NineHundredAndNinetyTwox432: "992x432";
    readonly OneThousandAndTwentyFourx768: "1024x768";
    readonly OneThousandAndEightyx720: "1080x720";
    readonly OneThousandAndEightyx1080: "1080x1080";
    readonly OneThousandAndEightyx1440: "1080x1440";
    readonly OneThousandAndEightyx1620: "1080x1620";
    readonly OneThousandAndEightyx1920: "1080x1920";
    readonly OneThousandAndEightyx2520: "1080x2520";
    readonly OneThousandOneHundredAndTwelvex834: "1112x834";
    readonly OneThousandOneHundredAndTwentyx480: "1120x480";
    readonly OneThousandOneHundredAndFiftyTwox768: "1152x768";
    readonly OneThousandTwoHundredAndEightyx720: "1280x720";
    readonly OneThousandThreeHundredAndSixtySixx768: "1366x768";
    readonly OneThousandFourHundredAndFortyx1080: "1440x1080";
    readonly OneThousandFourHundredAndFortyx1440: "1440x1440";
    readonly OneThousandFourHundredAndFortyx1920: "1440x1920";
    readonly OneThousandFourHundredAndFortyx2160: "1440x2160";
    readonly OneThousandFourHundredAndFortyx2560: "1440x2560";
    readonly OneThousandFourHundredAndFortyx3360: "1440x3360";
    readonly OneThousandFourHundredAndSeventyx630: "1470x630";
    readonly OneThousandSixHundredAndTwentyx1080: "1620x1080";
    readonly OneThousandSixHundredAndEightyx720: "1680x720";
    readonly OneThousandSevenHundredAndNinetyTwox768: "1792x768";
    readonly OneThousandNineHundredAndTwentyx1080: "1920x1080";
    readonly OneThousandNineHundredAndTwentyx1440: "1920x1440";
    readonly TwoThousandOneHundredAndSixtyx1440: "2160x1440";
    readonly TwoThousandOneHundredAndSixtyx2160: "2160x2160";
    readonly TwoThousandOneHundredAndSixtyx2880: "2160x2880";
    readonly TwoThousandOneHundredAndSixtyx3240: "2160x3240";
    readonly TwoThousandOneHundredAndSixtyx3840: "2160x3840";
    readonly TwoThousandOneHundredAndSixtyx5040: "2160x5040";
    readonly TwoThousandFiveHundredAndTwentyx1080: "2520x1080";
    readonly TwoThousandFiveHundredAndSixtyx1440: "2560x1440";
    readonly TwoThousandEightHundredAndEightyx2160: "2880x2160";
    readonly ThreeThousandTwoHundredAndFortyx2160: "3240x2160";
    readonly ThreeThousandThreeHundredAndSixtyx1440: "3360x1440";
    readonly ThreeThousandEightHundredAndFortyx2160: "3840x2160";
    readonly FiveThousandAndFortyx2160: "5040x2160";
};
export type SupportedSize = OpenEnum<typeof SupportedSize>;
/**
 * Supported upscale factor range for video upscaling models
 */
export type UpscaleFactor = {
    max?: number | null | undefined;
    min?: number | null | undefined;
};
export type VideoModel = {
    /**
     * List of parameters that are allowed to be passed through to the provider
     */
    allowedPassthroughParameters: Array<string>;
    /**
     * Canonical slug for the model
     */
    canonicalSlug: string;
    /**
     * Unix timestamp of when the model was created
     */
    created: number;
    /**
     * Supported creativity levels for video upscaling models
     */
    creativity: Array<number> | null;
    /**
     * Description of the model
     */
    description?: string | undefined;
    /**
     * Whether the model supports generating audio alongside video
     */
    generateAudio: boolean | null;
    /**
     * Hugging Face model identifier, if applicable
     */
    huggingFaceId?: string | null | undefined;
    /**
     * Unique identifier for the model
     */
    id: string;
    /**
     * Display name of the model
     */
    name: string;
    /**
     * Pricing SKUs with provider prefix stripped, values as strings
     */
    pricingSkus?: {
        [k: string]: string;
    } | null | undefined;
    /**
     * Whether the model supports deterministic generation via seed parameter
     */
    seed: boolean | null;
    /**
     * Supported output aspect ratios
     */
    supportedAspectRatios: Array<SupportedAspectRatio> | null;
    /**
     * Supported video durations in seconds
     */
    supportedDurations: Array<number> | null;
    /**
     * Supported frame image types (e.g. first_frame, last_frame)
     */
    supportedFrameImages: Array<SupportedFrameImage> | null;
    /**
     * Supported output resolutions
     */
    supportedResolutions: Array<SupportedResolution> | null;
    /**
     * Supported output sizes (width x height)
     */
    supportedSizes: Array<SupportedSize> | null;
    /**
     * Supported upscale factor range for video upscaling models
     */
    upscaleFactor: UpscaleFactor | null;
};
/** @internal */
export declare const SupportedAspectRatio$inboundSchema: z.ZodType<SupportedAspectRatio, unknown>;
/** @internal */
export declare const SupportedFrameImage$inboundSchema: z.ZodType<SupportedFrameImage, unknown>;
/** @internal */
export declare const SupportedResolution$inboundSchema: z.ZodType<SupportedResolution, unknown>;
/** @internal */
export declare const SupportedSize$inboundSchema: z.ZodType<SupportedSize, unknown>;
/** @internal */
export declare const UpscaleFactor$inboundSchema: z.ZodType<UpscaleFactor, unknown>;
export declare function upscaleFactorFromJSON(jsonString: string): SafeParseResult<UpscaleFactor, SDKValidationError>;
/** @internal */
export declare const VideoModel$inboundSchema: z.ZodType<VideoModel, unknown>;
export declare function videoModelFromJSON(jsonString: string): SafeParseResult<VideoModel, SDKValidationError>;
//# sourceMappingURL=videomodel.d.ts.map