import { AudioLayer } from '../../engine/layer/AudioLayer/index.js'; import { CaptionLayer } from '../../engine/layer/CaptionLayer/index.js'; import { NameSpaceEngine } from '../../engine/utils/EngineManager/helper.js'; import { ElementType } from '../../engine/layer/type.js'; import { EffectLayer } from '../../engine/layer/EffectLayer/index.js'; import { ImageLayer } from '../../engine/layer/ImageLayer/index.js'; import { StickerLayer } from '../../engine/layer/StickerLayer/index.js'; import { TextLayer } from '../../engine/layer/TextLayer/index.js'; import { VideoLayer } from '../../engine/layer/VideoLayer/index.js'; import { GroupChildNode, CMTrackChildNode, CMTrackNode, AudioChildNode, VideoChildNode, TextChildNode, CaptionChildNode, ImageChildNode, StickerChildNode, EffectChildNode, TextTrackNode, AudioTrackNode, VideoTrackNode, CaptionTrackNode, ImageTrackNode, SchemaNode } from '../../engine/schema.type.js'; import { EventData, StageInitPayload } from '../../event/types.js'; import { Transform, Track, TrackElement, TextElement, AudioElement, VideoElement, CaptionElement, ImageElement, StickerElement, EffectElement } from '../../state/types.js'; declare class BaseEngineManager { protected getEngine(): NameSpaceEngine; protected getElement: (engine: NameSpaceEngine, uuid: string) => ElementType | null; protected _getGroupSchema(uuid: string, direction?: 'column' | 'row'): GroupChildNode; protected getShiftRatio(shift: Transform['translate']): { x: number; y: number; z: number; } | undefined; protected _getCommonTrackSchema: (track: Track) => CMTrackChildNode; protected _getTrackSchema: (track: Track) => CMTrackNode; protected _getElementSchema: (element: TrackElement, track: Track) => AudioChildNode | VideoChildNode | TextChildNode | CaptionChildNode | ImageChildNode | StickerChildNode | EffectChildNode | null; protected _getTextTrackSchema(track: Track): TextTrackNode; protected _getTextElementSchema(element: TextElement, track: Track): TextChildNode; protected _getAudioTrackSchema(track: Track): AudioTrackNode; protected _getAudioElementSchema(element: AudioElement, track: Track): AudioChildNode; protected _getVideoTrackSchema(track: Track): VideoTrackNode; protected _getVideoElementSchema(element: VideoElement, track: Track): VideoChildNode; protected _getCaptionTrackSchema(track: Track): CaptionTrackNode; protected _getCaptionElementSchema(element: CaptionElement, track: Track): CaptionChildNode; protected _getImageTrackSchema(track: Track): ImageTrackNode; protected _getImageElementSchema(element: ImageElement, track: Track): ImageChildNode; protected _getStickerTrackSchema(track: Track): { type: string; props: { uuid: string; layerId: number; trackType: string; }; children: never[]; }; protected _getStickerElementSchema(element: StickerElement, track: Track): StickerChildNode; protected _getEffectTrackSchema(track: Track): { type: string; props: { uuid: string; layerId: number; trackType: string; }; children: never[]; }; protected _getEffectElementSchema(element: EffectElement, track: Track): EffectChildNode; protected _createLayer(engine: NameSpaceEngine, element: TrackElement, track: Track): Promise; protected _createAudioLayer(engine: NameSpaceEngine, element: AudioElement, track: Track): Promise; protected _createVideoLayer(engine: NameSpaceEngine, element: VideoElement, track: Track): Promise; protected _createTextLayer(engine: NameSpaceEngine, element: TextElement, track: Track): Promise; protected _createCaptionLayer(engine: NameSpaceEngine, element: CaptionElement, track: Track): Promise; protected _createImageLayer(engine: NameSpaceEngine, element: ImageElement, track: Track): Promise; protected _createStickerLayer(engine: NameSpaceEngine, element: StickerElement, track: Track): Promise; protected _createEffectLayer(engine: NameSpaceEngine, element: EffectElement, track: Track): Promise; private getFontStyle; private getPosition; } declare class InitHelper extends BaseEngineManager { engine: NameSpaceEngine | null; initEngine(data: EventData): Promise; initPayloadToSchema(stage: StageInitPayload): Promise; } export { BaseEngineManager, InitHelper };