@vosjs/studio-core 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -181,12 +181,13 @@ declare function isPlayback(activity: readonly number[] | null | undefined, a: n
181
181
  */
182
182
 
183
183
  /**
184
- * A kept span with an optional HOLD: after its last frame, a freeze for
185
- * `hold` output seconds (the beat before a cut, the ground for the end
186
- * card). Lowered as a rated segment whose tiny source span plays for the
187
- * hold, so every consumer of the rated list inherits it.
184
+ * A kept span. `hold` is the LEGACY spelling of a trailing freeze (a
185
+ * freeze on the segment's last frame for these output seconds): it is
186
+ * read on every path and migrated into `doc.freeze` on read
187
+ * (`migrateMotion`), so nothing new writes it.
188
188
  */
189
189
  type DocSegment = Segment & {
190
+ /** @deprecated migrated on read into a `FreezeSpan` at this segment's `out`. */
190
191
  hold?: number;
191
192
  };
192
193
  /** A single input event captured in the page, relative to the recording's t0. */
@@ -445,6 +446,37 @@ interface SpeedSpan {
445
446
  */
446
447
  source?: 'auto' | 'manual';
447
448
  }
449
+ /**
450
+ * A FREEZE: the footage frozen on one frame for `seconds` of output. A
451
+ * SOURCE moment (`at`), footage-anchored like a speed span so it follows
452
+ * its frame through trims and splits (a freeze whose frame is cut away has
453
+ * no effect, and comes back if the trim is undone), plus output seconds.
454
+ * The retime primitive beside `SpeedSpan`, on the same lane: a speed span
455
+ * is a source RANGE with a rate, a freeze a source POINT with a length,
456
+ * and a rate of zero is deliberately not how it is spelled (the pointer-
457
+ * true gesture maps divide by the rate). Lowered as a rated piece whose
458
+ * hair of source time plays for the seconds, so every consumer of the
459
+ * rated list (mapTime, the zoom remap, the audio splice, the duration)
460
+ * inherits it from one seam. The still every still-taking surface takes
461
+ * is where the LAST freeze begins (`docRestTime`).
462
+ */
463
+ interface FreezeSpan {
464
+ /** Stable identity for selection/editing (`f{n}`). */
465
+ id: string;
466
+ /** SOURCE seconds: the frame that freezes is the one just before `at`. */
467
+ at: number;
468
+ /** OUTPUT seconds the frame holds. */
469
+ seconds: number;
470
+ /** Re-record tie to an actions.json step; `at` stays the truth. */
471
+ anchor?: StepAnchor;
472
+ }
473
+ /** Freeze length bounds, output seconds. */
474
+ declare const FREEZE_SECONDS_MIN = 0.25;
475
+ declare const FREEZE_SECONDS_MAX = 30;
476
+ /** A new freeze's length, output seconds. */
477
+ declare const FREEZE_DEFAULT_SECONDS = 2;
478
+ /** Clamp + quantize a freeze's seconds for storage (3 decimals). */
479
+ declare function clampFreezeSeconds(seconds: number): number;
448
480
  /**
449
481
  * Speed-rate bounds. 16 is also Chromium's HTMLMediaElement.playbackRate
450
482
  * ceiling, so preview (native playback) and export (offline resample) can
@@ -1379,6 +1411,12 @@ interface ProjectDoc {
1379
1411
  * Optional for backward compatibility with persisted docs; absent = all 1×.
1380
1412
  */
1381
1413
  speed?: SpeedSpan[];
1414
+ /**
1415
+ * Freezes (SOURCE moments, footage-anchored — see FreezeSpan), the
1416
+ * other retime primitive. Absent = none; a legacy segment `hold` migrates
1417
+ * here on read.
1418
+ */
1419
+ freeze?: FreezeSpan[];
1382
1420
  /** Zoom regions (SOURCE time, footage-anchored, non-overlapping — see ZoomSpan). */
1383
1421
  zoom: ZoomSpan[];
1384
1422
  /**
@@ -1668,6 +1706,8 @@ declare function projectFromArtifact(artifact: RecordingArtifact, videoUrl: stri
1668
1706
  };
1669
1707
 
1670
1708
  /**
1709
+ * 4 = the freeze era: a segment's `hold` is read into `doc.freeze` (a
1710
+ * freeze at that segment's end), the retime primitive beside speed spans.
1671
1711
  * 3 = the one-vocabulary era: a recording document's `frame.entrance`,
1672
1712
  * `endCard`, clip `enter`/`exit`/`fx` and prop `animation` are read into
1673
1713
  * `anim` (and the end card into clips after the footage plus a card exit).
@@ -1675,14 +1715,15 @@ declare function projectFromArtifact(artifact: RecordingArtifact, videoUrl: stri
1675
1715
  * document); a v1 doc IS a recording document, so 1 → 2 was a stamp, and
1676
1716
  * 0 → 1 was a stamp too.
1677
1717
  */
1678
- declare const DOC_SCHEMA_VERSION = 3;
1718
+ declare const DOC_SCHEMA_VERSION = 4;
1679
1719
  /**
1680
1720
  * Upgrade a hosted doc.json payload to the current schema version.
1681
1721
  * Unstamped docs are v0 — the pre-stamp era. v0 → v2 were stamps; v2 → v3
1682
1722
  * rewrites a recording document's motion spellings into the vocabulary,
1683
- * and leaves a program document as it was (its layers migrate the same
1684
- * way when they carry the old spellings). A real shape change chains its
1685
- * step here.
1723
+ * and v3 → v4 its segment holds into freezes (one rewrite, `migrateMotion`,
1724
+ * idempotent, so both steps are one call); a program document is left as
1725
+ * it was (its layers migrate the same way when they carry the old
1726
+ * spellings). A real shape change chains its step here.
1686
1727
  */
1687
1728
  declare function migrateHostedDoc(raw: Record<string, unknown>): Record<string, unknown>;
1688
1729
 
@@ -2112,7 +2153,8 @@ interface LayoutParts {
2112
2153
  /** The stage clips' ids. */
2113
2154
  clips: string[];
2114
2155
  lean: boolean;
2115
- hold: boolean;
2156
+ /** A trailing freeze (the poster's rest). */
2157
+ freeze: boolean;
2116
2158
  }
2117
2159
  declare function layoutOf(doc: ProjectDoc): LayoutParts;
2118
2160
  interface CopyLayoutOptions {
@@ -2988,15 +3030,23 @@ declare function applyLook(frame: FrameStyle, look: Look, size: {
2988
3030
  }, placement: LookPlacement): FrameStyle;
2989
3031
 
2990
3032
  /**
2991
- * THE REST of a take: the one output time its still is taken at. A poster
2992
- * ends on a trailing `hold` (its last segment freezes on its last frame),
2993
- * and the rest is where that hold BEGINS — the composed frame before
2994
- * nothing moves. Null when the take has no trailing hold. One convention
2995
- * for every still-taking surface (an export, a thumbnail, a kit), so they
2996
- * agree. A legacy end card yields null: its words rise over a receding
2997
- * card, which is footage under a fading title, not a poster.
3033
+ * THE REST of a take: the one output time its still is taken at, where
3034
+ * the LAST freeze begins — the composed frame before nothing moves (a
3035
+ * poster ends on one). Null when the take has no freeze on kept footage.
3036
+ * One convention for every still-taking surface (an export, a thumbnail,
3037
+ * a kit), so they agree. Reads a legacy segment `hold` as the freeze it
3038
+ * migrates to, and a raw hosted payload (no `segments`, no `source`) as
3039
+ * what it has. A legacy end card yields null: its words rise over a
3040
+ * receding card, which is footage under a fading title, not a poster.
2998
3041
  */
2999
3042
  declare function docRestTime(doc: ProjectDoc): number | null;
3043
+ /**
3044
+ * Every freeze the document carries, the spelled ones and the legacy
3045
+ * segment holds (as a freeze at that segment's `out`, id `h{i}`), sorted
3046
+ * by source moment. The one read every consumer takes, so an unmigrated
3047
+ * document freezes exactly where a migrated one does.
3048
+ */
3049
+ declare function docFreezes(doc: Pick<ProjectDoc, 'freeze' | 'segments'>): FreezeSpan[];
3000
3050
  /** The card entrance's default length, seconds. */
3001
3051
  declare const ENTRANCE_SECONDS = 1.2;
3002
3052
  /** The legacy end card's default length, seconds. */
@@ -3019,16 +3069,36 @@ declare function cardExit(frame: Pick<FrameStyle, 'anim'>): AnimStep | null;
3019
3069
  declare function entranceSeconds(e: Step): number;
3020
3070
  /** The exit's length: its own seconds, else the house length of its kind. */
3021
3071
  declare function exitSeconds(e: Step): number;
3072
+ /** A freeze's place on the output timeline (its start and its seconds). */
3073
+ interface FreezeExtent {
3074
+ t: number;
3075
+ duration: number;
3076
+ }
3022
3077
  /**
3023
- * The rated segments with every `hold` expanded: after the last rated
3024
- * piece of a held segment, a freeze piece whose tiny source span at the
3025
- * segment's end plays for `hold` output seconds. Every consumer of the
3026
- * rated list (mapTime, the zoom remap, the audio splice, the duration)
3027
- * inherits the hold from this one seam.
3078
+ * The rated pieces with every freeze placed: at a freeze's source moment
3079
+ * the piece holding it splits, and a freeze piece (a hair of source time
3080
+ * just before the moment, rated to play for the freeze's seconds) goes in
3081
+ * between; a freeze at a piece's end goes after it, one at the very start
3082
+ * before it. A freeze whose moment is on no kept footage is not placed
3083
+ * (it follows its frame, like a span). Every consumer of the rated list
3084
+ * (mapTime, the zoom remap, the audio splice, the duration) inherits the
3085
+ * freezes from this one seam. `marks` is where each placed freeze landed
3086
+ * in OUTPUT time, for the lane and the rest.
3028
3087
  */
3029
- declare function withHolds(docSegments: readonly (Segment & {
3030
- hold?: number;
3031
- })[], rated: Segment[]): Segment[];
3088
+ declare function placeFreezes(rated: readonly Segment[], freezes: readonly FreezeSpan[]): {
3089
+ pieces: Segment[];
3090
+ marks: Map<string, FreezeExtent>;
3091
+ };
3092
+ /** The rated segments with every freeze placed (see `placeFreezes`). */
3093
+ declare function withFreezes(rated: readonly Segment[], freezes: readonly FreezeSpan[]): Segment[];
3094
+ /** Where each freeze lands on the output timeline (unplaced ones absent). */
3095
+ declare function freezeOutputExtents(rated: readonly Segment[], freezes: readonly FreezeSpan[]): Map<string, FreezeExtent>;
3096
+ /**
3097
+ * The rated segments with every legacy segment `hold` placed as the freeze
3098
+ * it migrates to.
3099
+ * @deprecated Read `docFreezes` and place them with `withFreezes`.
3100
+ */
3101
+ declare function withHolds(docSegments: readonly DocSegment[], rated: Segment[]): Segment[];
3032
3102
  /**
3033
3103
  * The card-pose track [scale, dy, opacity] in OUTPUT seconds: the entrance
3034
3104
  * settles the card in from a slightly smaller, lower, transparent pose;
@@ -3393,6 +3463,17 @@ declare function hexToRgbTriplet(hex: string): [number, number, number] | null;
3393
3463
  /** The doc's segments in canonical explicit form (empty = one full-source span). */
3394
3464
  declare function effectiveSegments(doc: StudioDoc): Segment[];
3395
3465
  declare const videoLane: LaneAdapter<ProjectDoc>;
3466
+ /**
3467
+ * Freeze lane — freezes as hatched bands ON the footage clip, beside the
3468
+ * speed bands (the retime lane). A freeze is a SOURCE moment with output
3469
+ * seconds; the lane draws it where the rated pieces put it (a freeze
3470
+ * whose frame is cut away draws nothing) and the band's width is its
3471
+ * seconds. Create at the playhead (a press inside a freeze or off kept
3472
+ * footage no-ops); move re-anchors the moment pointer-true through the
3473
+ * rate map without this freeze; resize on the END edge sets the seconds,
3474
+ * on the START edge re-anchors the moment and keeps the end where it is.
3475
+ */
3476
+ declare const freezeLane: LaneAdapter<ProjectDoc>;
3396
3477
  /**
3397
3478
  * Zoom lane — zoom regions as clips ("1.80×"). Spans are SOURCE-anchored
3398
3479
  * (footage-anchored like speed spans and the cam window); the lane displays
@@ -3639,4 +3720,4 @@ declare function rejectSpan(rejected: RejectedSpan[] | undefined, lane: Rejected
3639
3720
  anchor?: StepAnchor;
3640
3721
  }, note?: string): RejectedSpan;
3641
3722
 
3642
- export { ASPECT_RATIOS, AUDIO_PLAN_STEP, type AnchorKind, type Anim, type AnimKind, type AnimStep, type AppliedTemplate, type ApplyTemplateOptions, type AspectRatioOption, type AudioClip, type AudioPlanPoint, type AudioPlanTrack, BACKGROUND_Z, BASE_FRAME_STYLE, type Backdrop, type BackgroundMedia, type BakedText3dAsset, type BakedText3dMaterial, type BrowserBarStyle, type BuildDigestInput, CAMERA_FAR, CAMERA_NEAR, CAM_CHAIN_GAP, CAM_EASE, CAM_PAN, CAM_PAN_EASE, CAM_RAMP_IN, CAM_RAMP_OUT, CAM_SIZE_MAX, CAM_SIZE_MIN, CAM_SPAN_MIN, CAPTURE_COVERAGE_MIN, CARD_EDGE_OVERDRAW, CARD_ENTER_KINDS, CARD_EXIT_KINDS, CARD_FADE_SECONDS, CARD_FOV, CARD_Z, CHANNEL_SPECS_HASH, CHANNEL_SPECS_VERIFIED, CLICK_FX_INTENSITY, CLICK_FX_PRE, CLICK_HIGHLIGHT_FADE, CLICK_PAIR_MAX, CLICK_PULSE_DUR, CLICK_RECT_MAX_FRAC, CLICK_RIPPLE_DUR, CLICK_SYNTH_RELEASE, CROP_MAX_PX, CROP_MIN_FRAC, CROP_MIN_PX, CROP_PAD, CURSOR_IDLE_EPS_FRAC, CURSOR_IDLE_FADE_IN, CURSOR_IDLE_FADE_OUT, CURSOR_IDLE_HOLD, type CamBubbleRect, type CamPoseSpan, type CamStyle, type CaptureNormalization, type CardLayout, type ClickFxStyle, type CopiedLayout, type CopyLayoutOptions, type CopyStyleOptions, type CursorEvent, type CursorFadeKey, type CursorIdleOptions, type CursorStyle, type CursorTrack, DARK_GROUND, DEFAULT_BROWSER_BAR, DEFAULT_CAM_POSE, DEFAULT_CAM_STYLE, DEFAULT_CLICK_FX, DEFAULT_CURSOR_STYLE, DEFAULT_DUCK, DEFAULT_FRAME_STYLE, DEFAULT_SPEED_PARAMS, DEFAULT_TILT_POSE, DEFAULT_ZOOM_LEVEL, DEFAULT_ZOOM_STYLE, DESTINATIONS, DIGEST_CROP_MAX, DIGEST_FULL_MAX, DIGEST_VERSION, DOC_SCHEMA_VERSION, DRAG_FIT_LEVEL, type Destination, type Digest, type DigestImageRef, type DigestPlan, type DigestTakeFacts, type DocSegment, type DuckOptions, END_CARD_FROM, END_CARD_RECEDE, END_CARD_SECONDS, ENTRANCE_SECONDS, EXPORT_RESOLUTION_OPTIONS, EXPORT_SHORT_EDGE, type EndCard, type EnvelopePoint, type ExportResolution, type ExtractClickOptions, FOLLOW_RECENTER, FOLLOW_SAFE_RATIO, FRAME_BORDER_COLOR_DEFAULT, FRAME_BORDER_DEFAULT, FRAME_BORDER_WIDTH_DEFAULT, type FocusBounds, type FollowEvent, type FollowOptions, type FrameEntrance, type FrameGeometry, type FrameStyle, HOUSE_GRADIENT, IDLE_KINDS, type IdleKind, type IngestOptions, LAYOUT_FRAME_FIELDS, LOOK_KINDS, type LayoutParts, type Look, type LookBrand, type LookKind, type LookPlacement, type LowerProgramOptions, type LoweredAudioClip, type LoweredClick, type LoweredComposition, type LoweredZoomSpan, MEDIA_ENTER_KINDS, MEDIA_EXIT_KINDS, MINIMAL_BAR_THEMES, MOTION_DELTA, MOTION_EASE, type MediaOverlayClip, type MicRms, type MinimalBarTheme, type Moment, type MomentKind, type MomentsOptions, type MotionKey, type MotionPose, type MotionPose3D, type MusicBedInput, type NormRect, OBJECT_DEFAULT_SCALE, OVERLAY_FONT_FACES, OVERLAY_LINE_HEIGHT, OVERLAY_MEDIA_DEFAULT_RADIUS, OVERLAY_MEDIA_DEFAULT_WIDTH, OVERLAY_MIN_DURATION, OVERLAY_SCALE_MAX, OVERLAY_SIZE_MAX, OVERLAY_SIZE_MIN, OVERLAY_TRANSITION_DUR, OVERLAY_Z, type ObjectAnimation, type ObjectAsset, type ObjectClip, type ObjectPrimitiveShape, type OverlayClip, type OverlayFontFace, type OverlayKind, type OverlayPresetStyle, type OverlayRect, type OverlayTransform, type OverlayTransition, PLATE_GROUND, PLAYBACK_ACTIVITY, PROGRAM_RETIME, type PlanOptions, type PlanTiltOptions, type PlaneSize, type ProgramAnchorDoc, type ProgramTweenEdit, type ProjectDoc, type PxRect, REJECT_OVERLAP, REST_TILT_ID, type RecordingArtifact, type RecordingMeta, type Rect, type RejectedLane, type RejectedSpan, type ResolvedOverlayBox, type ResolvedOverlayStyle, SCENE_MOTION, SCENE_QUIET, SPEED_RATE_MAX, SPEED_RATE_MIN, SPEED_SPAN_MIN, STAGE_CLIP_PREFIX, STUDIO_ENTRY_ID, STYLE_FIELDS, type SmoothOptions, type SmoothPoint, type SpeedParams, type SpeedSpan, type StepAnchor, type StepSpan, type StudioAudioPlan, type StudioDoc, type StudioEntry, type StyleField, TEXT3D_DEPTH_DEFAULT, TEXT3D_DEPTH_MAX, TEXT3D_DEPTH_MIN, TEXT_ENTER_KINDS, TEXT_EXIT_KINDS, TEXT_PRESETS, TILT_AUTO_DEAD_ZONE, TILT_AUTO_MIN, TILT_CHAIN_GAP, TILT_DEG_MAX, TILT_EASE, TILT_INTENSITY_MAX, TILT_PAN, TILT_PAN_EASE, TILT_RAMP_IN, TILT_RAMP_OUT, TILT_SPAN_MIN, TILT_UI_DEG_MAX, TRANSITION_SPEED_MULT, type TemplateAnchor, type Text3dMaterial, type TextFxDirection, type TextFxKind, type TextFxSpec, type TextFxUnit, type TextOverlayBox, type TextOverlayClip, type TextOverlayPreset, type TextOverlayStroke, type TiltPersonality, type TiltSpan, type TiltStyleName, type TranscriptSegment, type TransitionSpeed, WINDOW_FOCUS_MIN, ZOOM_CHAIN_GAP, ZOOM_EASE, ZOOM_LEVELS, ZOOM_LEVEL_MAX, ZOOM_LEVEL_MIN, ZOOM_PAN, ZOOM_PAN_EASE, ZOOM_RAMP_IN, ZOOM_RAMP_IN_OVERLAP, ZOOM_RAMP_OUT, ZOOM_SPAN_MIN, ZOOM_STYLES, ZOOM_STYLE_OPTIONS, type ZoomSpan, type ZoomStyleName, type ZoomStyleParams, type ZoomWindow, anchorKindOf, anchorSourceDuration, animStep, applyLook, applyTemplate, aspectRatioValue, audioLane, backdropMedia, buildDigest, camBubbleRect, camBubbleRectAt, camLane, camMoveLane, camRectFromPose, camRestPose, camTrackFromDoc, cardEnter, cardExit, cardInset, cardPointToScreen, cardPoseTrack, clampCamFrac, clampCamSize, clampFocus, clampSpeedRate, clampTiltDeg, clampZoomLevel, clipEnvelope, clipLength, clipsFrom, computeCardLayout, computeMicRms, computePeaks, copyLayout, copyStyle, cropBox, cursorIdleFade, deriveViewportCrop, destinationById, destinationsForChannel, docCardLayout, docOutputDuration, docRestTime, docToCropSpace, docToFullSpace, dropTemplate, duckCurve, effectiveSegments, endCardClips, enterKey, enterOf, entranceSeconds, envelopeAt, envelopeValueAt, exitKey, exitOf, exitSeconds, expandEndCard, expectedFrameSize, exportSizeFor, extractClicks, focusBounds, followFocusEvents, frameGeometry, hexToRgbTriplet, houseLook, idleGaps, idleKey, isLookKind, isMusicBed, isPlayback, isProgramDoc, isRecordingDoc, isRejected, isStageClip, isUnitStep, lastLayerEnd, layoutOf, levelForFocusFraction, lookFromBrand, lookKindForGround, lowerProgramDoc, lowerStudioDoc, lowerToComposition, micLane, migrateHostedDoc, migrateMotion, momentsFromDoc, motionTrack, musicBedClip, normalizeCaptureSpace, objectMotionBase, objectMotionPoseAt, objectsLane, outputDurationOf, outputEnd, outputRangeToSource, overlapFraction, overlayFaceFor, overlayFontFaces, overlayFontString, overlayFxSpec, overlayHit, overlayLines, overlayMotionBase, overlayMotionPoseAt, overlayRect, overlaysLane, pageDisplayUrl, parsePoseId, pickStyle, planAutoSpeed, planAutoTilt, planAutoZoom, planForDigest, planeSizeAtDepth, platformBarKind, programDuration, projectFromArtifact, ratedSegments, recommendedExportResolution, refillAudioBeds, rejectSpan, removeSourceRange, removeSpeedInRange, resolveExportSize, resolveOverlayBox, resolveOverlayStyle, resolveText3dAsset, resolveZoomStyle, restLeanOf, sceneChanges, scrollRuns, setSpeedInRange, smoothCursor, spanOutputExtent, speedLane, studioAudioPlan, studioEntry, studioLayerData, tiltLane, tiltTrackFromDoc, transitionMult, videoLane, voiceKey, withBackdrop, withHolds, withoutRejected, wrapProgramLength, zoomCoversRect, zoomLane, zoomSpanForRange, zoomTrackFromDoc, zoomWindow };
3723
+ export { ASPECT_RATIOS, AUDIO_PLAN_STEP, type AnchorKind, type Anim, type AnimKind, type AnimStep, type AppliedTemplate, type ApplyTemplateOptions, type AspectRatioOption, type AudioClip, type AudioPlanPoint, type AudioPlanTrack, BACKGROUND_Z, BASE_FRAME_STYLE, type Backdrop, type BackgroundMedia, type BakedText3dAsset, type BakedText3dMaterial, type BrowserBarStyle, type BuildDigestInput, CAMERA_FAR, CAMERA_NEAR, CAM_CHAIN_GAP, CAM_EASE, CAM_PAN, CAM_PAN_EASE, CAM_RAMP_IN, CAM_RAMP_OUT, CAM_SIZE_MAX, CAM_SIZE_MIN, CAM_SPAN_MIN, CAPTURE_COVERAGE_MIN, CARD_EDGE_OVERDRAW, CARD_ENTER_KINDS, CARD_EXIT_KINDS, CARD_FADE_SECONDS, CARD_FOV, CARD_Z, CHANNEL_SPECS_HASH, CHANNEL_SPECS_VERIFIED, CLICK_FX_INTENSITY, CLICK_FX_PRE, CLICK_HIGHLIGHT_FADE, CLICK_PAIR_MAX, CLICK_PULSE_DUR, CLICK_RECT_MAX_FRAC, CLICK_RIPPLE_DUR, CLICK_SYNTH_RELEASE, CROP_MAX_PX, CROP_MIN_FRAC, CROP_MIN_PX, CROP_PAD, CURSOR_IDLE_EPS_FRAC, CURSOR_IDLE_FADE_IN, CURSOR_IDLE_FADE_OUT, CURSOR_IDLE_HOLD, type CamBubbleRect, type CamPoseSpan, type CamStyle, type CaptureNormalization, type CardLayout, type ClickFxStyle, type CopiedLayout, type CopyLayoutOptions, type CopyStyleOptions, type CursorEvent, type CursorFadeKey, type CursorIdleOptions, type CursorStyle, type CursorTrack, DARK_GROUND, DEFAULT_BROWSER_BAR, DEFAULT_CAM_POSE, DEFAULT_CAM_STYLE, DEFAULT_CLICK_FX, DEFAULT_CURSOR_STYLE, DEFAULT_DUCK, DEFAULT_FRAME_STYLE, DEFAULT_SPEED_PARAMS, DEFAULT_TILT_POSE, DEFAULT_ZOOM_LEVEL, DEFAULT_ZOOM_STYLE, DESTINATIONS, DIGEST_CROP_MAX, DIGEST_FULL_MAX, DIGEST_VERSION, DOC_SCHEMA_VERSION, DRAG_FIT_LEVEL, type Destination, type Digest, type DigestImageRef, type DigestPlan, type DigestTakeFacts, type DocSegment, type DuckOptions, END_CARD_FROM, END_CARD_RECEDE, END_CARD_SECONDS, ENTRANCE_SECONDS, EXPORT_RESOLUTION_OPTIONS, EXPORT_SHORT_EDGE, type EndCard, type EnvelopePoint, type ExportResolution, type ExtractClickOptions, FOLLOW_RECENTER, FOLLOW_SAFE_RATIO, FRAME_BORDER_COLOR_DEFAULT, FRAME_BORDER_DEFAULT, FRAME_BORDER_WIDTH_DEFAULT, FREEZE_DEFAULT_SECONDS, FREEZE_SECONDS_MAX, FREEZE_SECONDS_MIN, type FocusBounds, type FollowEvent, type FollowOptions, type FrameEntrance, type FrameGeometry, type FrameStyle, type FreezeExtent, type FreezeSpan, HOUSE_GRADIENT, IDLE_KINDS, type IdleKind, type IngestOptions, LAYOUT_FRAME_FIELDS, LOOK_KINDS, type LayoutParts, type Look, type LookBrand, type LookKind, type LookPlacement, type LowerProgramOptions, type LoweredAudioClip, type LoweredClick, type LoweredComposition, type LoweredZoomSpan, MEDIA_ENTER_KINDS, MEDIA_EXIT_KINDS, MINIMAL_BAR_THEMES, MOTION_DELTA, MOTION_EASE, type MediaOverlayClip, type MicRms, type MinimalBarTheme, type Moment, type MomentKind, type MomentsOptions, type MotionKey, type MotionPose, type MotionPose3D, type MusicBedInput, type NormRect, OBJECT_DEFAULT_SCALE, OVERLAY_FONT_FACES, OVERLAY_LINE_HEIGHT, OVERLAY_MEDIA_DEFAULT_RADIUS, OVERLAY_MEDIA_DEFAULT_WIDTH, OVERLAY_MIN_DURATION, OVERLAY_SCALE_MAX, OVERLAY_SIZE_MAX, OVERLAY_SIZE_MIN, OVERLAY_TRANSITION_DUR, OVERLAY_Z, type ObjectAnimation, type ObjectAsset, type ObjectClip, type ObjectPrimitiveShape, type OverlayClip, type OverlayFontFace, type OverlayKind, type OverlayPresetStyle, type OverlayRect, type OverlayTransform, type OverlayTransition, PLATE_GROUND, PLAYBACK_ACTIVITY, PROGRAM_RETIME, type PlanOptions, type PlanTiltOptions, type PlaneSize, type ProgramAnchorDoc, type ProgramTweenEdit, type ProjectDoc, type PxRect, REJECT_OVERLAP, REST_TILT_ID, type RecordingArtifact, type RecordingMeta, type Rect, type RejectedLane, type RejectedSpan, type ResolvedOverlayBox, type ResolvedOverlayStyle, SCENE_MOTION, SCENE_QUIET, SPEED_RATE_MAX, SPEED_RATE_MIN, SPEED_SPAN_MIN, STAGE_CLIP_PREFIX, STUDIO_ENTRY_ID, STYLE_FIELDS, type SmoothOptions, type SmoothPoint, type SpeedParams, type SpeedSpan, type StepAnchor, type StepSpan, type StudioAudioPlan, type StudioDoc, type StudioEntry, type StyleField, TEXT3D_DEPTH_DEFAULT, TEXT3D_DEPTH_MAX, TEXT3D_DEPTH_MIN, TEXT_ENTER_KINDS, TEXT_EXIT_KINDS, TEXT_PRESETS, TILT_AUTO_DEAD_ZONE, TILT_AUTO_MIN, TILT_CHAIN_GAP, TILT_DEG_MAX, TILT_EASE, TILT_INTENSITY_MAX, TILT_PAN, TILT_PAN_EASE, TILT_RAMP_IN, TILT_RAMP_OUT, TILT_SPAN_MIN, TILT_UI_DEG_MAX, TRANSITION_SPEED_MULT, type TemplateAnchor, type Text3dMaterial, type TextFxDirection, type TextFxKind, type TextFxSpec, type TextFxUnit, type TextOverlayBox, type TextOverlayClip, type TextOverlayPreset, type TextOverlayStroke, type TiltPersonality, type TiltSpan, type TiltStyleName, type TranscriptSegment, type TransitionSpeed, WINDOW_FOCUS_MIN, ZOOM_CHAIN_GAP, ZOOM_EASE, ZOOM_LEVELS, ZOOM_LEVEL_MAX, ZOOM_LEVEL_MIN, ZOOM_PAN, ZOOM_PAN_EASE, ZOOM_RAMP_IN, ZOOM_RAMP_IN_OVERLAP, ZOOM_RAMP_OUT, ZOOM_SPAN_MIN, ZOOM_STYLES, ZOOM_STYLE_OPTIONS, type ZoomSpan, type ZoomStyleName, type ZoomStyleParams, type ZoomWindow, anchorKindOf, anchorSourceDuration, animStep, applyLook, applyTemplate, aspectRatioValue, audioLane, backdropMedia, buildDigest, camBubbleRect, camBubbleRectAt, camLane, camMoveLane, camRectFromPose, camRestPose, camTrackFromDoc, cardEnter, cardExit, cardInset, cardPointToScreen, cardPoseTrack, clampCamFrac, clampCamSize, clampFocus, clampFreezeSeconds, clampSpeedRate, clampTiltDeg, clampZoomLevel, clipEnvelope, clipLength, clipsFrom, computeCardLayout, computeMicRms, computePeaks, copyLayout, copyStyle, cropBox, cursorIdleFade, deriveViewportCrop, destinationById, destinationsForChannel, docCardLayout, docFreezes, docOutputDuration, docRestTime, docToCropSpace, docToFullSpace, dropTemplate, duckCurve, effectiveSegments, endCardClips, enterKey, enterOf, entranceSeconds, envelopeAt, envelopeValueAt, exitKey, exitOf, exitSeconds, expandEndCard, expectedFrameSize, exportSizeFor, extractClicks, focusBounds, followFocusEvents, frameGeometry, freezeLane, freezeOutputExtents, hexToRgbTriplet, houseLook, idleGaps, idleKey, isLookKind, isMusicBed, isPlayback, isProgramDoc, isRecordingDoc, isRejected, isStageClip, isUnitStep, lastLayerEnd, layoutOf, levelForFocusFraction, lookFromBrand, lookKindForGround, lowerProgramDoc, lowerStudioDoc, lowerToComposition, micLane, migrateHostedDoc, migrateMotion, momentsFromDoc, motionTrack, musicBedClip, normalizeCaptureSpace, objectMotionBase, objectMotionPoseAt, objectsLane, outputDurationOf, outputEnd, outputRangeToSource, overlapFraction, overlayFaceFor, overlayFontFaces, overlayFontString, overlayFxSpec, overlayHit, overlayLines, overlayMotionBase, overlayMotionPoseAt, overlayRect, overlaysLane, pageDisplayUrl, parsePoseId, pickStyle, placeFreezes, planAutoSpeed, planAutoTilt, planAutoZoom, planForDigest, planeSizeAtDepth, platformBarKind, programDuration, projectFromArtifact, ratedSegments, recommendedExportResolution, refillAudioBeds, rejectSpan, removeSourceRange, removeSpeedInRange, resolveExportSize, resolveOverlayBox, resolveOverlayStyle, resolveText3dAsset, resolveZoomStyle, restLeanOf, sceneChanges, scrollRuns, setSpeedInRange, smoothCursor, spanOutputExtent, speedLane, studioAudioPlan, studioEntry, studioLayerData, tiltLane, tiltTrackFromDoc, transitionMult, videoLane, voiceKey, withBackdrop, withFreezes, withHolds, withoutRejected, wrapProgramLength, zoomCoversRect, zoomLane, zoomSpanForRange, zoomTrackFromDoc, zoomWindow };