107 lines
2.7 KiB
TypeScript
107 lines
2.7 KiB
TypeScript
import 'vue-router'
|
|
import { Component } from 'vue'
|
|
|
|
declare module 'vue-router' {
|
|
interface RouteMeta {
|
|
/**
|
|
* 路由参数
|
|
*/
|
|
routeParams?: {
|
|
[key: string]: 'String' | 'StringArray' | 'Number' | 'NumberArray' | 'Array' | 'Hash' | 'Boolean'
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
declare module 'vue' {
|
|
interface VNode {
|
|
__isWrapped__: boolean
|
|
}
|
|
}
|
|
|
|
declare module 'vue-drag-resize/src' {
|
|
interface VueDragResizeProps {
|
|
// 组件的宽度
|
|
width?: number | string;
|
|
// 组件的高度
|
|
height?: number | string;
|
|
// 组件的最小宽度
|
|
minWidth?: number;
|
|
// 组件的最小高度
|
|
minHeight?: number;
|
|
// 组件的最大宽度
|
|
maxWidth?: number;
|
|
// 组件的最大高度
|
|
maxHeight?: number;
|
|
// 组件的 x 坐标
|
|
x?: number;
|
|
// 组件的 y 坐标
|
|
y?: number;
|
|
// 是否可以拖拽
|
|
draggable?: boolean;
|
|
// 是否可以调整大小
|
|
resizable?: boolean;
|
|
// 拖拽时的边界限制
|
|
parent?: boolean;
|
|
// 调整大小时的边界限制
|
|
bounds?: string;
|
|
// 拖拽时的样式类名
|
|
dragClass?: string;
|
|
// 调整大小时的样式类名
|
|
resizeClass?: string;
|
|
// 禁用组件的某个角的调整大小功能
|
|
disable?: {
|
|
tl?: boolean;
|
|
tm?: boolean;
|
|
tr?: boolean;
|
|
mr?: boolean;
|
|
br?: boolean;
|
|
bm?: boolean;
|
|
bl?: boolean;
|
|
ml?: boolean;
|
|
};
|
|
// 拖拽时是否锁定 x 轴
|
|
lockAspectRatio?: boolean;
|
|
// 拖拽时是否锁定 x 轴
|
|
lockX?: boolean;
|
|
// 拖拽时是否锁定 y 轴
|
|
lockY?: boolean;
|
|
// 拖拽时的网格大小
|
|
grid?: [ number, number ];
|
|
// 拖拽开始时的回调函数
|
|
onDragStart?: (e: MouseEvent | TouchEvent, x: number, y: number) => void;
|
|
// 拖拽过程中的回调函数
|
|
onDrag?: (e: MouseEvent | TouchEvent, x: number, y: number) => void;
|
|
// 拖拽结束时的回调函数
|
|
onDragStop?: (e: MouseEvent | TouchEvent, x: number, y: number) => void;
|
|
// 调整大小开始时的回调函数
|
|
onResizeStart?: (
|
|
e: MouseEvent | TouchEvent,
|
|
direction: string,
|
|
refToElement: HTMLElement,
|
|
deltaX: number,
|
|
deltaY: number
|
|
) => void;
|
|
// 调整大小过程中的回调函数
|
|
onResize?: (
|
|
e: MouseEvent | TouchEvent,
|
|
direction: string,
|
|
refToElement: HTMLElement,
|
|
deltaX: number,
|
|
deltaY: number
|
|
) => void;
|
|
// 调整大小结束时的回调函数
|
|
onResizeStop?: (
|
|
e: MouseEvent | TouchEvent,
|
|
direction: string,
|
|
refToElement: HTMLElement,
|
|
deltaX: number,
|
|
deltaY: number
|
|
) => void;
|
|
}
|
|
|
|
const VueDragResize: Component<VueDragResizeProps>
|
|
export default VueDragResize
|
|
}
|
|
|