import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';
import * as i0 from '@angular/core';
import { Injector } from '@angular/core';
import { MatSnackBar } from '@angular/material/snack-bar';
import { Observable } from 'rxjs';
import { SdAuthService } from '@sdcorejs/angular/modules';

declare class SdNoInternetInterceptor implements HttpInterceptor {
    #private;
    private snackBar;
    private injector;
    constructor(snackBar: MatSnackBar, injector: Injector);
    intercept(request: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SdNoInternetInterceptor, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SdNoInternetInterceptor>;
}

declare class SdUnauthorizedInterceptor implements HttpInterceptor {
    #private;
    private authService;
    constructor(authService: SdAuthService);
    intercept(request: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<SdUnauthorizedInterceptor, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SdUnauthorizedInterceptor>;
}

export { SdNoInternetInterceptor, SdUnauthorizedInterceptor };
