import { SuiModalService } from '@project-sunbird/ng2-semantic-ui';
import { Observable } from 'rxjs';
import { AlertMeta } from '../interfaces/alert.type';
import * as i0 from "@angular/core";
export declare abstract class SlUtilsAbstract {
    abstract openAlert?(data: any): Promise<any>;
    abstract error?(msg: any): any;
    abstract getPreSingedUrls?(payload: any): Observable<any>;
    abstract cloudStorageUpload?(payload: any): Observable<any>;
}
export declare abstract class SlUtilsService extends SlUtilsAbstract {
    modalService: SuiModalService;
    constructor(modalService: SuiModalService);
    /**
     * @param {AlertMeta}  meta: Alert Meta Form Object
     * @param {String} meta.title Optional ! Display title of alert fields
     * @param {String}  meta.size Provide size of alert.('tiny','mini)
     * @param {AlertBodyType}  meta.bodyType Alert-content type to show in alert body
     * @param {String}  meta.data content to show
     * @param {String}  meta.buttonClass class to apply on button div
     * @param {String}  meta.acceptText text to show in accept button
     * @param {String}  meta.cancelText text to show in accept button
     * @param {String}  meta.type Optional ! To set type of alert
     * @param {Boolean}  meta.closeIcon Optional ! Show top right close icon , default = false
     */
    alert(meta: AlertMeta): Promise<any>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SlUtilsService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SlUtilsService>;
}
