import { RecordOfAnyType, CustomBpmnModdle, ModdleElement } from '../types';
import { Point } from './types';
import * as i0 from "@angular/core";
export declare class DiFactoryService {
    private readonly moddle;
    constructor(moddle: CustomBpmnModdle);
    create(type: ModdleElement | string, attrs?: RecordOfAnyType): ModdleElement;
    createDiLabel(): ModdleElement;
    createDiShape(semantic: ModdleElement, bounds: RecordOfAnyType, attrs: RecordOfAnyType): ModdleElement;
    createDiBounds(bounds?: RecordOfAnyType): ModdleElement;
    createDiWaypoints(waypoints?: Array<Point>): ModdleElement[];
    createDiWaypoint(point: Point): ModdleElement;
    createDiEdge(semantic: ModdleElement, attrs: RecordOfAnyType, waypoints?: Array<Point>): ModdleElement;
    createDiPlane(attrs: RecordOfAnyType): ModdleElement;
    createDiDiagram(attrs: RecordOfAnyType): ModdleElement;
    createBpmnElementDi(elementType: ModdleElement | string, attrs: RecordOfAnyType, pos?: RecordOfAnyType): ModdleElement;
    _getDefaultSize(element: ModdleElement | string): {
        width: number;
        height: number;
    };
    static ɵfac: i0.ɵɵFactoryDeclaration<DiFactoryService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DiFactoryService>;
}
