Pattern.d.ts 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. import { ImageLike } from '../core/types';
  2. declare type ImagePatternRepeat = 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat';
  3. export interface PatternObjectBase {
  4. id?: number;
  5. type?: 'pattern';
  6. x?: number;
  7. y?: number;
  8. rotation?: number;
  9. scaleX?: number;
  10. scaleY?: number;
  11. }
  12. export interface ImagePatternObject extends PatternObjectBase {
  13. image: ImageLike | string;
  14. repeat?: ImagePatternRepeat;
  15. }
  16. export interface InnerImagePatternObject extends ImagePatternObject {
  17. __image?: ImageLike;
  18. }
  19. export interface SVGPatternObject extends PatternObjectBase {
  20. svgElement?: SVGElement;
  21. svgWidth?: number;
  22. svgHeight?: number;
  23. }
  24. export declare type PatternObject = ImagePatternObject | SVGPatternObject;
  25. declare class Pattern {
  26. type: 'pattern';
  27. image: ImageLike | string;
  28. svgElement: SVGElement;
  29. repeat: ImagePatternRepeat;
  30. x: number;
  31. y: number;
  32. rotation: number;
  33. scaleX: number;
  34. scaleY: number;
  35. constructor(image: ImageLike | string, repeat: ImagePatternRepeat);
  36. }
  37. export default Pattern;