import { type AudioCodec, type ChromiumOptions, type FrameRange, type LogLevel, type PixelFormat, type ToOptions, type VideoImageFormat } from '@remotion/renderer'; import { BrowserSafeApis } from '@remotion/renderer/client'; import type { _InternalTypes } from 'remotion'; import type { z } from 'zod'; import type { Privacy } from '../defaults'; import type { CloudRunPayload, DownloadBehavior } from '../functions/helpers/payloads'; import type { GcpRegion } from '../pricing/gcp-regions'; import type { CloudrunCodec } from '../shared/validate-gcp-codec'; type InternalRenderMediaOnCloudrun = { cloudRunUrl: string | undefined; serviceName: string | undefined; region: GcpRegion; serveUrl: string; composition: string; inputProps: Record; privacy: Privacy | undefined; forceBucketName: string | undefined; outName: string | undefined; updateRenderProgress: ((progress: number, error: boolean) => void) | undefined; codec: CloudrunCodec; audioCodec: AudioCodec | undefined; jpegQuality: number | undefined; proResProfile: _InternalTypes['ProResProfile'] | undefined; pixelFormat: PixelFormat | undefined; imageFormat: VideoImageFormat | undefined; everyNthFrame: number | undefined; frameRange: FrameRange | undefined; envVariables: Record | undefined; chromiumOptions: ChromiumOptions | undefined; forceWidth: number | null; forceHeight?: number | null; forceFps?: number | null; forceDurationInFrames?: number | null; concurrency: number | string | null; preferLossless: boolean | undefined; indent: boolean; logLevel: LogLevel; downloadBehavior: DownloadBehavior; metadata?: Record | null; renderIdOverride: z.infer['renderIdOverride']; renderStatusWebhook: z.infer['renderStatusWebhook']; } & ToOptions; export type UpdateRenderProgress = (progress: number, error: boolean) => void; export type RenderMediaOnCloudrunInput = { region: GcpRegion; serveUrl: string; composition: string; renderId?: string | undefined; codec: CloudrunCodec; cloudRunUrl?: string; serviceName?: string; inputProps?: Record; privacy?: Privacy; forceBucketName?: string; outName?: string; updateRenderProgress?: UpdateRenderProgress; audioCodec?: AudioCodec; encodingMaxRate?: string | null; encodingBufferSize?: string | null; proResProfile?: _InternalTypes['ProResProfile']; pixelFormat?: PixelFormat; imageFormat?: VideoImageFormat; everyNthFrame?: number; frameRange?: FrameRange; envVariables?: Record; chromiumOptions?: ChromiumOptions; forceWidth?: number | null; forceHeight?: number | null; forceFps?: number | null; forceDurationInFrames?: number | null; concurrency?: number | string | null; preferLossless?: boolean; downloadBehavior?: DownloadBehavior; metadata?: Record | null; renderIdOverride?: z.infer['renderIdOverride']; renderStatusWebhook?: z.infer['renderStatusWebhook']; } & Partial>; export declare const internalRenderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, renderIdOverride, renderStatusWebhook, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, gopSize, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, downloadBehavior, metadata, mediaCacheSizeInBytes, sampleRate, }: InternalRenderMediaOnCloudrun) => Promise<{ type: "success"; publicUrl?: string | null | undefined; cloudStorageUri: string; size: number; bucketName: string; renderId: string; privacy: "project-private" | "public-read"; } | { type: "crash"; cloudRunEndpoint: string; message: "Service crashed without sending a response. Check the logs in GCP console."; requestStartTime: string; requestCrashTime: string; requestElapsedTimeInSeconds: number; }>; export declare const renderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, gopSize, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, sampleRate, }: RenderMediaOnCloudrunInput) => Promise<{ type: "success"; publicUrl?: string | null | undefined; cloudStorageUri: string; size: number; bucketName: string; renderId: string; privacy: "project-private" | "public-read"; } | { type: "crash"; cloudRunEndpoint: string; message: "Service crashed without sending a response. Check the logs in GCP console."; requestStartTime: string; requestCrashTime: string; requestElapsedTimeInSeconds: number; }>; export {};