Interface

TimelineKeyframes

Registered keyframe queries, editing, and drawing geometry.

Signature

Type Definition
Interface TimelineKeyframes

Methods

NameSignatureDescription
clearKeyframeSelectionclearKeyframeSelection(): TimelineCommandResultClears the current keyframe selection.
copyKeyframescopyKeyframes(references: typeOperator = ...): TimelineKeyframeClipboardCopies keys independently of the clip clipboard, preserving their relative timing.
createPasteCommandcreatePasteCommand(clipboard: TimelineKeyframeClipboard, time: RationalTime, clipId?: string): TimelineKeyframeEditCommandBuilds an atomic paste command at a new time, optionally into one clip.
getClipKeyframesgetClipKeyframes(clipId: string, property?: string): object[]Returns keyframes owned by one clip, optionally filtered by property.
getClipPropertyValueAtTimegetClipPropertyValueAtTime(clipIdOrClip: string | object, property: string, timelineTime: RationalTime = ...): number | undefinedEvaluates a keyframed clip property at a timeline time.
getKeyframeAtPointgetKeyframeAtPoint(input: TimelineKeyframeHitTestInput): TimelineKeyframeHitTestResult<string> | nullHit-tests timeline keyframes in viewport coordinates.
getKeyframeRectsgetKeyframeRects(options: TimelineKeyframeGeometryOptions = {}): TimelineKeyframeRect<string>[]Returns viewport rectangles for keyframes in track order.
getKeyframeRenderGeometrygetKeyframeRenderGeometry(options: TimelineKeyframeRenderGeometryOptions): TimelineKeyframeRenderGeometryReturns serializable keyframe geometry for canvas rendering.
getKeyframeSegmentsgetKeyframeSegments(options: TimelineKeyframeSegmentGeometryOptions = {}): TimelineKeyframeSegment<string>[]Returns keyframe segments in track order.
getKeyframeTangentHandleAtPointgetKeyframeTangentHandleAtPoint(input: TimelineKeyframeTangentHitTestInput): TimelineKeyframeTangentHandleHitTestResult<string> | nullHit-tests Bezier tangent handles in viewport coordinates.
getSelectedKeyframesgetSelectedKeyframes(): TimelineKeyframeReference[]Current keyframe selection in clip/property/time order.
getVisibleKeyframesgetVisibleKeyframes(options: TimelineKeyframeGeometryOptions = {}, rects: typeOperator = ...): VisibleTimelineKeyframe<string>[]Returns keyframes intersecting the current viewport, plus optional overscan.
getVisibleKeyframeSegmentsgetVisibleKeyframeSegments(options: TimelineKeyframeSegmentGeometryOptions = {}, segments: typeOperator = ...): VisibleTimelineKeyframeSegment<string>[]Returns keyframe segments intersecting the current viewport.
removeClipKeyframeremoveClipKeyframe(clipId: string, keyframeId: string, options: TimelineKeyframeMutationOptions = {}): booleanRemoves one keyframe.
selectKeyframesselectKeyframes(references: typeOperator, mode: "replace" | "add" | "toggle" = 'replace'): TimelineCommandResultSelects keys using replacement, additive or toggle semantics.
setClipKeyframesetClipKeyframe(input: TimelineSetClipKeyframeOptions, options: TimelineKeyframeMutationOptions = {}): TimelineKeyframe | nullAdds or updates one keyframe by clip, property, and exact timeline time. Inserting between keys subdivides the surrounding curve before applying explicit values or sides.
updateClipKeyframeupdateClipKeyframe(input: TimelineUpdateClipKeyframeOptions, options: TimelineKeyframeMutationOptions = {}): TimelineKeyframe | nullUpdates an existing key; a collision rejects the complete edit.
updateClipKeyframeSideupdateClipKeyframeSide(input: TimelineUpdateClipKeyframeSideOptions, options: TimelineKeyframeMutationOptions = {}): TimelineKeyframe | nullUpdates one side, respecting the key's tangent coupling mode.
updateClipKeyframeSidesupdateClipKeyframeSides(input: TimelineUpdateClipKeyframeSidesOptions, options: TimelineKeyframeMutationOptions = {}): TimelineKeyframe | nullUpdates both sides atomically.