import type { DownloadBehavior } from 'remotion/no-react'; import type { FunctionErrorInfo } from './write-error-to-storage'; export type RendererFunctionTransport = 'response-streaming' | 's3'; export type S3RendererArtifactMetadata = { filename: string; frame: number; binary: boolean; downloadBehavior: DownloadBehavior | null; }; type S3RendererStatusBase = { schema: 1; chunk: number; attempt: number; lambdaInvoked: boolean; renderedFrames: number; encodedFrames: number; uploadedFrames: number; uploadedSizeInBytes: number; startedAt: number; }; export type S3RendererStatus = (S3RendererStatusBase & { state: 'running'; }) | (S3RendererStatusBase & { state: 'completed'; lambdaInvoked: true; completedAt: number; videoKey: string | null; audioKey: string | null; artifacts: Array<{ key: string; metadata: S3RendererArtifactMetadata; }>; }) | (S3RendererStatusBase & { state: 'failed'; failedAt: number; errorInfo: FunctionErrorInfo; shouldRetry: boolean; }); export declare const rendererTransportPrefix: (renderId: string) => string; export declare const rendererTransportAttemptPrefix: ({ renderId, chunk, attempt, }: { renderId: string; chunk: number; attempt: number; }) => string; export declare const rendererTransportStatusKey: (options: { renderId: string; chunk: number; attempt: number; }) => string; export declare const rendererTransportVideoKey: (options: { renderId: string; chunk: number; attempt: number; }) => string; export declare const rendererTransportAudioKey: (options: { renderId: string; chunk: number; attempt: number; }) => string; export declare const rendererTransportArtifactKey: (options: { renderId: string; chunk: number; attempt: number; }, artifactIndex: number) => string; export declare const parseS3RendererStatus: ({ value, expectedChunk, expectedAttempt, }: { value: unknown; expectedChunk: number; expectedAttempt: number; }) => S3RendererStatus; export {};