import { PbacConditionTypeDto, PbacEntityMapperDto, PbacOperatorDto, PbacRegistryDto, PbacResourceDto } from '@valtimo/shared'; import { Observable } from 'rxjs'; import { PermissionSchema } from '../models'; import { AccessControlService } from './access-control.service'; import * as i0 from "@angular/core"; export declare class PermissionSchemaMetadataService { private readonly accessControlService; private readonly _knownResourceTypes$; private readonly _fieldsByResourceType$; /** * The full PBAC registry served by GET /api/management/v1/pbac/registry. This is the * authoritative, purpose-built description of every resource type, its actions and fields, * the available operators and condition types, the entity-mapper pairs that define which * context resources a permission can be scoped to, and the configured roles. It drives both * the read-only overview and the form-based editor. */ readonly registry$: Observable; readonly resources$: Observable; readonly resourceByType$: Observable>; /** * Raw JSON schema served by GET /api/management/v1/permissions/schema. Drives validation and * autocomplete in the Monaco JSON editor. */ readonly schema$: Observable; readonly actionsByResourceType$: Observable>; readonly allResourceTypes$: Observable; readonly operators$: Observable; readonly conditionTypes$: Observable; readonly entityMappers$: Observable; readonly roles$: Observable; constructor(accessControlService: AccessControlService); isResourceTypeKnown(fqn: string): boolean; isFieldKnown(resourceType: string, field: string): boolean; private extractKnownResourceTypes; private extractFieldsByResourceType; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }