import type { Expression, File, JSXElement, JSXOpeningElement } from '@babel/types'; import type { SubscribeToSequencePropsResponse } from '@remotion/studio-shared'; import type { CanUpdateSequencePropsResponseTrue, CanUpdateSequencePropStatus, SequenceNodePath, VideoConfigValues } from 'remotion'; import { type VideoConfigIdentifierValues } from './sequence-props/video-config-values'; type StaticValueOptions = { allowSpecialValues: boolean; }; export declare const isStaticValue: (node: Expression, options?: StaticValueOptions) => boolean; export declare const extractStaticValue: (node: Expression, options?: StaticValueOptions) => unknown; export declare const getComputedStatus: (node: Expression, ast: File, videoConfigValues: VideoConfigIdentifierValues) => CanUpdateSequencePropStatus; export declare const getNodePathForRecastPath: (recastPath: any, ast: File) => SequenceNodePath; export declare const findJsxElementPathAtNodePath: (ast: File, nodePath: SequenceNodePath) => import("ast-types/lib/node-path").NodePath | null; export declare const findJsxElementAtNodePath: (ast: File, nodePath: SequenceNodePath) => JSXOpeningElement | null; export declare const findJsxElementNodeAtNodePath: (ast: File, nodePath: SequenceNodePath) => JSXElement | null; export type StaticJsxTextContent = { kind: 'jsx-text'; value: string; } | { kind: 'string-expression'; value: string; }; export declare const getStaticJsxChildrenAttribute: (jsxElement: JSXOpeningElement) => StaticJsxTextContent | null; export declare const hasJsxChildrenAttribute: (jsxElement: JSXOpeningElement) => boolean; export declare const getStaticJsxTextContent: (jsxElement: JSXElement) => StaticJsxTextContent | null; export declare const findNodePathForJsxElement: (ast: File, target: JSXOpeningElement) => SequenceNodePath | null; export declare const lineColumnToNodePath: (ast: File, targetLine: number) => SequenceNodePath | null; export declare const computeSequencePropsStatusFromContent: ({ fileContents, nodePath, componentIdentity, keys, assetKeys, effects, videoConfigValues, }: { fileContents: string; nodePath: SequenceNodePath; componentIdentity: string | null; keys: string[]; assetKeys?: string[] | undefined; effects: string[][]; videoConfigValues: VideoConfigValues | null; }) => CanUpdateSequencePropsResponseTrue; export declare const computeSequencePropsSubscriptionFromContent: ({ fileContents, absolutePath, line, preferredNodePath, componentIdentity, keys, assetKeys, effects, videoConfigValues, }: { fileContents: string; absolutePath: string; line: number; preferredNodePath: SequenceNodePath | null; componentIdentity: string | null; keys: string[]; assetKeys?: string[] | undefined; effects: string[][]; videoConfigValues: VideoConfigValues; }) => SubscribeToSequencePropsResponse; export {};