UNPKG

@remotion/studio

Version:

APIs for interacting with the Remotion Studio

118 lines (117 loc) 4.68 kB
import type { AudioCodec, ChromeMode, Codec, ColorSpace, LogLevel, OpenGlRenderer, PixelFormat, StillImageFormat, VideoImageFormat, X264Preset } from '@remotion/renderer'; import type { HardwareAccelerationOption } from '@remotion/renderer/client'; import type { PackageManager, RenderDefaults } from '@remotion/studio-shared'; import type { RenderStillOnWebImageFormat, WebRendererAudioCodec, WebRendererContainer, WebRendererHardwareAcceleration, WebRendererQuality, WebRendererVideoCodec } from '@remotion/web-renderer'; import type React from 'react'; import type { _InternalTypes } from 'remotion'; import type { CompType } from '../components/NewComposition/DuplicateComposition'; import type { QuickSwitcherMode } from '../components/QuickSwitcher/NoResults'; import type { RenderType } from '../components/RenderModal/RenderModalAdvanced'; import type { Bug, UpdateInfo } from '../components/UpdateCheck'; export type WebRenderModalState = { type: 'web-render'; initialFrame: number; compositionId: string; defaultProps: Record<string, unknown>; inFrameMark: number | null; outFrameMark: number | null; initialLogLevel: LogLevel; initialStillImageFormat: RenderStillOnWebImageFormat; initialScale: number; initialDelayRenderTimeout: number; initialDefaultOutName: string | null; initialContainer: WebRendererContainer | null; initialVideoCodec: WebRendererVideoCodec | null; initialAudioCodec: WebRendererAudioCodec | null; initialAudioBitrate: WebRendererQuality | null; initialVideoBitrate: WebRendererQuality | null; initialHardwareAcceleration: WebRendererHardwareAcceleration | null; initialKeyframeIntervalInSeconds: number | null; initialTransparent: boolean | null; initialMuted: boolean | null; initialLicenseKey: string | null; initialMediaCacheSizeInBytes: number | null; }; export type RenderModalState = { type: 'server-render'; readOnlyStudio: boolean; compositionId: string; initialFrame: number; initialStillImageFormat: StillImageFormat; initialVideoImageFormat: VideoImageFormat | null; initialJpegQuality: number; initialScale: number; initialLogLevel: LogLevel; initialConcurrency: number; initialMuted: boolean; initialEnforceAudioTrack: boolean; initialProResProfile: _InternalTypes['ProResProfile'] | null; initialx264Preset: X264Preset; initialPixelFormat: PixelFormat | null; initialVideoBitrate: string | null; initialAudioBitrate: string | null; initialEveryNthFrame: number; initialNumberOfGifLoops: number | null; initialDelayRenderTimeout: number; initialEnvVariables: Record<string, string>; initialDisableWebSecurity: boolean; initialOpenGlRenderer: OpenGlRenderer | null; initialIgnoreCertificateErrors: boolean; initialHeadless: boolean; initialDarkMode: boolean; initialMediaCacheSizeInBytes: number | null; initialOffthreadVideoCacheSizeInBytes: number | null; initialOffthreadVideoThreads: number | null; initialColorSpace: ColorSpace; initialMultiProcessOnLinux: boolean; initialUserAgent: string | null; initialEncodingMaxRate: string | null; initialEncodingBufferSize: string | null; initialForSeamlessAacConcatenation: boolean; initialHardwareAcceleration: HardwareAccelerationOption; initialBeep: boolean; initialRepro: boolean; initialChromeMode: ChromeMode; minConcurrency: number; maxConcurrency: number; defaultProps: Record<string, unknown>; inFrameMark: number | null; outFrameMark: number | null; defaultConfigurationVideoCodec: Codec; defaultConfigurationAudioCodec: AudioCodec | null; renderTypeOfLastRender: RenderType | null; defaulMetadata: Record<string, string> | null; renderDefaults: RenderDefaults; }; export type ModalState = { type: 'duplicate-comp'; compositionId: string; compositionType: CompType; } | { type: 'delete-comp'; compositionId: string; } | { type: 'rename-comp'; compositionId: string; } | { type: 'input-props-override'; } | RenderModalState | WebRenderModalState | { type: 'render-progress'; jobId: string; } | { type: 'update'; info: UpdateInfo; knownBugs: Bug[]; } | { type: 'install-packages'; packageManager: PackageManager; } | { type: 'quick-switcher'; mode: QuickSwitcherMode; invocationTimestamp: number; }; export type ModalContextType = { selectedModal: ModalState | null; setSelectedModal: React.Dispatch<React.SetStateAction<ModalState | null>>; }; export declare const ModalsContext: React.Context<ModalContextType>;