import { EventEmitter, ElementRef, NgZone, OnInit, SimpleChanges } from "@angular/core"; import { ImageSource, PinturaEditorOptions, PinturaEditor, PinturaEditorHistoryAPI, PinturaDefaultImageReaderResult, PinturaDefaultImageWriterResult, PinturaReadState, PinturaWriteState, PinturaImageState, PinturaNode, Sticker, PinturaEditorStatus, Size, Rect, Shape, Color, ColorMatrix, ConvolutionMatrix, ShapeRectangle, PinturaMetadata, OptionGroup, CropPresetOption, StickerGroup, Effect, SizeOption, LocaleString, MarkupEditorToolStyleDefaults, MarkupEditorShapeStyleControlDefaults, Vector, Filter } from "@pqina/pintura"; import * as i0 from "@angular/core"; interface UtilTab { id: string; selected: boolean; icon: string; label: string; } export declare class PinturaEditorAbstractComponent implements OnInit { protected element: ElementRef; protected zone: NgZone; private unsubs; editor: PinturaEditor | undefined; options?: PinturaEditorOptions; id?: string; class?: string; animations?: "auto" | "never" | "always"; src?: ImageSource; util?: string; utils?: string[]; disabled?: boolean; status?: PinturaEditorStatus; elasticityMultiplier?: number; layoutDirectionPreference?: "auto" | "horizontal" | "vertical"; layoutVerticalUtilsPreference?: "left" | "right"; layoutHorizontalUtilsPreference?: "bottom" | "top"; layoutVerticalControlGroupsPreference?: "bottom" | "top"; layoutVerticalControlTabsPreference?: "bottom" | "top"; layoutVerticalToolbarPreference?: "bottom" | "top"; imageSourceToImageData?: (src: any) => Promise; previewImageData?: ImageBitmap | ImageData | HTMLCanvasElement; previewImageDataMaxSize?: Size; previewUpscale?: boolean; previewPad?: boolean; previewMaskOpacity?: number; shapePreprocessor?: any; enableCanvasAlpha?: boolean; enableButtonClose?: boolean; enableButtonExport?: boolean; enableButtonResetHistory?: boolean; enableButtonRevert?: boolean; enableNavigateHistory?: boolean; enableToolbar?: boolean; enableUtils?: boolean; enableDropImage?: boolean; enablePasteImage?: boolean; enableZoom?: boolean; enableZoomControls?: boolean; enablePan?: boolean; /** * Set to false to disable limiting pan input to the centered image bounds */ enablePanLimit?: boolean; /** * Gutter scalar to add around the pan limit bounds, value between 0 and 1, 0 no gutter, 1 gutter size of centered image */ panLimitGutterScalar?: number; /** * When set to `true` fixes scroll direction on MacOS, it's incorrectly inverted by default, defaults to `false` */ fixScrollDirection?: boolean; zoomLevel?: number | undefined | null; zoomPresetOptions?: number[]; zoomAdjustStep?: number; zoomAdjustFactor?: number; zoomAdjustWheelFactor?: number; enablePanInput?: boolean; enableZoomInput?: boolean; enableMultiSelect?: boolean; willSetMediaInitialTimeOffset?: (duration: number, trim: [number, number][]) => number; muteAudio?: boolean; /** CSP style nonce added to dynamic style tags */ csp?: { styleNonce?: string; }; handleEvent?: (type: string, detail: any) => void; willRequestResource?: (url: string) => boolean; willClose?: () => Promise; willRevert?: () => Promise; willProcessImage?: () => Promise; willRenderCanvas?: (shapes: { decorationShapes: Shape[]; annotationShapes: Shape[]; interfaceShapes: Shape[]; }, state: any) => { decorationShapes: Shape[]; annotationShapes: Shape[]; interfaceShapes: Shape[]; }; willSetHistoryInitialState?: (initialState: any) => any; willRenderToolbar?: (nodes: PinturaNode[], env: any, redraw: () => void) => PinturaNode[]; willRenderUtilTabs?: (tabs: UtilTab[], env: any, redraw: () => void) => UtilTab[] | PinturaNode[]; beforeSelectShape?: (current: Shape | undefined, target: Shape) => boolean; beforeDeselectShape?: (current: Shape, target: Shape | undefined) => boolean; beforeAddShape?: (shape: Shape) => boolean; beforeRemoveShape?: (shape: Shape) => boolean; beforeUpdateShape?: (shape: Shape, props: any, context: Rect) => Shape; willRenderShapeControls?: (nodes: PinturaNode[], shapeId: string) => PinturaNode[]; willRenderShapePresetToolbar?: (nodes: PinturaNode[], addPreset: (sticker: Sticker) => void, env: any, redraw: () => void) => PinturaNode[]; locale: any; imageReader: any[]; imageWriter?: any[]; imageOrienter?: any; imageScrambler?: any; imageBackgroundColor?: Color; imageBackgroundImage?: ImageSource; imageColorMatrix?: ColorMatrix; imageConvolutionMatrix?: ConvolutionMatrix; imageCrop?: Rect; imageCropAspectRatio?: number | undefined; imageCropLimitToImage?: boolean; imageCropMaxSize?: Size; imageCropMinSize?: Size; imageRedaction?: ShapeRectangle[]; imageAnnotation?: Shape[]; imageDecoration?: Shape[]; imageFlipX?: boolean; imageFlipY?: boolean; imageGamma?: number; imageNoise?: number; imageRotation?: number; imageVignette?: number; imageTargetSize?: Size; imageFrame?: string | { [key: string]: any; frameStyle: string; }; imageMetadata?: PinturaMetadata; imageState?: PinturaImageState; imageDuration?: number; imageTrim?: undefined | [number, number][]; imageVolume?: undefined | number; imageCurrentTime?: number; get history(): PinturaEditorHistoryAPI | undefined; get imageSize(): Size | undefined; get imageAspectRatio(): number | undefined; get imageCropSize(): Size | undefined; get imageCropRectAspectRatio(): number | undefined; get imageFile(): File | undefined; get imageLoadState(): any; get imageProcessState(): any; get imageRotationRange(): [number, number] | undefined; enableSelectToolToAddShape?: boolean; enableTapToAddText?: boolean; markupEditorToolbar?: [string, LocaleString, any][]; markupEditorToolStyles?: MarkupEditorToolStyleDefaults; markupEditorShapeStyleControls?: MarkupEditorShapeStyleControlDefaults; markupEditorToolSelectRadius?: number; markupEditorTextInputMode?: "modal" | "inline"; markupEditorZoomLevels?: number[]; markupEditorZoomAdjustStep?: number; markupEditorZoomAdjustFactor?: number; markupEditorZoomAdjustWheelFactor?: number; markupEditorZoomLevel?: number; markupEditorToolRetainStyles?: boolean; markupEditorWillStartInteraction?: (point: Vector, image: Rect) => boolean; /** Distance from snap edge to start snapping, defaults to `0` */ markupEditorSnapThreshold?: number; /** Should we snap to parent context edges and center, defaults to `true`, only active if snap threshold is above `0` */ markupEditorSnapToContext?: boolean; /** Grid cell size, defaults to `0` */ markupEditorGridSize?: number; cropAutoCenterImageSelectionTimeout?: undefined | number; cropWillRenderImageSelectionGuides?: undefined | ((interaction: string, interactionFraction: number) => { rows: number; cols: number; opacity: number; }); cropEnableButtonFlipHorizontal?: boolean; cropEnableButtonFlipVertical?: boolean; cropEnableButtonRotateLeft?: boolean; cropEnableButtonRotateRight?: boolean; cropEnableButtonToggleCropLimit?: boolean; cropEnableCenterImageSelection?: boolean; cropEnableImageSelection?: boolean; cropEnableInfoIndicator?: boolean; cropEnableLimitWheelInputToCropSelection?: boolean; cropEnableRotationInput?: boolean; cropEnableSelectPreset?: boolean; cropEnableZoomInput?: boolean; cropEnableZoomMatchImageAspectRatio?: boolean; cropEnableZoomTowardsWheelPosition?: boolean; cropEnableZoomAutoHide?: boolean; cropImageSelectionCornerStyle?: undefined | "hook" | "round" | "invisible"; cropSelectPresetOptions?: OptionGroup[] | CropPresetOption[]; cropSelectPresetFilter?: "landscape" | "portrait" | false; cropEnableRotateMatchImageAspectRatio?: "never" | "custom" | "always"; cropMinimizeToolbar?: "never" | "auto" | "always"; cropWillRenderTools?: (nodes: PinturaNode[], env: any, redraw: () => void) => PinturaNode[]; cropMaskOpacity?: number; annotateActiveTool?: string; annotateEnableButtonFlipVertical?: boolean; annotatePresets?: Sticker[] | StickerGroup[]; annotateGridSize?: number; annotateSnapToContext?: boolean; annotateWillRenderShapeStyleControls?: (nodes: PinturaNode[], env: any, redraw: () => void) => PinturaNode[]; decorateActiveTool?: string; decorateEnableButtonFlipVertical?: boolean; decoratePresets?: Sticker[] | StickerGroup[]; decorateGridSize?: number; decorateSnapToContext?: boolean; decorateWillRenderShapeStyleControls?: (nodes: PinturaNode[], env: any, redraw: () => void) => PinturaNode[]; filterFunctions?: { [key: string]: Filter; }; filterOptions?: any; finetuneControlConfiguration?: { [key: string]: Effect; }; finetuneOptions?: [string | undefined, LocaleString]; resizeMaxSize?: Size; resizeMinSize?: Size; resizeSizePresetOptions?: OptionGroup[] | SizeOption[]; resizeWidthPresetOptions?: OptionGroup[] | SizeOption[]; resizeHeightPresetOptions?: OptionGroup[] | SizeOption[]; resizeWillRenderFooter?: (nodes: PinturaNode[], env: any, redraw: () => void) => PinturaNode[]; frameStyles?: { [key: string]: { shape: { frameStyle: string; [key: string]: any; }; thumb: string; }; }; frameOptions?: [string | undefined, LocaleString][]; fillOptions?: (number[] | string)[]; stickers?: Sticker[] | StickerGroup[]; stickerStickToImage?: boolean; stickersEnableButtonFlipVertical?: boolean; retouchTools?: [string, LocaleString, any][] | [string, [string, LocaleString, any][]][]; retouchToolShapes?: MarkupEditorToolStyleDefaults; retouchShapeControls?: MarkupEditorShapeStyleControlDefaults; retouchEnableViewTool?: boolean; retouchEnableMoveTool?: boolean; retouchWillRenderShapeControls?: (nodes: PinturaNode[], shapeId: string) => PinturaNode[]; retouchWillRenderShapeStyleControls?: (nodes: PinturaNode[], env: any, redraw: () => void) => PinturaNode[]; init: EventEmitter; loadstart: EventEmitter; loadabort: EventEmitter; loaderror: EventEmitter; loadprogress: EventEmitter; load: EventEmitter; processstart: EventEmitter; processabort: EventEmitter; processerror: EventEmitter; processprogress: EventEmitter; process: EventEmitter; update: EventEmitter; undo: EventEmitter; redo: EventEmitter; revert: EventEmitter; writehistory: EventEmitter; destroy: EventEmitter; show: EventEmitter; hide: EventEmitter; close: EventEmitter; ready: EventEmitter; loadpreview: EventEmitter; addshape: EventEmitter; selectshape: EventEmitter; updateshape: EventEmitter; removeshape: EventEmitter; markuptap: EventEmitter<{ target?: Shape; position: Vector; }>; markupzoom: EventEmitter; markuppan: EventEmitter; zoom: EventEmitter; pan: EventEmitter; selectstyle: EventEmitter<{ [key: string]: unknown; }>; selectutil: EventEmitter; selectcontrol: EventEmitter; loadImage(src: ImageSource, options: PinturaEditorOptions): Promise | undefined; editImage(src: ImageSource, options: PinturaEditorOptions): Promise | undefined; updateImage(src: ImageSource): Promise | undefined; updateImagePreview(src: ImageSource): void | undefined; abortLoadImage(): void | undefined; removeImage(): void | undefined; processImage(src: ImageSource, options: PinturaEditorOptions): Promise | undefined; abortProcessImage(): void | undefined; closeEditor(): void | undefined; constructor(element: ElementRef, zone: NgZone); private routeEvent; initEditor(element: HTMLElement, props: PinturaEditorOptions): PinturaEditor; private _initialChanges; ngAfterViewInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; ngOnInit(): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "ng-component", never, { "options": "options"; "id": "id"; "class": "class"; "animations": "animations"; "src": "src"; "util": "util"; "utils": "utils"; "disabled": "disabled"; "status": "status"; "elasticityMultiplier": "elasticityMultiplier"; "layoutDirectionPreference": "layoutDirectionPreference"; "layoutVerticalUtilsPreference": "layoutVerticalUtilsPreference"; "layoutHorizontalUtilsPreference": "layoutHorizontalUtilsPreference"; "layoutVerticalControlGroupsPreference": "layoutVerticalControlGroupsPreference"; "layoutVerticalControlTabsPreference": "layoutVerticalControlTabsPreference"; "layoutVerticalToolbarPreference": "layoutVerticalToolbarPreference"; "imageSourceToImageData": "imageSourceToImageData"; "previewImageData": "previewImageData"; "previewImageDataMaxSize": "previewImageDataMaxSize"; "previewUpscale": "previewUpscale"; "previewPad": "previewPad"; "previewMaskOpacity": "previewMaskOpacity"; "shapePreprocessor": "shapePreprocessor"; "enableCanvasAlpha": "enableCanvasAlpha"; "enableButtonClose": "enableButtonClose"; "enableButtonExport": "enableButtonExport"; "enableButtonResetHistory": "enableButtonResetHistory"; "enableButtonRevert": "enableButtonRevert"; "enableNavigateHistory": "enableNavigateHistory"; "enableToolbar": "enableToolbar"; "enableUtils": "enableUtils"; "enableDropImage": "enableDropImage"; "enablePasteImage": "enablePasteImage"; "enableZoom": "enableZoom"; "enableZoomControls": "enableZoomControls"; "enablePan": "enablePan"; "enablePanLimit": "enablePanLimit"; "panLimitGutterScalar": "panLimitGutterScalar"; "fixScrollDirection": "fixScrollDirection"; "zoomLevel": "zoomLevel"; "zoomPresetOptions": "zoomPresetOptions"; "zoomAdjustStep": "zoomAdjustStep"; "zoomAdjustFactor": "zoomAdjustFactor"; "zoomAdjustWheelFactor": "zoomAdjustWheelFactor"; "enablePanInput": "enablePanInput"; "enableZoomInput": "enableZoomInput"; "enableMultiSelect": "enableMultiSelect"; "willSetMediaInitialTimeOffset": "willSetMediaInitialTimeOffset"; "muteAudio": "muteAudio"; "csp": "csp"; "handleEvent": "handleEvent"; "willRequestResource": "willRequestResource"; "willClose": "willClose"; "willRevert": "willRevert"; "willProcessImage": "willProcessImage"; "willRenderCanvas": "willRenderCanvas"; "willSetHistoryInitialState": "willSetHistoryInitialState"; "willRenderToolbar": "willRenderToolbar"; "willRenderUtilTabs": "willRenderUtilTabs"; "beforeSelectShape": "beforeSelectShape"; "beforeDeselectShape": "beforeDeselectShape"; "beforeAddShape": "beforeAddShape"; "beforeRemoveShape": "beforeRemoveShape"; "beforeUpdateShape": "beforeUpdateShape"; "willRenderShapeControls": "willRenderShapeControls"; "willRenderShapePresetToolbar": "willRenderShapePresetToolbar"; "locale": "locale"; "imageReader": "imageReader"; "imageWriter": "imageWriter"; "imageOrienter": "imageOrienter"; "imageScrambler": "imageScrambler"; "imageBackgroundColor": "imageBackgroundColor"; "imageBackgroundImage": "imageBackgroundImage"; "imageColorMatrix": "imageColorMatrix"; "imageConvolutionMatrix": "imageConvolutionMatrix"; "imageCrop": "imageCrop"; "imageCropAspectRatio": "imageCropAspectRatio"; "imageCropLimitToImage": "imageCropLimitToImage"; "imageCropMaxSize": "imageCropMaxSize"; "imageCropMinSize": "imageCropMinSize"; "imageRedaction": "imageRedaction"; "imageAnnotation": "imageAnnotation"; "imageDecoration": "imageDecoration"; "imageFlipX": "imageFlipX"; "imageFlipY": "imageFlipY"; "imageGamma": "imageGamma"; "imageNoise": "imageNoise"; "imageRotation": "imageRotation"; "imageVignette": "imageVignette"; "imageTargetSize": "imageTargetSize"; "imageFrame": "imageFrame"; "imageMetadata": "imageMetadata"; "imageState": "imageState"; "imageDuration": "imageDuration"; "imageTrim": "imageTrim"; "imageVolume": "imageVolume"; "imageCurrentTime": "imageCurrentTime"; "enableSelectToolToAddShape": "enableSelectToolToAddShape"; "enableTapToAddText": "enableTapToAddText"; "markupEditorToolbar": "markupEditorToolbar"; "markupEditorToolStyles": "markupEditorToolStyles"; "markupEditorShapeStyleControls": "markupEditorShapeStyleControls"; "markupEditorToolSelectRadius": "markupEditorToolSelectRadius"; "markupEditorTextInputMode": "markupEditorTextInputMode"; "markupEditorZoomLevels": "markupEditorZoomLevels"; "markupEditorZoomAdjustStep": "markupEditorZoomAdjustStep"; "markupEditorZoomAdjustFactor": "markupEditorZoomAdjustFactor"; "markupEditorZoomAdjustWheelFactor": "markupEditorZoomAdjustWheelFactor"; "markupEditorZoomLevel": "markupEditorZoomLevel"; "markupEditorToolRetainStyles": "markupEditorToolRetainStyles"; "markupEditorWillStartInteraction": "markupEditorWillStartInteraction"; "markupEditorSnapThreshold": "markupEditorSnapThreshold"; "markupEditorSnapToContext": "markupEditorSnapToContext"; "markupEditorGridSize": "markupEditorGridSize"; "cropAutoCenterImageSelectionTimeout": "cropAutoCenterImageSelectionTimeout"; "cropWillRenderImageSelectionGuides": "cropWillRenderImageSelectionGuides"; "cropEnableButtonFlipHorizontal": "cropEnableButtonFlipHorizontal"; "cropEnableButtonFlipVertical": "cropEnableButtonFlipVertical"; "cropEnableButtonRotateLeft": "cropEnableButtonRotateLeft"; "cropEnableButtonRotateRight": "cropEnableButtonRotateRight"; "cropEnableButtonToggleCropLimit": "cropEnableButtonToggleCropLimit"; "cropEnableCenterImageSelection": "cropEnableCenterImageSelection"; "cropEnableImageSelection": "cropEnableImageSelection"; "cropEnableInfoIndicator": "cropEnableInfoIndicator"; "cropEnableLimitWheelInputToCropSelection": "cropEnableLimitWheelInputToCropSelection"; "cropEnableRotationInput": "cropEnableRotationInput"; "cropEnableSelectPreset": "cropEnableSelectPreset"; "cropEnableZoomInput": "cropEnableZoomInput"; "cropEnableZoomMatchImageAspectRatio": "cropEnableZoomMatchImageAspectRatio"; "cropEnableZoomTowardsWheelPosition": "cropEnableZoomTowardsWheelPosition"; "cropEnableZoomAutoHide": "cropEnableZoomAutoHide"; "cropImageSelectionCornerStyle": "cropImageSelectionCornerStyle"; "cropSelectPresetOptions": "cropSelectPresetOptions"; "cropSelectPresetFilter": "cropSelectPresetFilter"; "cropEnableRotateMatchImageAspectRatio": "cropEnableRotateMatchImageAspectRatio"; "cropMinimizeToolbar": "cropMinimizeToolbar"; "cropWillRenderTools": "cropWillRenderTools"; "cropMaskOpacity": "cropMaskOpacity"; "annotateActiveTool": "annotateActiveTool"; "annotateEnableButtonFlipVertical": "annotateEnableButtonFlipVertical"; "annotatePresets": "annotatePresets"; "annotateGridSize": "annotateGridSize"; "annotateSnapToContext": "annotateSnapToContext"; "annotateWillRenderShapeStyleControls": "annotateWillRenderShapeStyleControls"; "decorateActiveTool": "decorateActiveTool"; "decorateEnableButtonFlipVertical": "decorateEnableButtonFlipVertical"; "decoratePresets": "decoratePresets"; "decorateGridSize": "decorateGridSize"; "decorateSnapToContext": "decorateSnapToContext"; "decorateWillRenderShapeStyleControls": "decorateWillRenderShapeStyleControls"; "filterFunctions": "filterFunctions"; "filterOptions": "filterOptions"; "finetuneControlConfiguration": "finetuneControlConfiguration"; "finetuneOptions": "finetuneOptions"; "resizeMaxSize": "resizeMaxSize"; "resizeMinSize": "resizeMinSize"; "resizeSizePresetOptions": "resizeSizePresetOptions"; "resizeWidthPresetOptions": "resizeWidthPresetOptions"; "resizeHeightPresetOptions": "resizeHeightPresetOptions"; "resizeWillRenderFooter": "resizeWillRenderFooter"; "frameStyles": "frameStyles"; "frameOptions": "frameOptions"; "fillOptions": "fillOptions"; "stickers": "stickers"; "stickerStickToImage": "stickerStickToImage"; "stickersEnableButtonFlipVertical": "stickersEnableButtonFlipVertical"; "retouchTools": "retouchTools"; "retouchToolShapes": "retouchToolShapes"; "retouchShapeControls": "retouchShapeControls"; "retouchEnableViewTool": "retouchEnableViewTool"; "retouchEnableMoveTool": "retouchEnableMoveTool"; "retouchWillRenderShapeControls": "retouchWillRenderShapeControls"; "retouchWillRenderShapeStyleControls": "retouchWillRenderShapeStyleControls"; }, { "init": "init"; "loadstart": "loadstart"; "loadabort": "loadabort"; "loaderror": "loaderror"; "loadprogress": "loadprogress"; "load": "load"; "processstart": "processstart"; "processabort": "processabort"; "processerror": "processerror"; "processprogress": "processprogress"; "process": "process"; "update": "update"; "undo": "undo"; "redo": "redo"; "revert": "revert"; "writehistory": "writehistory"; "destroy": "destroy"; "show": "show"; "hide": "hide"; "close": "close"; "ready": "ready"; "loadpreview": "loadpreview"; "addshape": "addshape"; "selectshape": "selectshape"; "updateshape": "updateshape"; "removeshape": "removeshape"; "markuptap": "markuptap"; "markupzoom": "markupzoom"; "markuppan": "markuppan"; "zoom": "zoom"; "pan": "pan"; "selectstyle": "selectstyle"; "selectutil": "selectutil"; "selectcontrol": "selectcontrol"; }, never, never>; } export {};