import { HttpClient } from '@angular/common/http'; import { ElementRef, EventEmitter, OnChanges, OnInit } from '@angular/core'; import { FileService } from '../../services/file.service'; import { IndicatorService } from '../../services/indicator.service'; import { ModalService } from '../../services/modal.service'; import * as i0 from "@angular/core"; export interface KeyUrlPairData { key: string; url: string; } export interface UrlBlobPairData { blob: Blob; url: string; } export interface CanvasOptionsData { width: number; height: number; useRoot?: string; } export interface StrokeOptionsData { lineCap?: CanvasLineCap; lineJoin?: CanvasLineJoin; strokeStyle?: string; lineWidth?: number; } export interface StrokeOptionsMenuData { txt: string; icon: string; option: StrokeOptionsData; } export interface ImagesUrlData { sketch?: string; actor?: string; background?: string; merged?: string; } export interface ImagesChangedData { sketch?: boolean; actor?: boolean; background?: boolean; } export interface PickedData { color: Uint8ClampedArray; hsv?: Array; hsl?: Array; x: number; y: number; } export interface SeedData { x: number; y: number; } export declare class CanvaseditorComponent implements OnInit, OnChanges { private modalSrv; fileService: FileService; private httpClient; private indicatorSrv; static MAX_UNDO_SIZE: number; static HUE_SIMILITUD_360: number; static SAT_MIN: number; static VAL_MIN: number; static MAPEO_MODES: any; options: CanvasOptionsData; defaultFileName: ImagesUrlData; defaultUrl: ImagesUrlData; url: ImagesUrlData | undefined; urlChange: EventEmitter; eventsContainerRef: ElementRef; canvasRef: ElementRef; private canvas; private context; canvasGreenRef: ElementRef; private canvasGreen; private contextGreen; canvasBackgroundRef: ElementRef; private canvasBackground; private contextBackground; canvasMergedRef: ElementRef; private canvasMerged; private contextMerged; threshold: number; isWorkingHard: boolean; mode: string; private isDragging; private pickedPoint; private clickX; private clickY; private clickDrag; private snapshots; private changes; menuSize: Array; menuColors: Array; lastStrokeColor: StrokeOptionsData; lastStrokeSize: StrokeOptionsData; lastTool: string; constructor(modalSrv: ModalService, fileService: FileService, httpClient: HttpClient, indicatorSrv: IndicatorService); ngOnInit(): void; noPropagar(e: any): void; askForImage(type: string): Promise; drawImageScaled(img: HTMLImageElement, ctx: CanvasRenderingContext2D, clear?: boolean): void; getImageElementFromUrl(url: string): Promise; localLoadImages(url: string, type: string): Promise; ngOnChanges(changes: any): void; private remoteUrlToLocalUrl; blob2Base64(blob: Blob): Promise; guardarInterno(type: string, blob: Blob | null, fileName: string, oldUrl?: string | null): Promise; getImageBlobFromCanvas(type: string): Promise; guardar(): Promise; mergeImages(lista: Array): Promise; useTool(tool: string): void; setStrokeSize(options: StrokeOptionsData): void; setStrokeColor(options: StrokeOptionsData): void; setStrokeOptions(options: StrokeOptionsData): void; private createUserEvents; private redraw; private addClick; clearCanvas(option: string): Promise; private getGlobalOffset; private getCoordinatesFromEvent; private startPaint; private pickColor; rgb2hsv(r: number, g: number, b: number): number[]; rgb2hsl(r: number, g: number, b: number): number[]; private floodfill; private pixelBelong; private doSeedPointRegionGrow; private pressEventHandler; private dragEventHandler; private releaseEventHandler; changeToMode(mode: string): void; private cancelEventHandler; private takeSnapshot; canUndo(): boolean; acceptImage(): void; cancelImage(): void; undoImage(first?: boolean): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }