@kangwuyi/vue3-sketch-ruler
Version:
A sketch ruler for VueJS 3
109 lines (90 loc) • 2.95 kB
TypeScript
import { App } from 'vue';
import { ComponentOptionsMixin } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { ComputedRef } from 'vue';
import { DefineComponent } from 'vue';
import { ExtractPropTypes } from 'vue';
import { InjectionKey } from 'vue';
import { PropType } from 'vue';
import { PublicProps } from 'vue';
import { Ref } from 'vue';
declare const _default: {
install: (app: App) => void;
SketchRuler: DefineComponent<ExtractPropTypes< {
wdpRatio: NumberConstructor;
scaleFigure: NumberConstructor;
rect: PropType<IFRect>;
thick: NumberConstructor;
width: NumberConstructor;
height: NumberConstructor;
startX: NumberConstructor;
startY: NumberConstructor;
markLineList: PropType<IFLineListByProps[]>;
}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
onMarkLineList: (...args: any[]) => void;
}, string, PublicProps, Readonly<ExtractPropTypes< {
wdpRatio: NumberConstructor;
scaleFigure: NumberConstructor;
rect: PropType<IFRect>;
thick: NumberConstructor;
width: NumberConstructor;
height: NumberConstructor;
startX: NumberConstructor;
startY: NumberConstructor;
markLineList: PropType<IFLineListByProps[]>;
}>> & Readonly<{
onOnMarkLineList?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
};
export default _default;
export declare const DEFAULT_LINELIST: {
lineList: {
horizontal: number[];
vertical: number[];
};
updateLineList: () => void;
};
export declare const DEFAULT_RECT: {
x: number;
y: number;
width: number;
height: number;
};
export declare const DEFAULT_SCALE_FIGURE = 1;
export declare const DEFAULT_THEME: any;
export declare const DEFAULT_WDP_RATIO: number;
export declare enum ELineActionType {
DEL = "del",
ADD = "add",
UPDATE = "update"
}
export declare enum ELineDirectionType {
HORIZONTAL = "horizontal",
VERTICAL = "vertical"
}
export declare interface IFDrawRulerOption {
scale: number;
ratio: number;
width: number;
height: number;
}
export declare interface IFLineList {
horizontal: number[];
vertical: number[];
}
export declare interface IFLineListByProps {
type: ELineDirectionType;
value: number;
}
export declare interface IFRect {
x: number;
y: number;
width: number;
height: number;
}
export declare const lineListCbKey: InjectionKey<TUpdateLineList>;
export declare const rectKey: InjectionKey<ComputedRef<IFRect>>;
export declare const scaleFigureKey: InjectionKey<Ref<number>>;
export declare type TUpdateLineList = (f: ELineDirectionType, t: ELineActionType, i: number) => void;
export declare const wdpRatioKey: InjectionKey<Ref<number>>;
export { }