import { ElementRef } from '@angular/core'; import { SubscriptionLike as ISubscription } from 'rxjs'; import { Dictionary } from 'lodash'; import { FormBuilder, AbstractControl, FormGroup } from '@angular/forms'; import { DialogViewModel } from './view-models/dialog-view-model'; import { ParameterViewModel } from './view-models/parameter-view-model'; import { FieldViewModel } from './view-models/field-view-model'; import { IDraggableViewModel } from './view-models/idraggable-view-model'; export declare function safeUnsubscribe(sub: ISubscription): void; export declare function focus(element: ElementRef): boolean; export declare function createForm(dialog: DialogViewModel, formBuilder: FormBuilder): { form: FormGroup; dialog: DialogViewModel; parms: Dictionary; sub: ISubscription; }; export declare function accept(droppableVm: FieldViewModel, component: { canDrop: boolean; }): (draggableVm: IDraggableViewModel) => boolean; export declare function dropOn(draggableVm: IDraggableViewModel, droppable: FieldViewModel, component: { canDrop: boolean; control: AbstractControl; }): void; export declare function paste(event: KeyboardEvent, droppable: FieldViewModel, component: { control: AbstractControl; }, get: () => IDraggableViewModel | null, clear: () => void): void;