import { EventEmitter } from '@angular/core';
import { PhotoGalleryConfig } from '../interfaces/config';
import { GalleryOptions } from '../interfaces/photoswipe';
import { LightboxService } from '../services/lightbox.service';
import * as i0 from "@angular/core";
export declare const DEFAULT_OPTIONS: {
    history: boolean;
    closeEl: boolean;
    captionEl: boolean;
    fullscreenEl: boolean;
    zoomEl: boolean;
    shareEl: boolean;
    counterEl: boolean;
    arrowEl: boolean;
    preloaderEl: boolean;
};
export declare class PhotoGalleryGroupDirective {
    private photoGalleryConfig;
    private lightboxService;
    options: GalleryOptions;
    onPhotoGalleryInit: EventEmitter<any>;
    onPhotoGalleryDestroy: EventEmitter<any>;
    private defaultOptions;
    private gallery;
    private galleryItems;
    private galleryItemIds;
    private galleryImages;
    constructor(photoGalleryConfig: PhotoGalleryConfig, lightboxService: LightboxService);
    registerGalleryItem(item: {
        id: string;
        element: HTMLElement;
        imageUrl: string;
        caption?: string;
    }): void;
    unregisterGalleryItem(id: string): void;
    openPhotoSwipe(id: string): Promise<void>;
    private getSlideDimensions;
    static ɵfac: i0.ɵɵFactoryDeclaration<PhotoGalleryGroupDirective, [{ optional: true; }, null]>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<PhotoGalleryGroupDirective, "[photoGalleryGroup]", never, { "options": { "alias": "photoGalleryGroup"; "required": false; }; }, { "onPhotoGalleryInit": "onPhotoGalleryInit"; "onPhotoGalleryDestroy": "onPhotoGalleryDestroy"; }, never, never, false, never>;
}
