UNPKG

canvasimo

Version:

An HTML5 canvas drawing library, with 150+ useful methods, jQuery-like fluent interface, and cross-browser compatibility enhancements.

91 lines (90 loc) 4.05 kB
import Canvasimo from './'; export declare type Segments = number[]; export declare type Points = Array<{ x: number; y: number; }> | Array<[number, number]> | number[]; export declare type GlobalCompositeOperation = 'source-over' | 'source-in' | 'source-out' | 'source-atop' | 'destination-over' | 'destination-in' | 'destination-out' | 'destination-atop' | 'lighter' | 'copy' | 'xor' | 'multiply' | 'screen' | 'overlay' | 'darken' | 'lighten' | 'color-dodge' | 'color-burn' | 'hard-light' | 'soft-light' | 'difference' | 'exclusion' | 'hue' | 'saturation' | 'color' | 'luminosity'; export declare type TextBaseline = 'top' | 'hanging' | 'middle' | 'alphabetic' | 'ideographic' | 'bottom'; export declare type TextAlign = 'left' | 'right' | 'center' | 'start' | 'end'; export declare type LineJoin = 'bevel' | 'round' | 'miter'; export declare type LineCap = 'butt' | 'round' | 'square'; export declare type FillRule = 'nonzero' | 'evenodd'; export declare type WordBreak = 'normal' | 'break-word' | 'break-all'; export declare type BooleanFalsy = boolean | undefined | null; export declare type MaxWidth = number | undefined | null; export declare type ImageLike = HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | ImageBitmap; export declare type CanvasContextAttributes = CanvasRenderingContext2DSettings | WebGLContextAttributes; export declare type CanvasContext = CanvasRenderingContext2D | WebGLRenderingContext; export declare type FillOrStrokeStyle = string | CanvasGradient | CanvasPattern; export declare type Size = { width: number; height: number; }; export declare type LimitedTextMetrics = { width: number; }; export interface SetSize { (size: Size): Canvasimo; (width: number, height: number): Canvasimo; } export interface DrawImage { (image: ImageLike, dstX: number, dstY: number): Canvasimo; (image: ImageLike, dstX: number, dstY: number, dstW: number, dstH: number): Canvasimo; (image: ImageLike, srcX: number, srcY: number, srcW: number, srcH: number, dstX: number, dstY: number, dstW: number, dstH: number): Canvasimo; } export interface CreateImageData { (width: number, height: number): ImageData; (ImageData: ImageData): ImageData; } export interface PutImageData { (imagedata: ImageData, dx: number, dy: number): Canvasimo; (imagedata: ImageData, dx: number, dy: number, dirtyX: number, dirtyY: number, dirtyWidth: number, dirtyHeight: number): Canvasimo; } export interface Fill { (color?: string): Canvasimo; (fillRule?: FillRule): Canvasimo; (color: string, fillRule: FillRule): Canvasimo; } export interface Stroke { (color?: string): Canvasimo; (path?: Path2D): Canvasimo; (color: string, path: Path2D): Canvasimo; } export interface GetAngle { (x1: number, y1: number, x2: number, y2: number): number; (x1: number, y1: number, x2: number, y2: number, x3: number, y3: number): number; } export interface Repeat { (end: number, callback: (i: number) => any): Canvasimo; (start: number, end: number, callback: (i: number) => any): Canvasimo; (start: number, end: number, step: number, callback: (i: number) => any): Canvasimo; } export interface ForEach { (str: string, callback: (value: string, index: number) => any): Canvasimo; (obj: any[], callback: (value: any, index: number) => any): Canvasimo; (obj: { [i: string]: any; }, callback: (value: any, key: string) => any): Canvasimo; } export interface StoredContextValues { globalAlpha: number; globalCompositeOperation: GlobalCompositeOperation; strokeStyle: FillOrStrokeStyle; fillStyle: FillOrStrokeStyle; shadowOffsetX: number; shadowOffsetY: number; shadowBlur: number; shadowColor: string; lineWidth: number; lineCap: LineCap; lineJoin: LineJoin; miterLimit: number; lineDashOffset: number; font: string; textAlign: TextAlign; textBaseline: TextBaseline; imageSmoothingEnabled: boolean; imageSmoothingQuality: ImageSmoothingQuality; lineDash: number[]; }