import type { ScheduleAudioNodeResult } from './audio/shared-audio-tags.js'; import { type ScheduleAudioNodeOptions } from './audio/shared-audio-tags.js'; import type { RemotionAudioContextState } from './audio/use-audio-context.js'; import { type CompProps } from './Composition.js'; import type { JsxComponentIdentity, TCompMetadata, TComposition, TRenderAsset, TSequence } from './CompositionManager.js'; import type { CompositionManagerContext } from './CompositionManagerContext.js'; import * as CSSUtils from './default-css.js'; import type { SerializedJSONWithCustomFields } from './input-props-serialization.js'; import { type AssetFieldSchema, type ArrayFieldSchema, type ArrayItemFieldSchema, type InteractivitySchemaField, type InteractivitySchema, type VisibleFieldSchema } from './interactivity-schema.js'; import type { LoggingContextValue } from './log-level-context.js'; import type { RemotionEnvironment } from './remotion-environment-context.js'; import type { OverrideIdToNodePaths, OverrideToNodePathGetters, OverrideToNodeSetters } from './sequence-node-path.js'; import { OverrideIdsToNodePathsGettersContext, OverrideIdsToNodePathsSettersContext } from './sequence-node-path.js'; import type { ResolvedStackLocation } from './sequence-stack-traces.js'; import type { CannotUpdateSequenceReason } from './SequenceManager.js'; import { type CanUpdateEffectPropsResponse, type CanUpdateEffectPropsResponseFalse, type CanUpdateEffectPropsResponseTrue, type CanUpdateSequencePropsResponse, type CanUpdateSequencePropsResponseFalse, type CanUpdateSequencePropsResponseTrue, type SequenceNodePath, type SequencePropsSubscriptionKey, type SequencePropsStatusRemapping, type VideoConfigValues } from './SequenceManager.js'; import * as TimelinePosition from './timeline-position-state.js'; import { type PlaybackRateContextValue, type SetTimelineContextValue, type TimelineContextValue } from './TimelineContext.js'; import { truthy } from './truthy.js'; import type { CanUpdateSequencePropStatusFalse, CanUpdateSequencePropStatusEasing, CanUpdateSequencePropStatusKeyframed, CanUpdateSequencePropStatusStatic, DragOverrideValue, GetDragOverrides, GetEffectDragOverrides, GetEffectPropStatuses, GetPropStatuses, VideoConfigNumericExpression } from './use-schema.js'; import { type CanUpdateSequencePropStatus, type DragOverrides, type EffectDragOverrides, type PropStatuses } from './use-schema.js'; import type { MediaVolumeContextValue, SetMediaVolumeContextValue } from './volume-position-state.js'; import type { WatchRemotionStaticFilesPayload } from './watch-static-file.js'; import { useRemotionContexts } from './wrap-remotion-context.js'; export type { EffectChainState } from './effects/run-effect-chain.js'; export declare const Internals: { readonly AbsoluteFillElement: import("react").ForwardRefExoticComponent & import("react").RefAttributes>; readonly MaxMediaCacheSizeContext: import("react").Context; readonly getMediabunnyInputResourceKey: ({ src, credentials, requestInitFingerprint, revision, }: { src: string; credentials: RequestCredentials | null; requestInitFingerprint: unknown; revision: string | null; }) => string; readonly globalMediaResourceManager: import("./media-resource-manager.js").MediaResourceManager; readonly makeMediaResourceManager: () => import("./media-resource-manager.js").MediaResourceManager; readonly MEDIABUNNY_DURATION_VALUE_KEY: "mediabunny-duration"; readonly makeRenderResourceManager: () => import("./render-resource-manager.js").RenderResourceManager; readonly RenderResourceManagerContext: import("react").Context; readonly createRuntimeValueStore: >>(initialSnapshot: TSnapshot) => import("./runtime-value-store.js").RuntimeValueStoreController; readonly useUnsafeVideoConfig: () => import("./video-config.js").VideoConfig | null; readonly useFrameForVolumeProp: (behavior: import("./index.js").LoopVolumeCurveBehavior) => number; readonly useTimelinePosition: () => number; readonly useAbsoluteTimelinePosition: () => number; readonly useIsInsideFreeze: () => boolean; readonly useMediaAudioState: ({ muted, volume, audioEnabled, }: { readonly muted: boolean; readonly volume: number | null; readonly audioEnabled: boolean; }) => import("./audio/use-media-audio-state.js").MediaAudioState; readonly evaluateVolume: ({ frame, volume, mediaVolume, }: { frame: number; volume: import("./volume-prop.js").VolumeProp | undefined; mediaVolume: number; }) => number; readonly getAbsoluteSrc: (relativeSrc: string) => string; readonly getAnimatedImageDurationInSeconds: ({ resolvedSrc, signal, requestInit, contentType, }: { resolvedSrc: string; signal: AbortSignal; requestInit?: RequestInit | undefined; contentType: string | null; }) => Promise; readonly getAssetDisplayName: (filename: string) => string; readonly Timeline: typeof TimelinePosition; readonly validateMediaTrimProps: ({ startFrom, endAt, trimBefore, trimAfter, }: { startFrom: number | undefined; endAt: number | undefined; trimBefore: number | undefined; trimAfter: number | undefined; }) => void; readonly validateMediaProps: (props: { volume: import("./volume-prop.js").VolumeProp | undefined; playbackRate: number | undefined; preservePitch?: boolean | undefined; }, component: "Audio" | "Html5Audio" | "Html5Video" | "Video") => void; readonly resolveTrimProps: ({ startFrom, endAt, trimBefore, trimAfter, }: { startFrom: number | undefined; endAt: number | undefined; trimBefore: number | undefined; trimAfter: number | undefined; }) => { trimBeforeValue: number | undefined; trimAfterValue: number | undefined; }; readonly VideoForPreview: import("react").ForwardRefExoticComponent & { readonly onlyWarnForMediaSeekingError: boolean; readonly onDuration: (src: string, durationInSeconds: number) => void; readonly pauseWhenBuffering: boolean; readonly _remotionInternalNativeLoopPassed: boolean; readonly _remotionInternalStack: string | null; readonly showInTimeline: boolean; readonly onVideoFrame: import("./index.js").OnVideoFrame | null; readonly crossOrigin?: "" | "anonymous" | "use-credentials" | undefined; }, "ref"> & import("react").RefAttributes>; readonly CompositionManager: import("react").Context; readonly CompositionSetters: import("react").Context; readonly VisualModePropStatusesContext: import("react").Context; readonly VisualModePropStatusesRefContext: import("react").Context; readonly VisualModeDragOverridesContext: import("react").Context; readonly VisualModeSettersContext: import("react").Context; readonly SequenceManager: import("react").Context; readonly SequenceManagerProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly SequenceManagerRefContext: import("react").Context; readonly SequenceRegistrationContext: import("react").Context; readonly CommitOrderInternals: { compositionManagerMarker: symbol; compositionMarker: symbol; folderMarker: symbol; sequenceManagerMarker: symbol; sequenceMarker: symbol; eventName: string; }; readonly SequenceStackTracesUpdateContext: import("react").Context; readonly baseSchema: { readonly durationInFrames: { readonly type: "number"; readonly default: undefined; readonly min: 1; readonly step: 1; readonly hiddenFromList: true; }; readonly from: { readonly type: "number"; readonly default: 0; readonly step: 1; readonly hiddenFromList: true; }; readonly trimBefore: { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly hiddenFromList: true; }; readonly playbackRate: { readonly type: "number"; readonly default: 1; readonly min: 0.01; readonly step: 0.1; readonly description: "Playback rate"; readonly hiddenFromList: false; readonly keyframable: false; }; readonly freeze: { readonly type: "number"; readonly default: null; readonly step: 1; readonly hiddenFromList: true; }; readonly hidden: import("./interactivity-schema.js").BooleanFieldSchema; readonly name: import("./interactivity-schema.js").HiddenFieldSchema; readonly showInTimeline: import("./interactivity-schema.js").HiddenFieldSchema; }; readonly sequenceSchema: { readonly durationInFrames: { readonly type: "number"; readonly default: undefined; readonly min: 1; readonly step: 1; readonly hiddenFromList: true; }; readonly from: { readonly type: "number"; readonly default: 0; readonly step: 1; readonly hiddenFromList: true; }; readonly trimBefore: { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly hiddenFromList: true; }; readonly playbackRate: { readonly type: "number"; readonly default: 1; readonly min: 0.01; readonly step: 0.1; readonly description: "Playback rate"; readonly hiddenFromList: false; readonly keyframable: false; }; readonly freeze: { readonly type: "number"; readonly default: null; readonly step: 1; readonly hiddenFromList: true; }; readonly hidden: import("./interactivity-schema.js").BooleanFieldSchema; readonly name: import("./interactivity-schema.js").HiddenFieldSchema; readonly showInTimeline: import("./interactivity-schema.js").HiddenFieldSchema; readonly layout: { readonly type: "enum"; readonly default: "absolute-fill"; readonly description: "Layout"; readonly variants: { readonly 'absolute-fill': { readonly 'style.transformOrigin': { readonly type: "transform-origin"; readonly step: 1; readonly default: "50% 50%"; readonly description: "Transform origin"; }; readonly 'style.translate': { readonly type: "translate"; readonly step: 1; readonly default: "0px 0px"; readonly description: "Offset"; }; readonly 'style.scale': { readonly type: "scale"; readonly max: 100; readonly step: 0.01; readonly default: 1; readonly description: "Scale"; readonly defaultKeyframeOutput: "perceptual-scale"; }; readonly 'style.rotate': { readonly type: "rotation-css"; readonly step: 1; readonly default: "0deg"; readonly description: "Rotation"; }; readonly 'style.opacity': { readonly type: "number"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly default: 1; readonly description: "Opacity"; readonly hiddenFromList: false; }; readonly 'style.borderWidth': { readonly type: "number"; readonly default: undefined; readonly min: 0; readonly step: 1; readonly description: "Border width"; readonly hiddenFromList: false; }; readonly 'style.borderStyle': { readonly type: "enum"; readonly default: "none"; readonly description: "Border style"; readonly variants: { readonly none: {}; readonly hidden: {}; readonly solid: {}; readonly dashed: {}; readonly dotted: {}; readonly double: {}; readonly groove: {}; readonly ridge: {}; readonly inset: {}; readonly outset: {}; }; }; readonly 'style.borderColor': { readonly type: "color"; readonly default: undefined; readonly description: "Border color"; }; readonly 'style.borderRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Border radius"; readonly hiddenFromList: false; readonly keyframable: true; }; readonly 'style.borderTopLeftRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Top left radius"; readonly hiddenFromList: false; }; readonly 'style.borderTopRightRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Top right radius"; readonly hiddenFromList: false; }; readonly 'style.borderBottomRightRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Bottom right radius"; readonly hiddenFromList: false; }; readonly 'style.borderBottomLeftRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Bottom left radius"; readonly hiddenFromList: false; }; readonly 'style.backgroundColor': { readonly type: "color"; readonly default: "transparent"; readonly description: "Color"; }; readonly premountFor: { readonly type: "number"; readonly default: 0; readonly description: "Premount For"; readonly min: 0; readonly step: 1; readonly hiddenFromList: false; readonly keyframable: false; }; readonly postmountFor: { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly hiddenFromList: true; readonly keyframable: false; }; readonly cropLeft: { readonly type: "number"; readonly default: 0; readonly description: "Crop left"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropRight: { readonly type: "number"; readonly default: 0; readonly description: "Crop right"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropTop: { readonly type: "number"; readonly default: 0; readonly description: "Crop top"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropBottom: { readonly type: "number"; readonly default: 0; readonly description: "Crop bottom"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; }; readonly none: {}; }; }; }; readonly SequenceWithoutSchema: import("react").ForwardRefExoticComponent>; readonly sequenceStyleSchema: { readonly 'style.transformOrigin': { readonly type: "transform-origin"; readonly step: 1; readonly default: "50% 50%"; readonly description: "Transform origin"; }; readonly 'style.translate': { readonly type: "translate"; readonly step: 1; readonly default: "0px 0px"; readonly description: "Offset"; }; readonly 'style.scale': { readonly type: "scale"; readonly max: 100; readonly step: 0.01; readonly default: 1; readonly description: "Scale"; readonly defaultKeyframeOutput: "perceptual-scale"; }; readonly 'style.rotate': { readonly type: "rotation-css"; readonly step: 1; readonly default: "0deg"; readonly description: "Rotation"; }; readonly 'style.opacity': { readonly type: "number"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly default: 1; readonly description: "Opacity"; readonly hiddenFromList: false; }; readonly 'style.borderWidth': { readonly type: "number"; readonly default: undefined; readonly min: 0; readonly step: 1; readonly description: "Border width"; readonly hiddenFromList: false; }; readonly 'style.borderStyle': { readonly type: "enum"; readonly default: "none"; readonly description: "Border style"; readonly variants: { readonly none: {}; readonly hidden: {}; readonly solid: {}; readonly dashed: {}; readonly dotted: {}; readonly double: {}; readonly groove: {}; readonly ridge: {}; readonly inset: {}; readonly outset: {}; }; }; readonly 'style.borderColor': { readonly type: "color"; readonly default: undefined; readonly description: "Border color"; }; readonly 'style.borderRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Border radius"; readonly hiddenFromList: false; readonly keyframable: true; }; readonly 'style.borderTopLeftRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Top left radius"; readonly hiddenFromList: false; }; readonly 'style.borderTopRightRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Top right radius"; readonly hiddenFromList: false; }; readonly 'style.borderBottomRightRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Bottom right radius"; readonly hiddenFromList: false; }; readonly 'style.borderBottomLeftRadius': { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly description: "Bottom left radius"; readonly hiddenFromList: false; }; readonly 'style.backgroundColor': { readonly type: "color"; readonly default: "transparent"; readonly description: "Color"; }; readonly premountFor: { readonly type: "number"; readonly default: 0; readonly description: "Premount For"; readonly min: 0; readonly step: 1; readonly hiddenFromList: false; readonly keyframable: false; }; readonly postmountFor: { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly hiddenFromList: true; readonly keyframable: false; }; readonly cropLeft: { readonly type: "number"; readonly default: 0; readonly description: "Crop left"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropRight: { readonly type: "number"; readonly default: 0; readonly description: "Crop right"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropTop: { readonly type: "number"; readonly default: 0; readonly description: "Crop top"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropBottom: { readonly type: "number"; readonly default: 0; readonly description: "Crop bottom"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; }; readonly sequenceVisualStyleSchema: { readonly 'style.transformOrigin': { readonly type: "transform-origin"; readonly step: 1; readonly default: "50% 50%"; readonly description: "Transform origin"; }; readonly 'style.translate': { readonly type: "translate"; readonly step: 1; readonly default: "0px 0px"; readonly description: "Offset"; }; readonly 'style.scale': { readonly type: "scale"; readonly max: 100; readonly step: 0.01; readonly default: 1; readonly description: "Scale"; readonly defaultKeyframeOutput: "perceptual-scale"; }; readonly 'style.rotate': { readonly type: "rotation-css"; readonly step: 1; readonly default: "0deg"; readonly description: "Rotation"; }; readonly 'style.opacity': { readonly type: "number"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly default: 1; readonly description: "Opacity"; readonly hiddenFromList: false; }; }; readonly sequencePremountSchema: { readonly premountFor: { readonly type: "number"; readonly default: 0; readonly description: "Premount For"; readonly min: 0; readonly step: 1; readonly hiddenFromList: false; readonly keyframable: false; }; readonly postmountFor: { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly hiddenFromList: true; readonly keyframable: false; }; }; readonly sequenceCropSchema: { readonly cropLeft: { readonly type: "number"; readonly default: 0; readonly description: "Crop left"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropRight: { readonly type: "number"; readonly default: 0; readonly description: "Crop right"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropTop: { readonly type: "number"; readonly default: 0; readonly description: "Crop top"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; readonly cropBottom: { readonly type: "number"; readonly default: 0; readonly description: "Crop bottom"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly hiddenFromList: false; readonly keyframable: true; }; }; readonly textSchema: { readonly 'style.color': { readonly type: "color"; readonly default: undefined; readonly description: "Color"; }; readonly 'style.fontFamily': { readonly type: "font-family"; readonly default: undefined; readonly description: "Font family"; readonly keyframable: false; }; readonly 'style.fontSize': { readonly type: "number"; readonly default: undefined; readonly min: 0; readonly step: 1; readonly description: "Font size"; readonly hiddenFromList: false; }; readonly 'style.lineHeight': { readonly type: "number"; readonly default: undefined; readonly min: 0; readonly step: 0.05; readonly description: "Line height"; readonly hiddenFromList: false; }; readonly 'style.fontWeight': { readonly type: "font-weight"; readonly default: 400; readonly description: "Font weight"; }; readonly 'style.fontStyle': { readonly type: "enum"; readonly default: "normal"; readonly description: "Font style"; readonly variants: { readonly normal: {}; readonly italic: {}; readonly oblique: {}; }; }; readonly 'style.textAlign': { readonly type: "enum"; readonly default: "left"; readonly description: "Text align"; readonly variants: { readonly left: {}; readonly center: {}; readonly right: {}; readonly justify: {}; readonly start: {}; readonly end: {}; }; }; readonly 'style.letterSpacing': { readonly type: "number"; readonly default: undefined; readonly step: 0.1; readonly description: "Letter spacing"; readonly hiddenFromList: false; }; }; readonly transformSchema: { readonly 'style.transformOrigin': { readonly type: "transform-origin"; readonly step: 1; readonly default: "50% 50%"; readonly description: "Transform origin"; }; readonly 'style.translate': { readonly type: "translate"; readonly step: 1; readonly default: "0px 0px"; readonly description: "Offset"; }; readonly 'style.scale': { readonly type: "scale"; readonly max: 100; readonly step: 0.01; readonly default: 1; readonly description: "Scale"; readonly defaultKeyframeOutput: "perceptual-scale"; }; readonly 'style.rotate': { readonly type: "rotation-css"; readonly step: 1; readonly default: "0deg"; readonly description: "Rotation"; }; readonly 'style.opacity': { readonly type: "number"; readonly min: 0; readonly max: 1; readonly step: 0.01; readonly default: 1; readonly description: "Opacity"; readonly hiddenFromList: false; }; }; readonly premountSchema: { readonly premountFor: { readonly type: "number"; readonly default: 0; readonly description: "Premount For"; readonly min: 0; readonly step: 1; readonly hiddenFromList: false; readonly keyframable: false; }; readonly postmountFor: { readonly type: "number"; readonly default: 0; readonly min: 0; readonly step: 1; readonly hiddenFromList: true; readonly keyframable: false; }; }; readonly flattenActiveSchema: (schema: InteractivitySchema, resolve: import("./flatten-schema.js").ResolveValue) => InteractivitySchema; readonly getFlatSchemaWithAllKeys: (schema: InteractivitySchema) => InteractivitySchema; readonly RemotionRootContexts: import("react").FC<{ readonly children: import("react").ReactNode; readonly numberOfAudioTags: number; readonly logLevel: "error" | "info" | "trace" | "verbose" | "warn"; readonly audioLatencyHint: AudioContextLatencyCategory; readonly previewSampleRate: number | null; readonly videoEnabled: boolean; readonly audioEnabled: boolean; readonly frameState: Record | null; readonly _experimentalKeepAudioContextAlive: boolean; }>; readonly CompositionManagerProvider: ({ children, onlyRenderComposition, currentCompositionMetadata, initialCompositions, initialCanvasContent, }: { readonly children: import("react").ReactNode; readonly onlyRenderComposition: string | null; readonly currentCompositionMetadata: import("./CompositionManagerContext.js").BaseMetadata | null; readonly initialCompositions: import("./CompositionManager.js").AnyComposition[]; readonly initialCanvasContent: import("./CompositionManagerContext.js").CanvasContent | null; }) => import("react/jsx-runtime").JSX.Element; readonly useVideo: () => (import("./video-config.js").VideoConfig & { component: import("react").LazyExoticComponent>> | import("react").ComponentType>; }) | null; readonly getRoot: () => import("react").FC<{}> | null; readonly useMediaVolumeState: () => readonly [number, (u: number) => void]; readonly usePlayerMutedState: () => readonly [boolean, (u: import("react").SetStateAction) => void]; readonly useMediaInTimeline: ({ volume, mediaVolume, src, mediaType, playbackRate, displayName, id, getStack, showInTimeline, premountDisplay, postmountDisplay, loopDisplay, loopVolumeCurveBehavior, documentationLink, refForOutline, muted, }: { volume: import("./volume-prop.js").VolumeProp | undefined; mediaVolume: number; src: string | undefined; mediaType: "audio" | "video"; playbackRate: number; displayName: string | null; id: string; getStack: () => string | null; showInTimeline: boolean; premountDisplay: number | null; postmountDisplay: number | null; loopDisplay: import("./CompositionManager.js").LoopDisplay | undefined; loopVolumeCurveBehavior: import("./index.js").LoopVolumeCurveBehavior; documentationLink: string | null; refForOutline: import("react").RefObject | null; muted: boolean; }) => void; readonly useLazyComponent: ({ compProps, componentName, noSuspense, }: { compProps: CompProps; componentName: string; noSuspense: boolean; }) => import("react").ComponentType | (import("react").ExoticComponent & import("react").RefAttributes>)> & { readonly _result: import("react").ComponentType; }); readonly truthy: typeof truthy; readonly SequenceContext: import("react").Context; readonly PremountContext: import("react").Context; readonly usePremounting: ({ from, durationInFrames, premountFor, postmountFor, style, styleWhilePremounted, styleWhilePostmounted, hideWhilePremounted, }: { readonly from: number; readonly durationInFrames: number; readonly premountFor: number | null; readonly postmountFor: number | null; readonly style: import("react").CSSProperties | null; readonly styleWhilePremounted: import("react").CSSProperties | null; readonly styleWhilePostmounted: import("react").CSSProperties | null; readonly hideWhilePremounted: "display-none" | "opacity"; }) => { effectivePremountFor: number; effectivePostmountFor: number; premountingActive: boolean; postmountingActive: boolean; isPremountingOrPostmounting: boolean; freezeFrame: number; premountingStyle: import("react").CSSProperties | null; }; readonly useRemotionContexts: typeof useRemotionContexts; readonly RemotionContextProvider: (props: import("./wrap-remotion-context.js").RemotionContextProviderProps) => import("react/jsx-runtime").JSX.Element; readonly CSSUtils: typeof CSSUtils; readonly setupEnvVariables: () => void; readonly MediaVolumeContext: import("react").Context; readonly SetMediaVolumeContext: import("react").Context; readonly getRemotionEnvironment: () => RemotionEnvironment; readonly SharedAudioContext: import("react").Context<{ sampleRate: number; audioContext: AudioContext | null; getAudioContextState: () => RemotionAudioContextState | null; gainNode: GainNode | null; audioSyncAnchor: { value: number; }; audioSyncAnchorEmitter: import("./audio/shared-audio-tags.js").AudioSyncAnchorEmitter; scheduleAudioNode: (options: ScheduleAudioNodeOptions) => ScheduleAudioNodeResult; resume: () => Promise; resumeAsAutoPlay: () => Promise; suspend: () => Promise; getIsResumingAudioContext: () => Promise | null; unscheduleAudioNode: (node: AudioBufferSourceNode) => void; _experimentalKeepAudioContextAlive: boolean; } | null>; readonly SharedAudioContextProvider: import("react").FC<{ readonly children: import("react").ReactNode; readonly audioLatencyHint: AudioContextLatencyCategory; readonly audioEnabled: boolean; readonly previewSampleRate: number | null; readonly _experimentalKeepAudioContextAlive: boolean; }>; readonly SharedAudioTagsContext: import("react").Context<{ registerAudio: (options: { aud: import("react").AudioHTMLAttributes; audioId: string; premounting: boolean; postmounting: boolean; }) => { id: number; props: import("react").AudioHTMLAttributes; el: import("react").RefObject; audioId: string; mediaElementSourceNode: { setAudioContext: (newAudioContext: AudioContext | null) => void; attemptToConnect: () => void; get: () => MediaElementAudioSourceNode; cleanup: () => void; } | null; premounting: boolean; postmounting: boolean; audioMounted: boolean; cleanupOnMediaTagUnmount: () => void; }; unregisterAudio: (id: number) => void; updateAudio: (options: { id: number; aud: import("react").AudioHTMLAttributes; audioId: string; premounting: boolean; postmounting: boolean; }) => void; playAllAudios: () => void; numberOfAudioTags: number; } | null>; readonly SharedAudioTagsContextProvider: import("react").FC<{ readonly numberOfAudioTags: number; readonly children: import("react").ReactNode; }>; readonly invalidCompositionErrorMessage: string; readonly invalidFolderNameErrorMessage: string; readonly calculateMediaDuration: ({ trimAfter, mediaDurationInFrames, playbackRate, trimBefore, }: { mediaDurationInFrames: number; playbackRate: number; trimBefore: number | undefined; trimAfter: number | undefined; }) => number; readonly isCompositionIdValid: (id: string) => RegExpMatchArray | null; readonly isFolderNameValid: (name: string) => RegExpMatchArray | null; readonly getPreviewDomElement: () => HTMLElement | null; readonly compositionsRef: import("react").RefObject<{ getCompositions: () => import("./CompositionManager.js").AnyComposition[]; } | null>; readonly portalNode: () => HTMLElement; readonly setPortalNodeCurrentScale: (scale: number) => void; readonly waitForRoot: (fn: (comp: import("react").FC<{}>) => void) => () => void; readonly SetTimelineContext: import("react").Context; readonly CanUseRemotionHooksProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly CanUseRemotionHooks: import("react").Context; readonly DisableInteractivityProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly PrefetchProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly DurationsContextProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly IsPlayerContextProvider: import("react").FC<{ children?: import("react").ReactNode; }>; readonly useIsPlayer: () => boolean; readonly EditorPropsProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly EditorPropsContext: import("react").Context; readonly usePreload: (src: string) => string; readonly resolveVideoConfig: (params: { compositionId: string; compositionWidth: number | null; compositionHeight: number | null; compositionFps: number | null; compositionDurationInFrames: number | null; calculateMetadata: import("./Composition.js").CalculateMetadataFunction> | null; signal: AbortSignal; defaultProps: Record; inputProps: Record; }) => Promise | import("./video-config.js").VideoConfig; readonly resolveVideoConfigOrCatch: (params: { compositionId: string; compositionWidth: number | null; compositionHeight: number | null; compositionFps: number | null; compositionDurationInFrames: number | null; calculateMetadata: import("./Composition.js").CalculateMetadataFunction> | null; signal: AbortSignal; defaultProps: Record; inputProps: Record; }) => { type: "success"; result: Promise | import("./video-config.js").VideoConfig; } | { type: "error"; error: Error; }; readonly resolveVideoConfigWithMetadataOrCatch: (params: { compositionId: string; compositionWidth: number | null; compositionHeight: number | null; compositionFps: number | null; compositionDurationInFrames: number | null; calculateMetadata: import("./Composition.js").CalculateMetadataFunction> | null; signal: AbortSignal; defaultProps: Record; inputProps: Record; }) => { type: "success"; result: Promise | import("./resolve-video-config.js").VideoConfigWithMetadata; } | { type: "error"; error: Error; }; readonly ResolveCompositionContext: import("react").Context<{ [x: string]: ({ type: "loading"; } | { type: "success"; result: import("./video-config.js").VideoConfig; metadataSource: import("./resolve-video-config.js").VideoConfigMetadataSource | null; } | { type: "success-and-refreshing"; result: import("./video-config.js").VideoConfig; metadataSource: import("./resolve-video-config.js").VideoConfigMetadataSource | null; } | { type: "error"; error: Error; }) | undefined; } | null>; readonly useResolvedVideoConfig: (preferredCompositionId: string | null) => ({ type: "loading"; } | { type: "success"; result: import("./video-config.js").VideoConfig; metadataSource: import("./resolve-video-config.js").VideoConfigMetadataSource | null; } | { type: "success-and-refreshing"; result: import("./video-config.js").VideoConfig; metadataSource: import("./resolve-video-config.js").VideoConfigMetadataSource | null; } | { type: "error"; error: Error; }) | null; readonly resolveCompositionsRef: import("react").RefObject<{ setCurrentRenderModalComposition: (compositionId: string | null) => void; reloadCurrentlySelectedComposition: () => void; resolveComposition: (compositionId: string) => Promise; } | null>; readonly REMOTION_STUDIO_CONTAINER_ELEMENT: "__remotion-studio-container"; readonly RenderAssetManager: import("react").Context; readonly persistCurrentFrame: (time: { [x: string]: number; }) => void; readonly usePlaybackRate: () => PlaybackRateContextValue; readonly useTimelineContext: () => TimelineContextValue; readonly useTimelineSetFrameWithoutSeek: () => (u: import("react").SetStateAction>) => void; readonly isIosSafari: () => boolean; readonly WATCH_REMOTION_STATIC_FILES: "remotion_staticFilesChanged"; readonly addSequenceStackTraces: (component: unknown) => void; readonly useMediaStartsAt: () => number; readonly BufferingProvider: import("react").FC<{ readonly children: import("react").ReactNode; }>; readonly BufferingContextReact: import("react").Context<{ addBlock: () => { unblock: () => void; }; } | null>; readonly getComponentsToAddStacksTo: () => unknown[]; readonly getSequenceComponent: () => unknown; readonly getSingleChildComponent: (children: import("react").ReactNode) => unknown; readonly getStackForControls: (controls: import("./CompositionManager.js").SequenceControls) => string | null; readonly REMOTION_INTERNAL_STACK_PROP: "_remotionInternalStack"; readonly setComponentIdentityResolver: (resolver: ((component: unknown) => unknown) | null) => void; readonly CurrentScaleContext: import("react").Context<({ type: "scale"; scale: number; } | ({ type: "canvas-size"; canvasSize: { width: number; height: number; left: number; top: number; windowSize: { width: number; height: number; }; refresh: () => void; }; } & { canvasSizeForAuto: { width: number; height: number; left: number; top: number; windowSize: { width: number; height: number; }; refresh: () => void; }; })) | null>; readonly PixelDensityContext: import("react").Context; readonly PreviewSizeContext: import("react").Context; readonly calculateScale: ({ canvasSize, compositionHeight, compositionWidth, previewSize, }: { previewSize: number | "auto"; compositionWidth: number; compositionHeight: number; canvasSize: { width: number; height: number; }; }) => number; readonly validateRenderAsset: (artifact: TRenderAsset) => void; readonly Log: { trace: (options: { logLevel: "error" | "info" | "trace" | "verbose" | "warn"; tag: string | null; }, message?: any, ...optionalParams: any[]) => void; verbose: (options: { logLevel: "error" | "info" | "trace" | "verbose" | "warn"; tag: string | null; }, message?: any, ...optionalParams: any[]) => void; info: (options: { logLevel: "error" | "info" | "trace" | "verbose" | "warn"; tag: string | null; }, message?: any, ...optionalParams: any[]) => void; warn: (options: { logLevel: "error" | "info" | "trace" | "verbose" | "warn"; tag: string | null; }, message?: any, ...optionalParams: any[]) => void; error: (options: { logLevel: "error" | "info" | "trace" | "verbose" | "warn"; tag: string | null; }, message?: any, ...optionalParams: any[]) => void; }; readonly LogLevelContext: import("react").Context; readonly useLogLevel: () => "error" | "info" | "trace" | "verbose" | "warn"; readonly playbackLogging: ({ logLevel, tag, message, mountTime, }: { logLevel: "error" | "info" | "trace" | "verbose" | "warn"; tag: string; message: string; mountTime: number | null; }) => void; readonly timeValueRef: import("react").RefObject<{ goToFrame: () => void; seek: (newFrame: number) => void; play: (e?: PointerEvent | import("react").SyntheticEvent | undefined) => void; pause: () => void; toggle: (e?: PointerEvent | import("react").SyntheticEvent | undefined) => void; } | null>; readonly compositionSelectorRef: import("react").RefObject<{ expandComposition: (compName: string) => void; selectComposition: (compName: string) => void; toggleFolder: (folderName: string, parentName: string | null) => void; } | null>; readonly RemotionEnvironmentContext: import("react").Context; readonly warnAboutTooHighVolume: (volume: number) => void; readonly AudioForPreview: import("react").ForwardRefExoticComponent void) | undefined; audioStreamIndex?: number | undefined; } & { readonly shouldPreMountAudioTags: boolean; readonly onDuration: (src: string, durationInSeconds: number) => void; readonly pauseWhenBuffering: boolean; readonly _remotionInternalNativeLoopPassed: boolean; readonly _remotionInternalStack: string | null; readonly showInTimeline: boolean; readonly onNativeError: import("react").ReactEventHandler; }, "ref"> & import("react").RefAttributes>; readonly OBJECTFIT_CONTAIN_CLASS_NAME: "__remotion_objectfitcontain"; readonly InnerOffthreadVideo: import("react").FC; readonly useBasicMediaInTimeline: ({ volume, mediaVolume, mediaType, src, displayName, trimBefore, trimAfter, playbackRate, sequenceDurationInFrames, mediaStartsAt, mediaFrom, loop, muted, }: { volume: import("./volume-prop.js").VolumeProp | undefined; mediaVolume: number; mediaType: "audio" | "image" | "video"; src: string | undefined; displayName: string | null; trimBefore: number | undefined; trimAfter: number | undefined; playbackRate: number; sequenceDurationInFrames: number; mediaStartsAt: number; mediaFrom: number; loop: boolean; muted: boolean; }) => { volumes: string | number; duration: number; doesVolumeChange: boolean; finalDisplayName: string; startMediaFrom: number; src: string; playbackRate: number; muted: boolean; }; readonly getInputPropsOverride: () => Record | null; readonly setInputPropsOverride: (override: Record | null) => void; readonly useVideoEnabled: () => boolean; readonly useAudioEnabled: () => boolean; readonly useBuffering: () => boolean; readonly TimelinePosition: typeof TimelinePosition; readonly useTimelineSeek: (setFrame: (frame: import("react").SetStateAction>) => void) => import("./use-timeline-seek.js").TimelineSeek; readonly DelayRenderContextType: import("react").Context; readonly TimelineContext: import("react").Context; readonly usePlaying: () => boolean; readonly PlaybackRateContext: import("react").Context; readonly AbsoluteTimeContext: import("react").Context; readonly RenderAssetManagerProvider: import("react").FC<{ children: import("react").ReactNode; collectAssets: import("react").RefObject | null; }>; readonly getEffectiveVisualModeValue: ({ propStatus, dragOverrideValue, defaultValue, frame, shouldResortToDefaultValueIfUndefined, }: { propStatus: CanUpdateSequencePropStatusKeyframed | CanUpdateSequencePropStatusStatic; dragOverrideValue: DragOverrideValue | undefined; defaultValue: unknown; frame?: number | null | undefined; shouldResortToDefaultValueIfUndefined: boolean; }) => unknown; readonly CompositionRenderErrorContext: import("react").Context; readonly useEffectChainState: () => { get: (width: number, height: number) => import("./internals.js").EffectChainState | null; }; readonly createEffectChainState: (width: number, height: number) => import("./internals.js").EffectChainState; readonly cleanupEffectChainState: (state: import("./internals.js").EffectChainState) => void; readonly runEffectChain: ({ state, source, effects, output, width, height, }: import("./effects/run-effect-chain.js").RunEffectChainOptions) => Promise; readonly useMemoizedEffects: ({ effects, overrideId, }: { effects: readonly import("./index.js").EffectDescriptor[]; readonly overrideId: string | null; }) => import("./index.js").EffectDefinitionAndStack[]; readonly useMemoizedEffectDefinitions: (effects: readonly import("./index.js").EffectDescriptor[]) => readonly import("./index.js").EffectDefinition[] & { readonly runtimeValues: readonly import("./runtime-value-store.js").RuntimeValueStore[]; }; readonly createEffect: (definition: import("./index.js").EffectDefinition) => import("./index.js").EffectFactory

; readonly createWebGLContextError: (effectName: string) => Error; readonly createWebGL2ContextError: (effectName: string) => Error; readonly computeEffectiveSchemaValuesDotNotation: ({ schema, currentValue, overrideValues, propStatus, frame, }: { schema: InteractivitySchema; currentValue: Record; overrideValues: Record; propStatus: Record | undefined; frame: number | null; }) => { merged: Record; propsToDelete: Set; }; readonly interpolateKeyframedStatus: ({ frame, forceSpringAllowTail, status, }: { frame: number; forceSpringAllowTail: boolean | null; status: CanUpdateSequencePropStatusKeyframed; }) => string | number | readonly number[] | null; readonly setInterpolatePaths: (interpolator: (input: number, inputRange: readonly number[], outputRange: readonly string[], options: Pick, "easing" | "posterize"> & { extrapolateLeft: "clamp" | "extend" | "wrap"; extrapolateRight: "clamp" | "extend" | "wrap"; }) => string) => void; readonly makeStaticDragOverride: (value: unknown) => DragOverrideValue; readonly makeKeyframedDragOverride: ({ status, frame, value, defaultEasing, }: { status: CanUpdateSequencePropStatusKeyframed; frame: number; value: unknown; defaultEasing?: CanUpdateSequencePropStatusEasing | undefined; }) => DragOverrideValue; readonly resolveDragOverrideValue: ({ dragOverrideValue, frame, }: { dragOverrideValue: DragOverrideValue | undefined; frame: number | null; }) => import("./get-effective-visual-mode-value.js").ResolvedDragOverrideValue; readonly getStaticDragOverrideValue: (dragOverrideValue: DragOverrideValue | undefined) => unknown; readonly OverrideIdsToNodePathsGettersContext: import("react").Context; readonly OverrideIdsToNodePathsSettersContext: import("react").Context; readonly findPropsToDelete: ({ schema, key, value, }: { schema: InteractivitySchema; key: string; value: unknown; }) => string[]; readonly makeSequencePropsSubscriptionKey: (key: SequencePropsSubscriptionKey) => string; readonly getPropStatusesCtx: (propStatuses: PropStatuses, nodePath: SequencePropsSubscriptionKey) => Record | undefined; readonly getEffectPropStatusesCtx: ({ propStatuses, nodePath, effectIndex, }: { propStatuses: PropStatuses; nodePath: SequencePropsSubscriptionKey; effectIndex: number; }) => { type: "cannot-update-sequence"; reason: CannotUpdateSequenceReason; } | { type: "cannot-update-effect"; reason: import("./SequenceManager.js").CannotUpdateEffectReason; } | { type: "can-update-effect"; props: Record; }; readonly hiddenField: InteractivitySchemaField; readonly durationInFramesField: { readonly type: "number"; readonly default: undefined; readonly min: 1; readonly step: 1; readonly hiddenFromList: true; }; readonly freezeField: { readonly type: "number"; readonly default: null; readonly step: 1; readonly hiddenFromList: true; }; readonly fromField: { readonly type: "number"; readonly default: 0; readonly step: 1; readonly hiddenFromList: true; }; readonly resolveSequenceCrop: ({ cropLeft, cropRight, cropTop, cropBottom, }: import("./sequence-crop.js").SequenceCropInput) => import("./sequence-crop.js").ResolvedSequenceCrop; readonly useCropStyle: ({ cropLeft, cropRight, cropTop, cropBottom, style, componentName, }: import("./sequence-crop.js").SequenceCropInput & { readonly style: import("react").CSSProperties | null; readonly componentName: string; }) => import("react").CSSProperties | null; }; export type { ArrayFieldSchema, AssetFieldSchema, ArrayItemFieldSchema, CannotUpdateSequenceReason, CanUpdateEffectPropsResponse, CanUpdateEffectPropsResponseFalse, CanUpdateEffectPropsResponseTrue, CanUpdateSequencePropsResponse, CanUpdateSequencePropsResponseFalse, CanUpdateSequencePropsResponseTrue, CanUpdateSequencePropStatus, CanUpdateSequencePropStatusEasing, CanUpdateSequencePropStatusFalse, CanUpdateSequencePropStatusKeyframed, CanUpdateSequencePropStatusStatic, VideoConfigNumericExpression, CompositionManagerContext, CompProps, DragOverrides, DragOverrideValue, EffectDragOverrides, GetDragOverrides, GetEffectDragOverrides, GetEffectPropStatuses, GetPropStatuses, JsxComponentIdentity, LoggingContextValue, MediaVolumeContextValue, OverrideIdsToNodePathsGettersContext, OverrideIdsToNodePathsSettersContext, OverrideIdToNodePaths, OverrideToNodePathGetters, OverrideToNodeSetters, PlaybackRateContextValue, PropStatuses, RemotionAudioContextState, RemotionEnvironment, ResolvedStackLocation, ScheduleAudioNodeOptions, ScheduleAudioNodeResult, InteractivitySchemaField, SequenceNodePath, SequencePropsSubscriptionKey, SequencePropsStatusRemapping, VideoConfigValues, InteractivitySchema, SerializedJSONWithCustomFields, SetMediaVolumeContextValue, SetTimelineContextValue, TCompMetadata, TComposition, TimelineContextValue, TRenderAsset, TSequence, VisibleFieldSchema, WatchRemotionStaticFilesPayload, };