import { Observable } from 'rxjs'; import { BaseDataPageFacade, SearchHandlerService } from 'verben-workflow-ui/src/lib/base'; import { Workflow, WorkflowOperation } from 'verben-workflow-ui/src/lib/models'; import { UtilService } from 'verben-workflow-ui/src/lib/services'; import { WorkflowsService } from './workflows.service'; import { WorkflowsState } from './workflows.state'; import * as i0 from "@angular/core"; /** * Facade for the workflows page. */ export declare class WorkflowFacade extends BaseDataPageFacade { private workflowService; constructor(state: WorkflowsState, service: WorkflowsService, searchHandler: SearchHandlerService, utilService: UtilService); get operations$(): Observable; loadOperations(): Promise; /** * A brand-new workflow must go up with Id and Code blank: the backend rejects * a client-supplied Id, and the placeholder record carries a locally generated * one. Established records keep theirs so the save lands as an update. */ protected withDataState(item: Workflow): Workflow; /** * Save the record currently open in the form, merged over whatever the form * did not edit. Insert vs update is decided from the presence of a Code — see * BaseDataPageFacade.withDataState. */ save(edits: Partial): Promise; /** Commit an inline table-row edit. Does not close the card form. */ saveRow(row: Workflow, edits: Partial): Promise; deleteWorkflow(code: string): Promise; /** * Approve or reject a workflow via `WorkflowAction/{isApproval}`, which * returns the updated records rather than a paged result. */ processWorkflow(workflow: Workflow, isApproval: boolean): Promise; /** Prepend a blank workflow and open it in the form. */ startCreate(): Workflow; private createEmpty; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }