UNPKG

vue-devui

Version:

DevUI components based on Vite and Vue3

83 lines (82 loc) 1.93 kB
import { ExtractPropTypes, PropType, Ref } from "vue"; export declare type Mode = 'normal' | 'diff' | 'review'; export declare type Theme = 'light' | 'dark'; export interface Decoration { lineNumber: number; icon?: string; customClasses?: string; glyphClassName?: string; } export interface Comment { lineNumber: number; isExpanded: boolean; domNode?: HTMLElement; heightInPx?: number; allowEditorOverflow?: boolean; offsetLeft?: number; } export declare const codeEditorProps: { modelValue: { type: StringConstructor; default: string; }; mode: { type: PropType<Mode>; default: string; }; originalText: { type: StringConstructor; default: string; }; theme: { type: PropType<Theme>; default: string; }; autoHeight: { type: BooleanConstructor; default: boolean; }; refreshAll: { type: BooleanConstructor; default: boolean; }; offsetLeft: { type: NumberConstructor; }; addCommentIcon: { type: StringConstructor; default: string; }; expandCommentIcon: { type: StringConstructor; default: string; }; options: { type: ObjectConstructor; default: () => {}; }; mouseTargetTypes: { type: PropType<number[]>; default: () => number[]; }; editorDecorations: { type: PropType<Decoration[]>; default: () => never[]; }; comments: { type: PropType<Comment[]>; default: () => never[]; }; }; export declare type CodeEditorProps = ExtractPropTypes<typeof codeEditorProps>; export interface UseCodeEditor { editorEl: Ref; } export interface PositionInfo { top?: number; height?: number; } export interface LayoutInfo extends PositionInfo { minimapWidth?: number; offsetLeft?: number; }