remotion
Version:
Make videos programmatically
33 lines (32 loc) • 1.77 kB
TypeScript
import React from 'react';
import type { JsxComponentIdentity, SequenceControls } from './CompositionManager.js';
import { type InteractivitySchema } from './interactivity-schema.js';
export declare const getNestedValue: (obj: Record<string, unknown>, key: string) => unknown;
export declare const getRuntimeValueForSchemaKey: ({ flatSchema, key, props, }: {
flatSchema: InteractivitySchema;
key: string;
props: Record<string, unknown>;
}) => unknown;
export declare const readValuesFromProps: (props: Record<string, unknown>, keys: string[], flatSchema?: InteractivitySchema | undefined) => Record<string, unknown>;
export declare const selectActiveKeys: (schema: InteractivitySchema, values: Record<string, unknown>) => string[];
export declare const mergeValues: ({ flatSchema, props, valuesDotNotation, schemaKeys, propsToDelete, }: {
flatSchema: InteractivitySchema;
props: Record<string, unknown>;
valuesDotNotation: Record<string, unknown>;
schemaKeys: string[];
propsToDelete: Set<string>;
}) => Record<string, unknown>;
export type WithInteractivitySchemaOptions<S extends InteractivitySchema, Props extends object> = {
Component: React.ComponentType<Props & {
readonly controls: SequenceControls | undefined;
}>;
componentName: string;
/** @internal */
componentIdentity?: JsxComponentIdentity | null;
schema: S;
supportsEffects: boolean;
};
export declare const DisableInteractivityProvider: React.FC<{
readonly children: React.ReactNode;
}>;
export declare const withInteractivitySchema: <S extends InteractivitySchema, Props extends object>({ Component, componentName, componentIdentity, schema, supportsEffects, }: WithInteractivitySchemaOptions<S, Props>) => React.ComponentType<Props>;