import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { AbstractControl, FormArray } from '@angular/forms'; import { EditorModel } from '@valtimo/components'; import { IconService } from 'carbon-components-angular'; import { AccessControlFormEditorService, PermissionSchemaMetadataService } from '../../services'; import * as i0 from "@angular/core"; export declare class AccessControlFormEditorTabComponent implements OnChanges, OnDestroy { private readonly formEditorService; private readonly metadataService; private readonly iconService; private readonly changeDetectorRef; private _permissionList?; model: EditorModel | null; disabled: boolean | null; roleKey: string | null; validEvent: EventEmitter; valueChangeEvent: EventEmitter; permissionsArray: FormArray | null; ready: boolean; readonly $selectedIndex: import("@angular/core").WritableSignal; protected readonly testIds: { readonly addPermissionButton: "accessControlEditorAddPermission"; readonly permissionListItem: "accessControlEditorPermissionListItem"; readonly permissionCard: "accessControlEditorPermissionCard"; readonly removePermissionButton: "accessControlEditorRemovePermission"; readonly resourceTypeSelect: "accessControlEditorResourceType"; readonly actionsSelect: "accessControlEditorActions"; readonly contextToggle: "accessControlEditorContextToggle"; readonly contextResourceTypeSelect: "accessControlEditorContextResourceType"; readonly addConditionButton: "accessControlEditorAddCondition"; readonly removeConditionButton: "accessControlEditorRemoveCondition"; readonly conditionTypeSelect: "accessControlEditorConditionType"; readonly conditionFieldSelect: "accessControlEditorConditionField"; readonly conditionOperatorSelect: "accessControlEditorConditionOperator"; readonly conditionValueInput: "accessControlEditorConditionValue"; readonly conditionPathInput: "accessControlEditorConditionPath"; readonly conditionClazzInput: "accessControlEditorConditionClazz"; }; private _valueChangesSubscription?; private _pendingReselect; constructor(formEditorService: AccessControlFormEditorService, metadataService: PermissionSchemaMetadataService, iconService: IconService, changeDetectorRef: ChangeDetectorRef); ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; shortName(control: AbstractControl): string; actionsOf(control: AbstractControl): string[]; hasConditions(control: AbstractControl): boolean; hasContext(control: AbstractControl): boolean; orderedPermissions(): { control: AbstractControl; index: number; }[]; selectPermission(index: number): void; selectedControls(): AbstractControl[]; addPermission(): void; private scrollNewPermissionIntoView; private scrollSelectedIntoView; removePermission(index: number): void; private rebuild; private buildForm; prepareSelectionReopen(): void; private selectedPermissionKeys; private resolveSelectedIndex; private permissionKeys; private applyDisabled; private emitState; private parsePermissions; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }