import { AXTranslationService } from '@acorex/core/translation';
import * as i0 from '@angular/core';
import { Injectable } from '@angular/core';
import { a as AXMSettingsManagementPermissionKeys, R as RootConfig } from './acorex-modules-settings-management-acorex-modules-settings-management-BxRF7Sj_.mjs';

class AXMPermissionDefinitionProvider {
    constructor(injector) {
        this.injector = injector;
        this.translateService = this.injector.get(AXTranslationService);
    }
    async define(context) {
        const keys = AXMSettingsManagementPermissionKeys;
        // I18n path constants
        const MODULE_PERMISSIONS = '@settings-management:module.permissions';
        const USER_SETTINGS_PERMISSIONS = '@settings-management:user-settings.permissions';
        const TENANT_SETTINGS_PERMISSIONS = '@settings-management:tenant-settings.permissions';
        context
            .addGroup(RootConfig.module.name, `${MODULE_PERMISSIONS}.title`, `${MODULE_PERMISSIONS}.description`)
            .addPermission(keys.UserSettings.Management, `${USER_SETTINGS_PERMISSIONS}.manage.title`, `${USER_SETTINGS_PERMISSIONS}.manage.description`)
            .endPermission()
            .addPermission(keys.TenantSettings.Management, `${TENANT_SETTINGS_PERMISSIONS}.manage.title`, `${TENANT_SETTINGS_PERMISSIONS}.manage.description`)
            .endPermission()
            .endGroup();
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXMPermissionDefinitionProvider, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
    static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXMPermissionDefinitionProvider }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: AXMPermissionDefinitionProvider, decorators: [{
            type: Injectable
        }], ctorParameters: () => [{ type: i0.Injector }] });

export { AXMPermissionDefinitionProvider };
//# sourceMappingURL=acorex-modules-settings-management-permission-definition.provider-BF3MqGDk.mjs.map
