import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
/**
 * Represents the permission state returned by the Permissions API.
 */
export type PermissionState = PermissionStatus['state'];
export declare class DevicePermissionService {
    /**
     * Returns the current state of a given permission.
     * @param name Name of the permission (e.g., 'camera', 'microphone', 'geolocation', etc.)
     */
    getPermissionStatus(name: PermissionName): Observable<PermissionState>;
    /**
     * Observes changes to the state of a given permission.
     * @param name Name of the permission to observe
     */
    observePermissionChange(name: PermissionName): Observable<PermissionState>;
    /**
     * Checks if the Permissions API is available in the current environment.
     */
    private isSupported;
    static ɵfac: i0.ɵɵFactoryDeclaration<DevicePermissionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DevicePermissionService>;
}
