import { EmbedData, EmbedElement, BlockElement, Editor, EmbedOptions, EMBED_TYPE } from "../../core"; export default class Media { type: EMBED_TYPE; tagName: string; accept: string; icon: string; menuItemOrder: number; constructor(type: EMBED_TYPE, tagName: 'img' | 'audio' | 'video' | 'div', accept: string, icon: string, menuItemOrder: number); updateMedia(editor: Editor, media: T, data: EmbedData): void; updateMediaSrc(editor: Editor, media: T, src: string, data: EmbedData): void; createElement(editor: Editor, data: EmbedData): EmbedElement; saveData(editor: Editor, embed: EmbedElement): EmbedData; updateData(editor: Editor, embed: EmbedElement, data: EmbedData): void; notify(block: BlockElement, embed: EmbedElement, name: string, data: any): void; getMediaElement(block: BlockElement): T; getSrc(block: BlockElement): string; getUrl(block: BlockElement): string; handleFileChanged: (event: Event) => void; getMenuText(): string; getEmbedOptions(): EmbedOptions; isSupportMarkdown(): boolean; toMarkdown(block: BlockElement, embed: EmbedElement): string; }