| import { GradientObject } from './graphic/Gradient'; | 
| import { PatternObject } from './graphic/Pattern'; | 
| import { Dictionary } from './core/types'; | 
|   | 
| // interface PainterOption { | 
| //     width?: number | string  // Can be 10 / 10px / auto | 
| //     height?: number | string | 
| // } | 
|   | 
| export interface PainterBase { | 
|   | 
|     type: string | 
|   | 
|     // root will be undefined if ssr is true | 
|     root?: HTMLElement | 
|   | 
|     // If ssr only | 
|     ssrOnly?: boolean | 
|   | 
|     // constructor(dom: HTMLElement, storage: Storage, opts: PainterOption, id: number): void | 
|   | 
|     resize(width?: number | string, height?: number | string): void | 
|     refresh(): void | 
|     clear(): void | 
|   | 
|     // must be given if ssr is true. | 
|     renderToString?(): string; | 
|   | 
|     getType: () => string | 
|   | 
|     getWidth(): number | 
|     getHeight(): number | 
|     dispose(): void | 
|   | 
|     getViewportRoot: () => HTMLElement | 
|     getViewportRootOffset: () => {offsetLeft: number, offsetTop: number} | 
|   | 
|     refreshHover(): void | 
|   | 
|     configLayer(zlevel: number, config: Dictionary<any>): void | 
|     setBackgroundColor(backgroundColor: string | GradientObject | PatternObject): void | 
| } |