8dfad8c30f36a6ef6475c6fcaa204f129b911e391035f798c987482c3aabe6d3e42ba9db80575c50df78167f0dc2371aa9edea1d62172a931fb0f92f45282b 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. export declare type Dictionary<T> = {
  2. [key: string]: T;
  3. };
  4. export declare type ArrayLike<T> = {
  5. [key: number]: T;
  6. length: number;
  7. };
  8. export declare type ImageLike = HTMLImageElement | HTMLCanvasElement | HTMLVideoElement;
  9. export declare type TextVerticalAlign = 'top' | 'middle' | 'bottom';
  10. export declare type TextAlign = 'left' | 'center' | 'right';
  11. export declare type FontWeight = 'normal' | 'bold' | 'bolder' | 'lighter' | number;
  12. export declare type FontStyle = 'normal' | 'italic' | 'oblique';
  13. export declare type BuiltinTextPosition = 'left' | 'right' | 'top' | 'bottom' | 'inside' | 'insideLeft' | 'insideRight' | 'insideTop' | 'insideBottom' | 'insideTopLeft' | 'insideTopRight' | 'insideBottomLeft' | 'insideBottomRight';
  14. export declare type WXCanvasRenderingContext = CanvasRenderingContext2D & {
  15. draw: () => void;
  16. };
  17. export declare type ZRCanvasRenderingContext = CanvasRenderingContext2D & {
  18. dpr: number;
  19. __attrCachedBy: boolean | number;
  20. };
  21. declare type ZREventProperties = {
  22. zrX: number;
  23. zrY: number;
  24. zrDelta: number;
  25. zrEventControl: 'no_globalout' | 'only_globalout';
  26. zrByTouch: boolean;
  27. };
  28. export declare type ZRRawMouseEvent = MouseEvent & ZREventProperties;
  29. export declare type ZRRawTouchEvent = TouchEvent & ZREventProperties;
  30. export declare type ZRRawPointerEvent = TouchEvent & ZREventProperties;
  31. export declare type ZRRawEvent = ZRRawMouseEvent | ZRRawTouchEvent | ZRRawPointerEvent;
  32. export declare type ZRPinchEvent = ZRRawEvent & {
  33. pinchScale: number;
  34. pinchX: number;
  35. pinchY: number;
  36. gestureEvent: string;
  37. };
  38. export declare type ElementEventName = 'click' | 'dblclick' | 'mousewheel' | 'mouseout' | 'mouseover' | 'mouseup' | 'mousedown' | 'mousemove' | 'contextmenu' | 'drag' | 'dragstart' | 'dragend' | 'dragenter' | 'dragleave' | 'dragover' | 'drop' | 'globalout';
  39. export declare type ElementEventNameWithOn = 'onclick' | 'ondblclick' | 'onmousewheel' | 'onmouseout' | 'onmouseup' | 'onmousedown' | 'onmousemove' | 'oncontextmenu' | 'ondrag' | 'ondragstart' | 'ondragend' | 'ondragenter' | 'ondragleave' | 'ondragover' | 'ondrop';
  40. export declare type RenderedEvent = {
  41. elapsedTime: number;
  42. };
  43. export declare type PropType<TObj, TProp extends keyof TObj> = TObj[TProp];
  44. export declare type AllPropTypes<T> = PropType<T, keyof T>;
  45. export declare type FunctionPropertyNames<T> = {
  46. [K in keyof T]: T[K] extends Function ? K : never;
  47. }[keyof T];
  48. export declare type MapToType<T extends Dictionary<any>, S> = {
  49. [P in keyof T]: T[P] extends Dictionary<any> ? MapToType<T[P], S> : S;
  50. };
  51. export declare type KeyOfDistributive<T> = T extends unknown ? keyof T : never;
  52. export declare type WithThisType<Func extends (...args: any) => any, This> = (this: This, ...args: Parameters<Func>) => ReturnType<Func>;
  53. export {};