import { Position } from '../models/types';
import * as i0 from "@angular/core";
export interface CanvasState {
    width: number;
    height: number;
    gridSize: number;
    isConnecting: boolean;
    isDragging: boolean;
    dragStartPosition: Position | null;
    dragOffset: Position;
    connectionPreview: Position[] | null;
}
export declare class CanvasStateService {
    private state;
    readonly canvasState: import("@angular/core").Signal<CanvasState>;
    setConnecting(isConnecting: boolean): void;
    setDragging(isDragging: boolean): void;
    setDragStartPosition(position: Position | null): void;
    setDragOffset(offset: Position): void;
    setConnectionPreview(points: Position[] | null): void;
    resetInteractionState(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CanvasStateService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CanvasStateService>;
}
