import type React from 'react'; import type { AnyZodObject } from './any-zod-type.js'; import type { AnyComposition, TComposition } from './CompositionManager.js'; import type { TFolder } from './Folder.js'; import type { VideoConfig } from './video-config.js'; export type BaseMetadata = Pick; export type AssetPreviewMetadata = BaseMetadata & { asset: string; src: string; }; export declare const getAssetPreviewCompositionId: (asset: string) => string; export type CanvasContent = { type: 'composition'; compositionId: string; } | { type: 'asset'; asset: string; } | { type: 'output'; path: string; } | { type: 'output-blob'; displayName: string; getBlob: () => Promise; width: number; height: number; sizeInBytes: number; }; export type CompositionManagerSetters = { registerComposition: >(comp: TComposition) => void; unregisterComposition: (name: string) => void; registerFolder: (name: string, parent: string | null, stack: string | null) => void; unregisterFolder: (name: string, parent: string | null) => void; setCanvasContent: React.Dispatch>; setCurrentAssetMetadata: React.Dispatch>; onlyRenderComposition: string | null; }; export type CompositionManagerContext = { compositions: AnyComposition[]; currentCompositionMetadata: BaseMetadata | null; currentAssetMetadata: AssetPreviewMetadata | null; folders: TFolder[]; canvasContent: CanvasContent | null; }; export declare const CompositionManager: React.Context; export declare const CompositionSetters: React.Context;