| import { ImageLike } from '../core/types'; | 
| import { SVGVNode } from '../svg/core'; | 
| declare type ImagePatternRepeat = 'repeat' | 'repeat-x' | 'repeat-y' | 'no-repeat'; | 
| export interface PatternObjectBase { | 
|     id?: number; | 
|     type?: 'pattern'; | 
|     x?: number; | 
|     y?: number; | 
|     rotation?: number; | 
|     scaleX?: number; | 
|     scaleY?: number; | 
| } | 
| export interface ImagePatternObject extends PatternObjectBase { | 
|     image: ImageLike | string; | 
|     repeat?: ImagePatternRepeat; | 
|     imageWidth?: number; | 
|     imageHeight?: number; | 
| } | 
| export interface InnerImagePatternObject extends ImagePatternObject { | 
|     __image?: ImageLike; | 
| } | 
| export interface SVGPatternObject extends PatternObjectBase { | 
|     svgElement?: SVGVNode; | 
|     svgWidth?: number; | 
|     svgHeight?: number; | 
| } | 
| export declare type PatternObject = ImagePatternObject | SVGPatternObject; | 
| declare class Pattern { | 
|     type: 'pattern'; | 
|     image: ImageLike | string; | 
|     svgElement: SVGElement | string; | 
|     repeat: ImagePatternRepeat; | 
|     x: number; | 
|     y: number; | 
|     rotation: number; | 
|     scaleX: number; | 
|     scaleY: number; | 
|     constructor(image: ImageLike | string, repeat: ImagePatternRepeat); | 
| } | 
| export default Pattern; |