export interface WatermarkOptions { /** watermark text content */ content?: string | string[]; /** * When the watermark is drawn, the rotation angle, in `°`. @default `-22` */ rotate?: number; /** * High-definition print image source, for high-definition screen display, * it is recommended to use 2x or 3x image, and priority to use image rendering watermark. */ image?: string; /** Horizontal spacing between watermarks. @default `212` */ gapX?: number; /** vertical spacing between watermarks. @default `222` */ gapY?: number; /** width of watermark. @default `120` */ width?: number; /** height of watermark @default `64` */ height?: number; /** * The vertical offset of the watermark drawn on the canvas. * Normally, the watermark is drawn in the middle position, ie `offsetTop = gapY / 2` */ offsetLeft?: number; /** * The horizontal offset of the watermark drawn on the canvas, under normal circumstances, * the watermark is drawn in the middle position, ie `offsetTop = gapX / 2` */ offsetTop?: number; /** text size @default `16` */ fontSize?: number; /** text family @default `sans-serif` */ fontFamily?: string; /** text weight @default `normal` */ fontWeight?: 'normal' | 'light' | 'weight' | number; /** text color @default `rgba(0,0,0,.15)` */ fontColor?: string; /** text style */ fontStyle?: CanvasFillStrokeStyles['fillStyle']; } export default class Watermark { option: WatermarkOptions; constructor(options: WatermarkOptions); create(): Promise; }