zyy-free-layout
Version:
[vue3+ts]自由拖动布局
139 lines (138 loc) • 4.41 kB
TypeScript
import { VNode, PropType, Ref } from "vue";
import { FreeLayoutService } from "@/service";
import { Widget } from "@/service/widget";
import { DragService } from "@/service/dragService";
import "../style.less";
declare const _default: import("vue").DefineComponent<{
widgets: {
type: PropType<Widget[]>;
default: () => never[];
};
renderWidget: {
type: PropType<(widget: Widget) => VNode>;
default: () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>;
};
dragService: {
type: PropType<DragService>;
};
width: {
type: NumberConstructor;
};
height: {
type: NumberConstructor;
};
background: {
type: StringConstructor;
default: string;
};
disableDrag: {
type: BooleanConstructor;
default: boolean;
};
disableResize: {
type: BooleanConstructor;
default: boolean;
};
selectedArea: {
type: PropType<{
disabled?: boolean | undefined;
border?: string | undefined;
background?: string | undefined;
}>;
default: () => {
disabled: boolean;
border: string;
background: string;
};
};
widgetClass: {
type: PropType<(widget: Widget) => string[]>;
};
widgetStyle: {
type: PropType<(widget: Widget) => Record<string, keyof any>>;
};
}, {
service: FreeLayoutService;
container: Ref<HTMLElement | null>;
renderNewWidget: () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>;
renderWidgets: () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>[];
renderSelectedArea: () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("createWidget" | "attached" | "drag-start" | "moving" | "moved" | "delete" | "widgetClick")[], "createWidget" | "attached" | "drag-start" | "moving" | "moved" | "delete" | "widgetClick", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
widgets: {
type: PropType<Widget[]>;
default: () => never[];
};
renderWidget: {
type: PropType<(widget: Widget) => VNode>;
default: () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>;
};
dragService: {
type: PropType<DragService>;
};
width: {
type: NumberConstructor;
};
height: {
type: NumberConstructor;
};
background: {
type: StringConstructor;
default: string;
};
disableDrag: {
type: BooleanConstructor;
default: boolean;
};
disableResize: {
type: BooleanConstructor;
default: boolean;
};
selectedArea: {
type: PropType<{
disabled?: boolean | undefined;
border?: string | undefined;
background?: string | undefined;
}>;
default: () => {
disabled: boolean;
border: string;
background: string;
};
};
widgetClass: {
type: PropType<(widget: Widget) => string[]>;
};
widgetStyle: {
type: PropType<(widget: Widget) => Record<string, keyof any>>;
};
}>> & {
onCreateWidget?: ((...args: any[]) => any) | undefined;
onAttached?: ((...args: any[]) => any) | undefined;
"onDrag-start"?: ((...args: any[]) => any) | undefined;
onMoving?: ((...args: any[]) => any) | undefined;
onMoved?: ((...args: any[]) => any) | undefined;
onDelete?: ((...args: any[]) => any) | undefined;
onWidgetClick?: ((...args: any[]) => any) | undefined;
}, {
widgets: Widget[];
renderWidget: (widget: Widget) => VNode;
background: string;
disableDrag: boolean;
disableResize: boolean;
selectedArea: {
disabled?: boolean | undefined;
border?: string | undefined;
background?: string | undefined;
};
}, {}>;
export default _default;