Skip to content

Commit 4441cc8

Browse files
committed
typings: Fixed typings for Node.js
1 parent 306efd2 commit 4441cc8

File tree

2 files changed

+18
-67
lines changed

2 files changed

+18
-67
lines changed

src/canvas.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -839,7 +839,7 @@ class CanvasConstructor {
839839
/**
840840
* Creates a pattern using the specified image. It repeats the source in the directions specified by the repetition
841841
* argument.
842-
* @param {Image} imageOrBuffer A Canvas Image to be used as the image to repeat.
842+
* @param {Image|Buffer} imageOrBuffer A Canvas Image to be used as the image to repeat.
843843
* @param {('repeat'|'repeat-x'|'repeat-y'|'no-repeat')} repetition The repeat mode.
844844
* @param {Function} callback The callback to take the createPattern
845845
* @returns {this}
@@ -854,7 +854,7 @@ class CanvasConstructor {
854854
/**
855855
* Creates a pattern using the specified image. It repeats the source in the directions specified by the repetition
856856
* argument, and prints it.
857-
* @param {Image} imageOrBuffer A Canvas Image to be used as the image to repeat.
857+
* @param {Image|Buffer} imageOrBuffer A Canvas Image to be used as the image to repeat.
858858
* @param {('repeat'|'repeat-x'|'repeat-y'|'no-repeat')} repetition The repeat mode.
859859
* @returns {this}
860860
* @chainable

typings/index.d.ts

Lines changed: 16 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
/// <reference types="node" />
2+
/// <reference lib="esnext" />
3+
14
declare module 'canvas-constructor' {
25

36
export function invert(canvas: Canvas): Canvas;
@@ -10,6 +13,9 @@ declare module 'canvas-constructor' {
1013
export function blur(canvas: Canvas, amount: number): Canvas;
1114
export function convolute(canvas: Canvas, weights: number[]): Canvas;
1215

16+
type Image = HTMLImageElement;
17+
type BufferOrImage = Image | Buffer;
18+
1319
export class Canvas {
1420

1521
public constructor(dWidth: number, dHeigth: number, type?: CanvasType);
@@ -20,17 +26,17 @@ declare module 'canvas-constructor' {
2026
public readonly lineDash: number[];
2127

2228
public addBeveledRect(dx: number, dy: number, dWidth: number, dHeigth: number, radius?: number): this;
23-
public addBeveledImage(buffer: Image | Buffer, dx: number, dy: number, dWidth: number, dHeight: number, radius?: BeveledRadiusOptions | number, restore?: boolean): this;
29+
public addBeveledImage(bufferOrImage: BufferOrImage, dx: number, dy: number, dWidth: number, dHeight: number, radius?: BeveledRadiusOptions | number, restore?: boolean): this;
2430
public addCircle(dx: number, dy: number, radius: number): this;
25-
public addCircularImage(buffer: Image | Buffer, dx: number, dy: number, radius: number, restore?: boolean): this;
26-
public addImage(buffer: Image | Buffer, dx: number, dy: number, options?: AddImageOptions): this;
27-
public addImage(buffer: Image | Buffer, dx: number, dy: number, dWidth: number, dHeight: number, options?: AddImageOptions): this;
28-
public addImage(buffer: Image | Buffer, sx: number, sy: number, sWidth: number, sHeigth: number, dx: number, dy: number, dWidth: number, dHeigth: number, options?: AddImageOptions): this;
31+
public addCircularImage(bufferOrImage: BufferOrImage, dx: number, dy: number, radius: number, restore?: boolean): this;
32+
public addImage(bufferOrImage: BufferOrImage, dx: number, dy: number, options?: AddImageOptions): this;
33+
public addImage(bufferOrImage: BufferOrImage, dx: number, dy: number, dWidth: number, dHeight: number, options?: AddImageOptions): this;
34+
public addImage(bufferOrImage: BufferOrImage, sx: number, sy: number, sWidth: number, sHeigth: number, dx: number, dy: number, dWidth: number, dHeigth: number, options?: AddImageOptions): this;
2935
public addMultilineText(text: string, dx: number, dy: number, maxWidth: number, lineHeight: number): this;
3036
public addRect(dx: number, dy: number, dWidth: number, dHeigth: number): this;
3137
public addResponsiveText(text: string, dx: number, dy: number, maxWidth: number): this;
32-
public addRoundImage(buffer: Image | Buffer, dx: number, dy: number, dWidth: number, dHeight: number, radius?: number, restore?: boolean): this;
33-
public addRoundImage(buffer: Image | Buffer, dx: number, dy: number, dWidth: number, dHeight: number, restore?: boolean): this;
38+
public addRoundImage(bufferOrImage: BufferOrImage, dx: number, dy: number, dWidth: number, dHeight: number, radius?: number, restore?: boolean): this;
39+
public addRoundImage(bufferOrImage: BufferOrImage, dx: number, dy: number, dWidth: number, dHeight: number, restore?: boolean): this;
3440
public addStrokeRect(dx: number, dy: number, dWidth: number, dHeigth: number): this;
3541
public addStrokeText(text: string, dx: number, dy: number): this;
3642
public addText(text: string, dx: number, dy: number, maxWidth?: number): this;
@@ -52,7 +58,7 @@ declare module 'canvas-constructor' {
5258
public createBeveledPath(dx: number, dy: number, dWidth: number, dHeigth: number, radius: BeveledRadiusOptions | number): this;
5359
public createEllipse(dx: number, dy: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, anticlockwise?: boolean): this;
5460
public createLinearGradient(x0: number, y0: number, x1: number, y1: number, steps?: GradientStep[]): CanvasGradient;
55-
public createPattern(image: Image, repetition: PatternRepetition): this;
61+
public createPattern(bufferOrImage: BufferOrImage, repetition: PatternRepetition): this;
5662
public createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number, steps?: GradientStep[]): CanvasGradient;
5763
public createRectClip(dx: number, dy: number, dWidth: number, dHeigth: number): this;
5864
public createRectPath(dx: number, dy: number, dWidth: number, dHeigth: number): this;
@@ -110,9 +116,9 @@ declare module 'canvas-constructor' {
110116
public toDataURLAsync(type: string): Promise<string>;
111117
public translate(dx: number, dy: number): this;
112118

113-
private _resolveImage(imageOrBuffer: Image | Buffer): Image;
119+
private _resolveImage(imageOrBuffer: BufferOrImage): Image;
114120

115-
public static getCanvas(): NodeCanvas;
121+
public static getCanvas(): any;
116122
public static registerFont(path: string, family: string | FontFaceType): typeof Canvas;
117123
}
118124

@@ -224,59 +230,4 @@ declare module 'canvas-constructor' {
224230
addColorStop: (offset: number, color: string) => void;
225231
};
226232

227-
type CanvasPattern = {
228-
setTransform: (matrix: SVGMatrix) => void;
229-
};
230-
231-
// node-canvas related typings.
232-
type Image = (dWidth?: number, dHeigth?: number) => HTMLImageElement;
233-
type NodeCanvas = {
234-
backends: Object;
235-
cairoVersion: string;
236-
Canvas: NodeCanvas;
237-
Context2d: typeof CanvasRenderingContext2D;
238-
createCanvas: (dWidth: number, dHeigth: number, type: CanvasType) => any;
239-
createImageData: (array: any[], dWidth: number, dHeigth: number) => any;
240-
freetypeVersion: string;
241-
gifVersion: string;
242-
Image: typeof Image;
243-
ImageData: typeof ImageData;
244-
JPEGStream: CanvasJPEGStream;
245-
jpegVersion: string;
246-
loadImage: (src: any) => Promise<any>;
247-
parseFont: (str: string) => ParsedFont;
248-
PDFStream: CanvasPDFStream;
249-
PNGStream: CanvasPNGStream;
250-
registerFont: (src: string, fontFace: FontFaceType) => any;
251-
version: string;
252-
};
253-
254-
class CanvasJPEGStream {
255-
public constructor(canvas: any, options: any);
256-
public canvas: any;
257-
public options: any;
258-
private _read(): void;
259-
}
260-
261-
class CanvasPDFStream {
262-
public constructor(canvas: any);
263-
public canvas: any;
264-
private _read(): void;
265-
}
266-
267-
class CanvasPNGStream {
268-
public constructor(canvas: any, options: any);
269-
public canvas: any;
270-
public options: any;
271-
private _read(): void;
272-
}
273-
274-
type ParsedFont = {
275-
weight: number;
276-
style: string;
277-
size: number;
278-
unit: string;
279-
family: string;
280-
};
281-
282233
}

0 commit comments

Comments
 (0)