import { AfterViewInit } from '@angular/core';
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { FormControl } from '@angular/forms';
import { ImageUplaodService } from '../../services/image-upload-service.service';
import { MatDialogRef } from '@angular/material/dialog';
import { MatSnackBar } from '@angular/material/snack-bar';
import { ElementServiceService } from '../editor-service.service';
import * as i0 from "@angular/core";
export declare class MediaSelectorComponent implements AfterViewInit {
    private imageUploadService;
    _dialogRef: MatDialogRef<MediaSelectorComponent>;
    private dialogData;
    private snackBar;
    private editorService;
    viewport: CdkVirtualScrollViewport;
    tabs: string[];
    activeTab: string;
    searchControl: FormControl<string | null>;
    pageNo: number;
    isLoading: boolean;
    unsplashImages: any[];
    imageLibrary: any[];
    imageSize: number;
    multiple: boolean;
    selectedImage: Map<string, any>;
    buttonLoader: boolean;
    constructor(imageUploadService: ImageUplaodService, _dialogRef: MatDialogRef<MediaSelectorComponent>, dialogData: any, snackBar: MatSnackBar, editorService: ElementServiceService);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    getImageLibrary(): void;
    /** ✅ Search API with debounce to reduce unnecessary calls */
    searchUnsplashImages(): void;
    /** ✅ Infinite Scroll */
    setupInfiniteScroll(): void;
    /** ✅ Load More Images */
    loadMoreImages(): void;
    selectUnsplashImage(image: any): void;
    uploadImageFromSystem(event: any): void;
    deleteSystemImage(imageId: string): void;
    selectFromImageLibrary(image: any): void;
    uploadImage(): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<MediaSelectorComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MediaSelectorComponent, "simpo-media-selector", never, {}, {}, never, never, true, never>;
}
