import { IPointerEvent, IDragEvent, IDropEvent, ISwipeEvent, IMoveEvent, IZoomEvent, IRotateEvent, IImageEvent, ILeaferInputData, IFrameInputData, IBoxInputData, IGroupInputData, IRectInputData, IEllipseInputData, IPolygonInputData, IStarInputData, ILineInputData, IPathInputData, IPenInputData, IImageInputData, ICanvasInputData, ITextInputData, IAppInputData } from '@leafer-ui/interface'; import { LeaferEvent, ResizeEvent, RenderEvent, LayoutEvent, WatchEvent, ChildEvent, PropertyEvent } from 'leafer-ui'; import { DefineComponent, ComputedOptions, MethodOptions, ComponentOptionsMixin, EmitsOptions, ExtractPropTypes, VNodeProps, AllowedComponentProps, ComponentCustomProps } from 'vue'; interface LeaferBaseEvent { /** * @description IPointerEvent * @param e */ onPointerDown: (e: IPointerEvent) => void; onPointerMove: (e: IPointerEvent) => void; onPointerUp: (e: IPointerEvent) => void; onPointerOver: (e: IPointerEvent) => void; onPointerOut: (e: IPointerEvent) => void; onPointerEnter: (e: IPointerEvent) => void; onPointerLeave: (e: IPointerEvent) => void; onTap: (e: IPointerEvent) => void; onDouble_tap: (e: IPointerEvent) => void; onLong_press: (e: IPointerEvent) => void; onLong_tap: (e: IPointerEvent) => void; /** * * @deprecated use Tap instead of click */ onClick: (e: IPointerEvent) => void; /** * * @deprecated use onDouble_tap instead */ onDouble_click: (e: IPointerEvent) => void; /** * @description IDragEvent * @param e */ onDrag: (e: IDragEvent) => void; onDragStart: (e: IDragEvent) => void; onDragEnd: (e: IDragEvent) => void; onDragOver: (e: IDragEvent) => void; onDragOut: (e: IDragEvent) => void; onDragEnter: (e: IDragEvent) => void; onDragLeave: (e: IDragEvent) => void; /** * @description DropEvent * @param e */ onDrop: (e: IDropEvent) => void; /** * @description ISwipeEvent * @param e */ onSwipeLeft: (e: ISwipeEvent) => void; onSwipeRight: (e: ISwipeEvent) => void; onSwipeUp: (e: ISwipeEvent) => void; onSwipeDown: (e: ISwipeEvent) => void; /** * @description IMoveEvent * @param e */ onMoveStart: (e: IMoveEvent) => void; onMove: (e: IMoveEvent) => void; onMoveEnd: (e: IMoveEvent) => void; /** * @description IZoomEvent * @param e */ onZoomStart: (e: IZoomEvent) => void; onZoom: (e: IZoomEvent) => void; onZoomEnd: (e: IZoomEvent) => void; /** * @description IRotateEvent * @param e */ onRotateStart: (e: IRotateEvent) => void; onRotate: (e: IRotateEvent) => void; onRotateEnd: (e: IRotateEvent) => void; /** * @description IImageEvent * @param e */ onImageload: (e: IImageEvent) => void; onImageLoaded: (e: IImageEvent) => void; onImageError: (e: IImageEvent) => void; } interface _LeaferEvent { onLeaferStart: (e: LeaferEvent) => void; onLeaferBefore_ready: (e: LeaferEvent) => void; onLeaferReady: (e: LeaferEvent) => void; onLeaferAfter_ready: (e: LeaferEvent) => void; onLeaferView_ready: (e: LeaferEvent) => void; onLeaferStop: (e: LeaferEvent) => void; onLeaferRestart: (e: LeaferEvent) => void; onLeaferEnd: (e: LeaferEvent) => void; onResize: (e: ResizeEvent) => void; onRenderRequest: (e: RenderEvent) => void; onRenderStart: (e: RenderEvent) => void; onRenderBefore: (e: RenderEvent) => void; onRender: (e: RenderEvent) => void; onRenderAgain: (e: RenderEvent) => void; onRenderEnd: (e: RenderEvent) => void; onLayoutRequest: (e: LayoutEvent) => void; onLayoutStart: (e: LayoutEvent) => void; onLayoutBefore: (e: LayoutEvent) => void; onLayout: (e: LayoutEvent) => void; onLayoutAfter: (e: LayoutEvent) => void; onLayoutAgain: (e: LayoutEvent) => void; onLayoutEnd: (e: LayoutEvent) => void; onWatchRequest: (e: WatchEvent) => void; onWatchData: (e: WatchEvent) => void; onChildAdd: (e: ChildEvent) => void; onChildRemove: (e: ChildEvent) => void; onPropertyChange: (e: PropertyEvent) => void; } type PublicProps = VNodeProps & AllowedComponentProps & ComponentCustomProps; type _AnyRecord = Record; type LeaferVueComponent

= DefineComponent>>; interface LeaferVueComponents { /** * Create a Leafer app * *** * [Document](https://leafer-vue.netlify.app/guide/components/app/leafer.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Leafer: LeaferVueComponent; /** * Create a frame, Similar to pages in HTML5 * *** * [Document](https://leafer-vue.netlify.app/guide/components/container/frame.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Frame: LeaferVueComponent; /** * Create a box, Similar to the DIV in HTML5, it can be nested continuously * *** * [Document](https://leafer-vue.netlify.app/guide/components/container/box.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Box: LeaferVueComponent; /** * Create a group, Similar to the DIV in HTML5, it has no style of its own and can be nested continuously * *** * [Document](https://leafer-vue.netlify.app/guide/components/container/group.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Group: LeaferVueComponent; /** * Create a rectangle * *** * [Document](https://leafer-vue.netlify.app/guide/components/shape/rect.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Rect: LeaferVueComponent; /** * Create an ellipse * *** * [Document](https://leafer-vue.netlify.app/guide/components/shape/ellipse.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Ellipse: LeaferVueComponent; /** * Create a polygon * *** * [Document](https://leafer-vue.netlify.app/guide/components/shape/polygon.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Polygon: LeaferVueComponent; /** * Create a star * *** * [Document](https://leafer-vue.netlify.app/guide/components/shape/star.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Star: LeaferVueComponent; /** * Create a line * *** * [Document](https://leafer-vue.netlify.app/guide/components/shape/line.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Line: LeaferVueComponent; /** * Create a path, can draw a graphic of any shape. * *** * [Document](https://leafer-vue.netlify.app/guide/components/path/path.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Path: LeaferVueComponent; /** * Create a pen, can draw a graphic of any shape. * *** * [Document](https://leafer-vue.netlify.app/guide/components/path/pen.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Pen: LeaferVueComponent; /** * Image object, all graphics support displaying pictures through *fill* * *** * [Document](https://leafer-vue.netlify.app/guide/components/image/image.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Image: LeaferVueComponent; /** * Canvas object that can freely draw, manipulate pixels, or directly draw other graphics onto the Canvas * *** * [Document](https://leafer-vue.netlify.app/guide/components/image/canvas.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Canvas: LeaferVueComponent; /** * Draw text. The text display effect is basically the same as that of HTML5 * *** * [Document](https://leafer-vue.netlify.app/guide/components/text/text.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Text: LeaferVueComponent; /** * Custom component, must have a *is* property * *** * [Document](https://leafer-vue.netlify.app/guide/custom/custom.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ Custom: LeaferVueComponent<{ is: new () => unknown; }>; } declare module 'vue' { interface GlobalComponents extends LeaferVueComponents { } } declare module '@vue/runtime-core' { interface GlobalComponents extends LeaferVueComponents { } } declare module '@vue/runtime-dom' { interface GlobalComponents extends LeaferVueComponents { } } /** * The root component used to create a Leafer application. All Leafer elements must be child components of it. * *** * [Document](https://leafer-vue.netlify.app/guide/components/app/leaferApp.html) * | * [Playground](https://leafer-vue.netlify.app/play/) */ declare const LeaferApp: LeaferVueComponent; export { LeaferApp };