@vosjs/studio-core 0.16.0 → 0.18.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
@@ -189,6 +189,17 @@ declare function isPlayback(activity: readonly number[] | null | undefined, a: n
189
189
  type DocSegment = Segment & {
190
190
  /** The media this clip plays (`doc.media[].id`); absent = the primary, `doc.source`. */
191
191
  media?: string;
192
+ /**
193
+ * How this clip meets the clips beside it: `enter` is its arrival at the
194
+ * boundary with the clip BEFORE it, `exit` its leaving at the boundary
195
+ * with the clip AFTER it (`slide` | `fade` | `scale` | `none`; a slide
196
+ * names its `side`, a step its `seconds`). When an exit and the next
197
+ * clip's enter meet at one boundary they run together, the outgoing
198
+ * frozen on its last frame sliding away while the incoming plays: a
199
+ * push. The first clip's enter and the last clip's exit are the CARD's
200
+ * own (`frame.anim`) and are ignored here. Absent = a hard cut.
201
+ */
202
+ anim?: Anim;
192
203
  /** @deprecated migrated on read into a `FreezeSpan` at this segment's `out`. */
193
204
  hold?: number;
194
205
  };
@@ -401,6 +412,12 @@ interface StepSpan {
401
412
  tEnd: number;
402
413
  /** the selector never became visible — the gesture did not run. */
403
414
  skipped?: boolean;
415
+ /**
416
+ * The page's URL changed while the step ran: a click that navigated, or
417
+ * the `wait` that let a navigation land. The planner proposes a
418
+ * transition at the page change.
419
+ */
420
+ navigated?: boolean;
404
421
  }
405
422
  /** Everything the capture extension hands off to the studio. */
406
423
  interface RecordingArtifact {
@@ -1013,13 +1030,20 @@ type OverlayTransition = 'none' | 'fade' | 'rise';
1013
1030
  /**
1014
1031
  * THE animation vocabulary, one for every visual primitive. Which kinds a
1015
1032
  * thing accepts is its own (`anim.ts` holds the tables): the card enters by
1016
- * `tilt-in`, `pull-out`, `rise` or `fade` and leaves by `recede` or `fade`;
1017
- * words enter by the block transitions or per unit (`pop`, `blur`,
1033
+ * `tilt-in`, `pull-out`, `rise`, `fade` or `slide` and leaves by `recede` or
1034
+ * `fade`; words enter by the block transitions or per unit (`pop`, `blur`,
1018
1035
  * `typewriter`, or a `fade`/`rise` that names its unit); an image or a
1019
1036
  * video clip enters and leaves by `fade` or `rise`; a prop idles by `spin`
1020
- * or `float`. `none` is an explicit nothing; absent is the house default.
1037
+ * or `float`; a FOOTAGE clip meets the clip beside it by `slide`, `fade` or
1038
+ * `scale` (a transition at the boundary). `none` is an explicit nothing;
1039
+ * absent is the house default.
1040
+ */
1041
+ type AnimKind = 'none' | 'fade' | 'rise' | 'pop' | 'blur' | 'typewriter' | 'tilt-in' | 'pull-out' | 'recede' | 'slide' | 'scale';
1042
+ /**
1043
+ * The side a slide comes from (an enter) or leaves to (an exit), as seen on
1044
+ * screen: `right` enters from the right edge, `left` leaves off the left.
1021
1045
  */
1022
- type AnimKind = 'none' | 'fade' | 'rise' | 'pop' | 'blur' | 'typewriter' | 'tilt-in' | 'pull-out' | 'recede';
1046
+ type AnimSide = 'left' | 'right' | 'up' | 'down';
1023
1047
  /** What a thing does while it stays. */
1024
1048
  type IdleKind = 'spin' | 'float';
1025
1049
  /**
@@ -1036,6 +1060,12 @@ interface AnimStep {
1036
1060
  direction?: TextFxDirection;
1037
1061
  /** Words only: seconds between one unit's start and the next. */
1038
1062
  stagger?: number;
1063
+ /**
1064
+ * A slide's side: where an enter comes FROM, where an exit goes TO.
1065
+ * Absent: an enter comes from the right, an exit leaves to the left (the
1066
+ * page turns forward).
1067
+ */
1068
+ side?: AnimSide;
1039
1069
  }
1040
1070
  interface Anim {
1041
1071
  enter?: AnimKind | AnimStep;
@@ -1221,7 +1251,22 @@ interface TextOverlayBox {
1221
1251
  */
1222
1252
  interface MediaOverlayClip extends OverlayClipBase {
1223
1253
  kind: 'image' | 'video';
1254
+ /**
1255
+ * The picture: an asset URL, a take-dir file, or a DOCUMENT MEDIA by
1256
+ * reference, `media:<id>` (`media:` alone is the primary), which brings
1257
+ * the media's facts with it (its cursor track, its recorded page) and
1258
+ * follows the media's kind. The lowering resolves the reference to the
1259
+ * media's own key; the document keeps the reference.
1260
+ */
1224
1261
  key: string;
1262
+ /**
1263
+ * The layer as a CARD: drawn by the card painter on its own plane above
1264
+ * the primary card (the layered shadow, the media clipped to its corners,
1265
+ * a browser bar, the border, a lean, and for a document media its cursor
1266
+ * dot and click rings). Absent, the layer is the flat picture it always
1267
+ * was, byte-identically.
1268
+ */
1269
+ frame?: LayerCard;
1225
1270
  /**
1226
1271
  * The card shadow. Absent = 'soft' — the baked look every
1227
1272
  * doc predating the field renders, so absence lowers byte-identically. 'strong' is the
@@ -1247,6 +1292,27 @@ interface MediaOverlayClip extends OverlayClipBase {
1247
1292
  loop?: boolean;
1248
1293
  }
1249
1294
  type OverlayClip = TextOverlayClip | MediaOverlayClip;
1295
+ /**
1296
+ * A layer's own card. The bar is ALLOWED on any card and opens off; its
1297
+ * address defaults to the media's recorded page when the layer shows a
1298
+ * document media. The lean is the tilt convention, in degrees.
1299
+ */
1300
+ interface LayerCard {
1301
+ browserBar?: Partial<BrowserBarStyle>;
1302
+ lean?: {
1303
+ rx: number;
1304
+ ry: number;
1305
+ };
1306
+ /** The layered shadow's strength; absent = LAYER_CARD_SHADOW. */
1307
+ shadow?: number;
1308
+ shadowContact?: number;
1309
+ shadowColor?: string;
1310
+ /** Draw the media's cursor and clicks inside the card; absent = yes when it has a track. */
1311
+ cursor?: boolean;
1312
+ }
1313
+ declare const LAYER_CARD_SHADOW = 0.32;
1314
+ /** The prefix of a media overlay key that names a document media. */
1315
+ declare const MEDIA_KEY_PREFIX = "media:";
1250
1316
  /**
1251
1317
  * Ceiling on `transform.scale` for text overlays, shared by the canvas box
1252
1318
  * and the panel so the two can never disagree about where growth stops (a
@@ -2310,6 +2376,28 @@ declare function applyTemplate(template: ProjectDoc, take: ProjectDoc, opts: App
2310
2376
  /** What the CARD can do. */
2311
2377
  declare const CARD_ENTER_KINDS: readonly AnimKind[];
2312
2378
  declare const CARD_EXIT_KINDS: readonly AnimKind[];
2379
+ /**
2380
+ * What a FOOTAGE clip can do at a boundary with the clip beside it: the
2381
+ * incoming slides, fades or scales in while the outgoing, frozen on its
2382
+ * last frame, does the same out. `none` (or absent) is a hard cut.
2383
+ */
2384
+ declare const SEGMENT_ENTER_KINDS: readonly AnimKind[];
2385
+ declare const SEGMENT_EXIT_KINDS: readonly AnimKind[];
2386
+ /** A transition's house length, seconds. */
2387
+ declare const TRANSITION_SECONDS = 0.6;
2388
+ /** A transition's bounds, seconds (the lint's and the lowering's). */
2389
+ declare const TRANSITION_SECONDS_MIN = 0.15;
2390
+ declare const TRANSITION_SECONDS_MAX = 2;
2391
+ /**
2392
+ * A transition step's seconds: its own, else the house length, clamped.
2393
+ * Zero for none or absent.
2394
+ */
2395
+ declare function transitionSeconds(step: AnimStep | null | undefined): number;
2396
+ /**
2397
+ * A slide's side: where an enter comes from, where an exit goes to. The
2398
+ * default turns the page forward: in from the right, out to the left.
2399
+ */
2400
+ declare function slideSide(step: AnimStep | null | undefined, which: 'enter' | 'exit'): AnimSide;
2313
2401
  /** What WORDS can do (the per-unit kinds are text-only). */
2314
2402
  declare const TEXT_ENTER_KINDS: readonly AnimKind[];
2315
2403
  declare const TEXT_EXIT_KINDS: readonly AnimKind[];
@@ -3232,6 +3320,77 @@ declare function migrateMotion(doc: ProjectDoc): ProjectDoc;
3232
3320
  */
3233
3321
  declare function outputEnd(doc: Pick<ProjectDoc, 'overlays' | 'objects'>, footageEnd: number): number;
3234
3322
 
3323
+ /** The kinds a boundary moves by. */
3324
+ type TransitionKind = 'slide' | 'fade' | 'scale';
3325
+ /** One side of a transition: how a card moves, for how long. */
3326
+ interface TransitionMove {
3327
+ kind: TransitionKind;
3328
+ /** A slide's side (where an enter comes from, where an exit goes to). */
3329
+ side: AnimSide;
3330
+ /** Seconds this side takes, from the boundary. */
3331
+ d: number;
3332
+ }
3333
+ /** The outgoing card: which media's last frame it shows, and how it leaves. */
3334
+ interface TransitionOut extends TransitionMove {
3335
+ /** The media (`''` = the primary). */
3336
+ media: string;
3337
+ /** SOURCE seconds of the frame it shows (the clip's last frame). */
3338
+ at: number;
3339
+ }
3340
+ /** A boundary transition in OUTPUT seconds. */
3341
+ interface Transition {
3342
+ /** The boundary: where the incoming clip starts. */
3343
+ t: number;
3344
+ /** The window: the longer of the two sides. */
3345
+ d: number;
3346
+ /** How the incoming (live) card arrives; absent = it holds still. */
3347
+ in?: TransitionMove;
3348
+ /** The outgoing snapshot and how it leaves; absent = it is simply gone. */
3349
+ out?: TransitionOut;
3350
+ }
3351
+ /**
3352
+ * The document's transitions: one record per boundary that names an exit
3353
+ * or an enter, plus the card's own `slide` enter at the open. Empty for a
3354
+ * document with none, so it lowers as before.
3355
+ */
3356
+ declare function docTransitions(doc: ProjectDoc): Transition[];
3357
+ /**
3358
+ * The camera rests through a transition: a source-anchored span (zoom,
3359
+ * tilt) whose output start falls inside a boundary's window loses its
3360
+ * head, starting where the window ends instead, and a span too short to
3361
+ * survive the cut is dropped. Spans that start before the window keep
3362
+ * their own end. The open's record (t = 0) is the entrance's business
3363
+ * (`prependEntrance`) and is skipped here.
3364
+ */
3365
+ declare function restSpansThroughTransitions<T extends {
3366
+ in: number;
3367
+ out: number;
3368
+ media?: string;
3369
+ }>(spans: readonly T[], rated: readonly (Segment & {
3370
+ media?: string;
3371
+ })[], transitions: readonly Transition[], minLen: number): T[];
3372
+
3373
+ /** The doc's segments in canonical explicit form (empty = one full-source span). */
3374
+ declare function effectiveSegments(doc: StudioDoc): Segment[];
3375
+ /** Output-time length of one DOC segment (speed- and freeze-aware). */
3376
+ declare const outputLen: (seg: Segment & {
3377
+ media?: string;
3378
+ }, speeds: readonly SpeedSpan[], freezes?: readonly FreezeSpan[], leading?: boolean) => number;
3379
+ /** Output-time starts of the DOC segments (speed- and freeze-aware). */
3380
+ declare const segmentStarts: (segments: readonly (Segment & {
3381
+ media?: string;
3382
+ })[], speeds: readonly SpeedSpan[], freezes?: readonly FreezeSpan[]) => number[];
3383
+ /** One DOC segment's place on the output timeline. */
3384
+ interface SegmentExtent {
3385
+ start: number;
3386
+ end: number;
3387
+ }
3388
+ /**
3389
+ * Every DOC segment's output extent, in order: where each clip starts and
3390
+ * ends on the timeline, freezes included.
3391
+ */
3392
+ declare function segmentOutputExtents(doc: StudioDoc): SegmentExtent[];
3393
+
3235
3394
  /**
3236
3395
  * Many media in one take, one rule: a recording is media plus the FACTS
3237
3396
  * only a capture has, and `doc.source` is the PRIMARY media (the subject:
@@ -3280,6 +3439,12 @@ declare function mediaAtOutput(rated: readonly MediaSegment[], t: number): strin
3280
3439
  declare function mediaFrame(doc: Pick<ProjectDoc, 'source' | 'media' | 'frame'>, id: string | undefined | null): FrameStyle;
3281
3440
  /** The card-owned fields of a frame, alone (what a media's card is made of). */
3282
3441
  declare function cardFields(frame: FrameStyle): Pick<FrameStyle, MediaFrameKey>;
3442
+ /** The overlay key that shows a document media (`''` = the primary). */
3443
+ declare const mediaRef: (id: string) => string;
3444
+ /** The media id an overlay key names, `''` for the primary, null for a plain key. */
3445
+ declare function mediaRefId(key: string | undefined | null): string | null;
3446
+ /** The document media a layer's key shows, or null for a plain key or a stranger. */
3447
+ declare function layerMedia(doc: Pick<ProjectDoc, 'source' | 'media'>, key: string | undefined | null): ProjectDoc['source'] | null;
3283
3448
  /** The next free media id (`m1`, `m2`, …). */
3284
3449
  declare function nextMediaId(doc: Pick<ProjectDoc, 'media'>): string;
3285
3450
 
@@ -3603,8 +3768,6 @@ declare function extractClicks(track: CursorTrack, segments: readonly MediaPiece
3603
3768
  /** '#rgb'/'#rrggbb' → [r,g,b] for ctx.data (ON_FRAME composes rgba() per frame). */
3604
3769
  declare function hexToRgbTriplet(hex: string): [number, number, number] | null;
3605
3770
 
3606
- /** The doc's segments in canonical explicit form (empty = one full-source span). */
3607
- declare function effectiveSegments(doc: StudioDoc): Segment[];
3608
3771
  declare const videoLane: LaneAdapter<ProjectDoc>;
3609
3772
  /**
3610
3773
  * Freeze lane — freezes as hatched bands ON the footage clip, beside the
@@ -3863,4 +4026,4 @@ declare function rejectSpan(rejected: RejectedSpan[] | undefined, lane: Rejected
3863
4026
  anchor?: StepAnchor;
3864
4027
  }, note?: string): RejectedSpan;
3865
4028
 
3866
- 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, MEDIA_FRAME_KEYS, MINIMAL_BAR_THEMES, MOTION_DELTA, MOTION_EASE, type Media, type MediaFrame, type MediaFrameKey, type MediaOverlayClip, type MediaSegment, 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, PRIMARY_MEDIA, 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, STILL_DEFAULT, 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, cardFields, 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, docMediaList, docOutputDuration, docRestTime, docStillTime, 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, mediaAtOutput, mediaDuration, mediaFrame, mediaKey, mediaSource, micLane, migrateHostedDoc, migrateMotion, momentsFromDoc, motionTrack, musicBedClip, nextMediaId, normalizeCaptureSpace, objectMotionBase, objectMotionPoseAt, objectsLane, outputDurationOf, outputEnd, outputRangeToSource, overlapFraction, overlayFaceFor, overlayFontFaces, overlayFontString, overlayFxSpec, overlayHit, overlayLines, overlayMotionBase, overlayMotionPoseAt, overlayRect, overlaysLane, ownFreezes, pageDisplayUrl, parsePoseId, pickStyle, placeFreezes, planAutoSpeed, planAutoTilt, planAutoZoom, planForDigest, planeSizeAtDepth, platformBarKind, programDuration, projectFromArtifact, ratedSegments, recommendedExportResolution, refillAudioBeds, rejectSpan, removeSourceRange, removeSpeedInRange, resolveExportSize, resolveOverlayBox, resolveOverlayStyle, resolveText3dAsset, resolveZoomStyle, restLeanOf, sameMedia, sceneChanges, scrollRuns, setSpeedInRange, smoothCursor, spanOutputExtent, speedLane, studioAudioPlan, studioEntry, studioLayerData, tiltLane, tiltTrackFromDoc, transitionMult, videoLane, voiceKey, withBackdrop, withFreezes, withHolds, withoutRejected, wrapProgramLength, zoomCoversRect, zoomLane, zoomSpanForRange, zoomTrackFromDoc, zoomWindow };
4029
+ export { ASPECT_RATIOS, AUDIO_PLAN_STEP, type AnchorKind, type Anim, type AnimKind, type AnimSide, 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, LAYER_CARD_SHADOW, LAYOUT_FRAME_FIELDS, LOOK_KINDS, type LayerCard, 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, MEDIA_FRAME_KEYS, MEDIA_KEY_PREFIX, MINIMAL_BAR_THEMES, MOTION_DELTA, MOTION_EASE, type Media, type MediaFrame, type MediaFrameKey, type MediaOverlayClip, type MediaSegment, 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, PRIMARY_MEDIA, 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, SEGMENT_ENTER_KINDS, SEGMENT_EXIT_KINDS, SPEED_RATE_MAX, SPEED_RATE_MIN, SPEED_SPAN_MIN, STAGE_CLIP_PREFIX, STILL_DEFAULT, STUDIO_ENTRY_ID, STYLE_FIELDS, type SegmentExtent, 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_SECONDS, TRANSITION_SECONDS_MAX, TRANSITION_SECONDS_MIN, 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 Transition, type TransitionKind, type TransitionMove, type TransitionOut, 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, cardFields, 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, docMediaList, docOutputDuration, docRestTime, docStillTime, docToCropSpace, docToFullSpace, docTransitions, 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, layerMedia, layoutOf, levelForFocusFraction, lookFromBrand, lookKindForGround, lowerProgramDoc, lowerStudioDoc, lowerToComposition, mediaAtOutput, mediaDuration, mediaFrame, mediaKey, mediaRef, mediaRefId, mediaSource, micLane, migrateHostedDoc, migrateMotion, momentsFromDoc, motionTrack, musicBedClip, nextMediaId, normalizeCaptureSpace, objectMotionBase, objectMotionPoseAt, objectsLane, outputDurationOf, outputEnd, outputRangeToSource, overlapFraction, overlayFaceFor, overlayFontFaces, overlayFontString, overlayFxSpec, overlayHit, overlayLines, overlayMotionBase, overlayMotionPoseAt, overlayRect, overlaysLane, ownFreezes, pageDisplayUrl, parsePoseId, pickStyle, placeFreezes, planAutoSpeed, planAutoTilt, planAutoZoom, planForDigest, planeSizeAtDepth, platformBarKind, programDuration, projectFromArtifact, ratedSegments, recommendedExportResolution, refillAudioBeds, rejectSpan, removeSourceRange, removeSpeedInRange, resolveExportSize, resolveOverlayBox, resolveOverlayStyle, resolveText3dAsset, resolveZoomStyle, restLeanOf, restSpansThroughTransitions, sameMedia, sceneChanges, scrollRuns, segmentOutputExtents, outputLen as segmentOutputLen, segmentStarts, setSpeedInRange, slideSide, smoothCursor, spanOutputExtent, speedLane, studioAudioPlan, studioEntry, studioLayerData, tiltLane, tiltTrackFromDoc, transitionMult, transitionSeconds, videoLane, voiceKey, withBackdrop, withFreezes, withHolds, withoutRejected, wrapProgramLength, zoomCoversRect, zoomLane, zoomSpanForRange, zoomTrackFromDoc, zoomWindow };