/*!
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
*
* Alfresco Example Content Application
*
* This file is part of the Alfresco Example Content Application.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* from Hyland Software. If not, see .
*/
import { OnInit } from '@angular/core';
import { Location } from '@angular/common';
import { FolderRulesService } from '../services/folder-rules.service';
import { Observable } from 'rxjs';
import { Rule } from '../model/rule.model';
import { ActivatedRoute } from '@angular/router';
import { NodeInfo } from '@alfresco/aca-shared/store';
import { MatDialog } from '@angular/material/dialog';
import { NotificationService } from '@alfresco/adf-core';
import { ActionDefinitionTransformed } from '../model/rule-action.model';
import { ActionsService } from '../services/actions.service';
import { FolderRuleSetsService } from '../services/folder-rule-sets.service';
import { RuleSet } from '../model/rule-set.model';
import { MatSlideToggleChange } from '@angular/material/slide-toggle';
import { ActionParameterConstraint } from '../model/action-parameter-constraint.model';
import * as i0 from "@angular/core";
export declare class ManageRulesSmartComponent implements OnInit {
private location;
private folderRulesService;
private route;
private matDialogService;
private notificationService;
private actionsService;
private folderRuleSetsService;
nodeId: string;
isInheritanceEnabled: boolean;
isInheritanceToggleDisabled: boolean;
mainRuleSet$: Observable;
inheritedRuleSets$: Observable;
selectedRule$: Observable;
selectedRuleSet$: Observable;
hasMoreRuleSets$: Observable;
ruleSetsLoading$: Observable;
folderInfo$: Observable;
actionsLoading$: Observable;
actionDefinitions$: Observable;
parameterConstraints$: Observable;
canEditMainRule: boolean;
canEditSelectedRule: boolean;
isMainRuleSetNotEmpty: boolean;
isInheritedRuleSetsNotEmpty: boolean;
private readonly destroyRef;
constructor(location: Location, folderRulesService: FolderRulesService, route: ActivatedRoute, matDialogService: MatDialog, notificationService: NotificationService, actionsService: ActionsService, folderRuleSetsService: FolderRuleSetsService);
ngOnInit(): void;
goBack(): void;
onSelectRule(rule: Rule): void;
openCreateUpdateRuleDialog(model?: {}): void;
onSubmitRuleDialog(dialogRef: any): void;
onRuleUpdate(rule: Rule): Promise;
onRuleCreate(ruleCreateParams: Partial): Promise;
onRuleEnabledToggle(rule: Rule, isEnabled: boolean): Promise;
onInheritanceToggleChange(event: MatSlideToggleChange): Promise;
onRuleDeleteButtonClicked(rule: Rule): void;
onRuleDelete(deletedRuleId: string): void;
onLoadMoreRuleSets(): void;
onLoadMoreRules(ruleSet: RuleSet): void;
canEditRule(ruleSet: RuleSet): boolean;
openLinkRulesDialog(existingRuleSet?: RuleSet): void;
onRuleSetUnlinkClicked(linkedRuleSet: RuleSet): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}