You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.1 KiB
TypeScript

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
}