interface InitialViewUsingSearchQuery {
    searchQuery: string;
}
interface InitialViewUsingFolderPath {
    folderPath: string;
}
interface InitialViewUsingFileId {
    fileId: string;
}
interface InitialViewUsingCollection {
    collection: {
        id?: string;
    };
}
interface InitialViewUsingFileType {
    fileType: FileTypeValue;
}
type InitialView = InitialViewUsingSearchQuery | InitialViewUsingFolderPath | InitialViewUsingFileId | InitialViewUsingCollection | InitialViewUsingFileType;
interface ToolbarOptions {
    showCloseButton?: boolean;
    showInsertButton?: boolean;
}
interface MLSettings {
    initialView?: InitialView;
    multiple?: boolean;
    maxFiles?: number;
    toolbar?: ToolbarOptions;
    queryParams?: Record<string, string | number | boolean>;
    loginViaSSO?: boolean;
    widgetImagekitId?: string;
}
interface MediaLibraryWidgetOptions {
    className?: string;
    container: string | HTMLElement;
    dimensions?: {
        height: string;
        width: string;
    };
    view?: "modal" | "inline";
    renderOpenButton?: boolean;
    mlSettings?: MLSettings;
}
interface MediaLibraryWidgetOptionsExtended extends MediaLibraryWidgetOptions {
    containerDimensions?: {
        height: string;
        width: string;
    };
    style?: any;
}
type MediaLibraryWidgetCallback = (payload: any) => void;
declare enum InitialViewParameterEnum {
    SEARCH_QUERY = "searchQuery",
    FOLDER_PATH = "folderPath",
    FILE_ID = "fileId",
    COLLECTION = "collection",
    FILE_TYPE = "fileType"
}
declare enum FileTypeValue {
    IMAGE = "images",
    VIDEO = "videos",
    CSSJS = "cssJs",
    OTHERS = "others"
}
declare class ImagekitMediaLibraryWidget {
    private IK_HOST;
    private IK_FRAME_TITLE;
    private callbackFunction;
    private widgetHost;
    private view;
    private options;
    private modal;
    private ikFrame;
    private styleEl;
    private windowClickHandler;
    private messageHandler;
    private iframe;
    private loadingOverlay;
    private getDefaultOptions;
    constructor(options: MediaLibraryWidgetOptions, callback: MediaLibraryWidgetCallback);
    private registerStyles;
    private buildOut;
    private generateInitialUrl;
    private setLoading;
    private setupIframeLoadHandler;
    open(settings?: Partial<Pick<MediaLibraryWidgetOptions, 'mlSettings'>>, callback?: MediaLibraryWidgetCallback): void;
    private close;
    private closeModal;
    destroy(): void;
    private setListeners;
}
declare global {
    interface Window {
        IKMediaLibraryWidget: typeof ImagekitMediaLibraryWidget;
    }
}
export { ImagekitMediaLibraryWidget, InitialView, ToolbarOptions, MLSettings, MediaLibraryWidgetOptions, MediaLibraryWidgetOptionsExtended, MediaLibraryWidgetCallback, InitialViewParameterEnum, FileTypeValue };
//# sourceMappingURL=imagekit-media-library-widget.cjs.d.ts.map