import type React from 'react'; import type { AnyZodObject } from 'zod'; 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 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) => void; unregisterFolder: (name: string, parent: string | null) => void; setCanvasContent: React.Dispatch>; updateCompositionDefaultProps: (id: string, newDefaultProps: Record) => void; onlyRenderComposition: string | null; }; export type CompositionManagerContext = { compositions: AnyComposition[]; currentCompositionMetadata: BaseMetadata | null; folders: TFolder[]; canvasContent: CanvasContent | null; }; export declare const CompositionManager: React.Context; export declare const CompositionSetters: React.Context;