import { ChangeDetectorRef, WritableSignal } from '@angular/core';
import { Workflow } from '../../models/Workflow';
import { BaseDataViewComponent } from '../../shared/components/base-data-view.component';
import { DataViewConfig } from '../../shared/models/DataViewConfig';
import { WorkflowFacade } from './workflows.facade';
import { CardData, IDataFilter } from 'verben-ng-ui';
import { TaskAssignmentType } from '../../models/TaskAssignmentType';
import { Status } from '../../models/status';
import { FormBuilder, FormControl, FormGroup } from '@angular/forms';
import { WorkflowOperation } from '../../models/WorkflowOperation';
import * as i0 from "@angular/core";
export declare class WorkflowsComponent extends BaseDataViewComponent<Workflow> {
    private cdr;
    private facade;
    private fb;
    designerUrl: import("@angular/core").InputSignal<string>;
    config: DataViewConfig<Workflow>;
    editForms: Map<number, FormGroup>;
    assignmentTypes: TaskAssignmentType[];
    statuses: Status[];
    operations: WritableSignal<WorkflowOperation[]>;
    constructor(cdr: ChangeDetectorRef, facade: WorkflowFacade, fb: FormBuilder);
    generateFormGroup(data?: Partial<Workflow>): FormGroup<{
        Name: FormControl<string | null>;
        Description: FormControl<string | null>;
        AssignmentType: FormControl<string | null>;
        Operation: FormControl<string | null>;
        Status: FormControl<string | null>;
    }>;
    getFormControl(index: number, field: string): FormControl<any>;
    isRowValid(index: number): boolean;
    loadInitialData(): void;
    protected getCardDataByIdentifier(code: string): CardData | undefined;
    loadMore(): void;
    onSave(data: Partial<Workflow>): Promise<void>;
    commitRowChange(rowIndex: number, row: Workflow, postCommit?: () => void): Promise<void>;
    onFilterSet(event: IDataFilter[]): void;
    handleSearch(event: {
        key: string;
        value: string;
    }): void;
    onStateChange(event: {
        key: string;
        value: boolean;
    }): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<WorkflowsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<WorkflowsComponent, "lib-workflows", never, { "designerUrl": { "alias": "designerUrl"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
}
