[d565449] | 1 | import { Canvas } from './Canvas.js';
|
---|
| 2 | import { Shape } from './Shape.js';
|
---|
| 3 | import { IRect } from './types.js';
|
---|
| 4 | import type { Node } from './Node.js';
|
---|
| 5 | declare var CONTEXT_PROPERTIES: readonly ["fillStyle", "strokeStyle", "shadowColor", "shadowBlur", "shadowOffsetX", "shadowOffsetY", "letterSpacing", "lineCap", "lineDashOffset", "lineJoin", "lineWidth", "miterLimit", "direction", "font", "textAlign", "textBaseline", "globalAlpha", "globalCompositeOperation", "imageSmoothingEnabled"];
|
---|
| 6 | interface ExtendedCanvasRenderingContext2D extends CanvasRenderingContext2D {
|
---|
| 7 | letterSpacing: string;
|
---|
| 8 | }
|
---|
| 9 | export declare class Context {
|
---|
| 10 | canvas: Canvas;
|
---|
| 11 | _context: CanvasRenderingContext2D;
|
---|
| 12 | traceArr: Array<String>;
|
---|
| 13 | constructor(canvas: Canvas);
|
---|
| 14 | fillShape(shape: Shape): void;
|
---|
| 15 | _fill(shape: Shape): void;
|
---|
| 16 | strokeShape(shape: Shape): void;
|
---|
| 17 | _stroke(shape: Shape): void;
|
---|
| 18 | fillStrokeShape(shape: Shape): void;
|
---|
| 19 | getTrace(relaxed?: boolean, rounded?: boolean): string;
|
---|
| 20 | clearTrace(): void;
|
---|
| 21 | _trace(str: any): void;
|
---|
| 22 | reset(): void;
|
---|
| 23 | getCanvas(): Canvas;
|
---|
| 24 | clear(bounds?: IRect): void;
|
---|
| 25 | _applyLineCap(shape: Shape): void;
|
---|
| 26 | _applyOpacity(shape: Node): void;
|
---|
| 27 | _applyLineJoin(shape: Shape): void;
|
---|
| 28 | setAttr(attr: string, val: any): void;
|
---|
| 29 | arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterClockwise?: boolean): void;
|
---|
| 30 | arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
|
---|
| 31 | beginPath(): void;
|
---|
| 32 | bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
|
---|
| 33 | clearRect(x: number, y: number, width: number, height: number): void;
|
---|
| 34 | clip(fillRule?: CanvasFillRule): void;
|
---|
| 35 | clip(path: Path2D, fillRule?: CanvasFillRule): void;
|
---|
| 36 | closePath(): void;
|
---|
| 37 | createImageData(width: any, height: any): ImageData | undefined;
|
---|
| 38 | createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
|
---|
| 39 | createPattern(image: CanvasImageSource, repetition: string | null): CanvasPattern | null;
|
---|
| 40 | createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
|
---|
| 41 | drawImage(image: CanvasImageSource, sx: number, sy: number, sWidth?: number, sHeight?: number, dx?: number, dy?: number, dWidth?: number, dHeight?: number): void;
|
---|
| 42 | ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
|
---|
| 43 | isPointInPath(x: number, y: number, path?: Path2D, fillRule?: CanvasFillRule): boolean;
|
---|
| 44 | fill(fillRule?: CanvasFillRule): void;
|
---|
| 45 | fill(path: Path2D, fillRule?: CanvasFillRule): void;
|
---|
| 46 | fillRect(x: number, y: number, width: number, height: number): void;
|
---|
| 47 | strokeRect(x: number, y: number, width: number, height: number): void;
|
---|
| 48 | fillText(text: string, x: number, y: number, maxWidth?: number): void;
|
---|
| 49 | measureText(text: string): TextMetrics;
|
---|
| 50 | getImageData(sx: number, sy: number, sw: number, sh: number): ImageData;
|
---|
| 51 | lineTo(x: number, y: number): void;
|
---|
| 52 | moveTo(x: number, y: number): void;
|
---|
| 53 | rect(x: number, y: number, width: number, height: number): void;
|
---|
| 54 | roundRect(x: number, y: number, width: number, height: number, radii: number | DOMPointInit | (number | DOMPointInit)[]): void;
|
---|
| 55 | putImageData(imageData: ImageData, dx: number, dy: number): void;
|
---|
| 56 | quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
|
---|
| 57 | restore(): void;
|
---|
| 58 | rotate(angle: number): void;
|
---|
| 59 | save(): void;
|
---|
| 60 | scale(x: number, y: number): void;
|
---|
| 61 | setLineDash(segments: number[]): void;
|
---|
| 62 | getLineDash(): number[];
|
---|
| 63 | setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
---|
| 64 | stroke(path2d?: Path2D): void;
|
---|
| 65 | strokeText(text: string, x: number, y: number, maxWidth?: number): void;
|
---|
| 66 | transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
---|
| 67 | translate(x: number, y: number): void;
|
---|
| 68 | _enableTrace(): void;
|
---|
| 69 | _applyGlobalCompositeOperation(node: any): void;
|
---|
| 70 | }
|
---|
| 71 | type CanvasContextProps = Pick<ExtendedCanvasRenderingContext2D, (typeof CONTEXT_PROPERTIES)[number]>;
|
---|
| 72 | export interface Context extends CanvasContextProps {
|
---|
| 73 | }
|
---|
| 74 | export declare class SceneContext extends Context {
|
---|
| 75 | constructor(canvas: Canvas, { willReadFrequently }?: {
|
---|
| 76 | willReadFrequently?: boolean | undefined;
|
---|
| 77 | });
|
---|
| 78 | _fillColor(shape: Shape): void;
|
---|
| 79 | _fillPattern(shape: Shape): void;
|
---|
| 80 | _fillLinearGradient(shape: Shape): void;
|
---|
| 81 | _fillRadialGradient(shape: Shape): void;
|
---|
| 82 | _fill(shape: any): void;
|
---|
| 83 | _strokeLinearGradient(shape: any): void;
|
---|
| 84 | _stroke(shape: any): void;
|
---|
| 85 | _applyShadow(shape: any): void;
|
---|
| 86 | }
|
---|
| 87 | export declare class HitContext extends Context {
|
---|
| 88 | constructor(canvas: Canvas);
|
---|
| 89 | _fill(shape: Shape): void;
|
---|
| 90 | strokeShape(shape: Shape): void;
|
---|
| 91 | _stroke(shape: any): void;
|
---|
| 92 | }
|
---|
| 93 | export {};
|
---|