import { WorkflowObject, WorkflowObjectType, Action } from '../models/types';
import * as i0 from "@angular/core";
interface WorkflowState {
    objects: WorkflowObject[];
    selectedObjectId: string | null;
    selectedTool: WorkflowObjectType | null;
}
export declare class WorkflowStateService {
    state: import("@angular/core").WritableSignal<WorkflowState>;
    readonly objects: import("@angular/core").Signal<WorkflowObject[]>;
    readonly selectedObjectId: import("@angular/core").Signal<string | null>;
    readonly selectedTool: import("@angular/core").Signal<WorkflowObjectType | null>;
    readonly nodes: import("@angular/core").Signal<WorkflowObject[]>;
    readonly swimlanes: import("@angular/core").Signal<WorkflowObject[]>;
    readonly connections: import("@angular/core").Signal<Action[]>;
    addObject(object: WorkflowObject): void;
    updateObject(id: string, changes: Partial<WorkflowObject>): void;
    updateMultipleObjects(updates: {
        id: string;
        changes: Partial<WorkflowObject>;
    }[]): void;
    removeObject(id: string): void;
    setSelectedTool(tool: WorkflowObjectType | null): void;
    setSelectedObject(id: string | null): void;
    getObjectById(id: string): WorkflowObject | undefined;
    initializeWorkflow(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<WorkflowStateService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<WorkflowStateService>;
}
export {};
