import { AfterViewInit, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, Renderer2 } from '@angular/core'; import { DropEffect, EffectAllowed } from './dnd-types'; import { DndEvent } from './dnd-utils'; import * as i0 from "@angular/core"; export interface DndDropEvent { event: DragEvent; dropEffect: DropEffect; isExternal: boolean; data?: any; index?: number; type?: any; } export declare class DndPlaceholderRefDirective implements OnInit { readonly elementRef: ElementRef; constructor(elementRef: ElementRef); ngOnInit(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } export declare class DndDropzoneDirective implements AfterViewInit, OnDestroy { private ngZone; private elementRef; private renderer; dndDropzone?: string[] | ''; dndEffectAllowed: EffectAllowed; dndAllowExternal: boolean; dndHorizontal: boolean; dndDragoverClass: string; dndDropzoneDisabledClass: string; readonly dndDragover: EventEmitter; readonly dndDrop: EventEmitter; private readonly dndPlaceholderRef?; private placeholder; private disabled; constructor(ngZone: NgZone, elementRef: ElementRef, renderer: Renderer2); set dndDisableIf(value: boolean); set dndDisableDropIf(value: boolean); ngAfterViewInit(): void; ngOnDestroy(): void; onDragEnter(event: DndEvent): void; onDragOver(event: DragEvent): void; onDrop(event: DragEvent): void; onDragLeave(event: DndEvent): void; private readonly dragEnterEventHandler; private readonly dragOverEventHandler; private readonly dragLeaveEventHandler; private isDropAllowed; private tryGetPlaceholder; private removePlaceholderFromDOM; private checkAndUpdatePlaceholderPosition; private getPlaceholderIndex; private cleanupDragoverState; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }