import { ElementRef } from '@angular/core';
import { ImageMetadata } from '../../models/viewer.interfaces';
import { AbstractViewerComponent } from '../abstract/abstract.viewer.component';
import { ActionButton } from './image.interface';
import { TranslateService } from '@ngx-translate/core';
import * as i0 from "@angular/core";
export declare class ImageComponent extends AbstractViewerComponent<ImageMetadata> {
    #private;
    readonly translate: TranslateService;
    image: import("@angular/core").Signal<ElementRef<HTMLImageElement>>;
    actionButton: import("@angular/core").Signal<readonly ElementRef<HTMLButtonElement>[]>;
    imageSrc: import("@angular/core").Signal<string>;
    zoom: import("@angular/core").WritableSignal<number>;
    startX: import("@angular/core").WritableSignal<number>;
    startY: import("@angular/core").WritableSignal<number>;
    rotation: import("@angular/core").WritableSignal<number>;
    initialX: import("@angular/core").WritableSignal<number>;
    initialY: import("@angular/core").WritableSignal<number>;
    isLoading: import("@angular/core").WritableSignal<boolean>;
    isDragging: import("@angular/core").WritableSignal<boolean>;
    isImageFocused: import("@angular/core").WritableSignal<boolean>;
    actionButtons: import("@angular/core").WritableSignal<ActionButton[]>;
    keyDown(event: KeyboardEvent): void;
    onHostKeyDown(event: MouseEvent): void;
    navigate(event: KeyboardEvent, index: number): void;
    reset(): void;
    rotate(dir: number): void;
    zoomIn(): void;
    zoomOut(): void;
    fakeDrag(key: string): void;
    keybordAction(key: string): void;
    startDrag(event: MouseEvent | TouchEvent): void;
    drag(event: MouseEvent | TouchEvent): void;
    endDrag(): void;
    onKeyDown($event: KeyboardEvent): void;
    onScroll(event: WheelEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ImageComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ImageComponent, "yuv-image", never, {}, {}, never, never, true, never>;
}
