@yuniit/element-tiptap
Version:
🌸A modern WYSIWYG rich-text editor using tiptap and Element Plus for Vue3
111 lines (110 loc) • 3.04 kB
TypeScript
import { ImageDisplay } from '../../utils/image';
declare const enum ResizeDirection {
TOP_LEFT = "tl",
TOP_RIGHT = "tr",
BOTTOM_LEFT = "bl",
BOTTOM_RIGHT = "br"
}
declare const _sfc_main: import("vue").DefineComponent<{
editor: {
type: import("vue").PropType<import("@tiptap/core").Editor>;
required: true;
};
node: {
type: import("vue").PropType<import("prosemirror-model").Node>;
required: true;
};
decorations: {
type: import("vue").PropType<import("@tiptap/vue-3").DecorationWithType[]>;
required: true;
};
selected: {
type: import("vue").PropType<boolean>;
required: true;
};
extension: {
type: import("vue").PropType<import("@tiptap/vue-3").Node<any, any>>;
required: true;
};
getPos: {
type: import("vue").PropType<() => number>;
required: true;
};
updateAttributes: {
type: import("vue").PropType<(attributes: Record<string, any>) => void>;
required: true;
};
deleteNode: {
type: import("vue").PropType<() => void>;
required: true;
};
}, unknown, {
maxSize: {
width: number;
height: number;
};
isDragging: boolean;
originalSize: {
width: number;
height: number;
};
resizeDirections: ResizeDirection[];
resizing: boolean;
resizerState: {
x: number;
y: number;
w: number;
h: number;
dir: string;
};
}, {
src(): string;
width(): number;
height(): number;
display(): ImageDisplay;
margin(): string;
imageViewClass(): string[];
}, {
startDragging(): void;
selectImage(): void;
getMaxSize(): void;
onMouseDown(e: MouseEvent, dir: ResizeDirection): void;
onMouseMove(e: MouseEvent): void;
onMouseUp(e: MouseEvent): void;
onEvents(): void;
offEvents(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
editor: {
type: import("vue").PropType<import("@tiptap/core").Editor>;
required: true;
};
node: {
type: import("vue").PropType<import("prosemirror-model").Node>;
required: true;
};
decorations: {
type: import("vue").PropType<import("@tiptap/vue-3").DecorationWithType[]>;
required: true;
};
selected: {
type: import("vue").PropType<boolean>;
required: true;
};
extension: {
type: import("vue").PropType<import("@tiptap/vue-3").Node<any, any>>;
required: true;
};
getPos: {
type: import("vue").PropType<() => number>;
required: true;
};
updateAttributes: {
type: import("vue").PropType<(attributes: Record<string, any>) => void>;
required: true;
};
deleteNode: {
type: import("vue").PropType<() => void>;
required: true;
};
}>>, {}, {}>;
export default _sfc_main;