import { EventEmitter, Injector } from '@angular/core';
import { Strings } from '../../generated/strings';
import { BaseComponent } from '../common/base.component';
import * as i0 from "@angular/core";
export declare class DropZoneComponent extends BaseComponent<Strings> {
    isDraggedOver: boolean;
    /**
     * The source name to use for logging
     */
    protected get logSourceName(): string;
    smeDrop: EventEmitter<DataTransfer>;
    /**
     * Constructs a new instance of @see DropZoneComponent
     * @param injector the angular injection service for the base classes @SmeInjectableBase Annotation.
     */
    constructor(injector: Injector);
    /**
     * Gets the initial host classes to be applied to this element
     * When called in the @see BaseComponent super class initialization, These classes will be automatically assigned to the host element.
     */
    protected getInitialHostClasses(): string[];
    /**
     * Bring all browsers into a common behavior by always handling all drop target events
     */
    onDragEnter(event: DragEvent): void;
    onDragOver(event: DragEvent): void;
    onDragLeave(event: DragEvent): void;
    onDrop(event: DragEvent): void;
    private handleEvent;
    static ɵfac: i0.ɵɵFactoryDeclaration<DropZoneComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DropZoneComponent, "sme-drop-zone", never, {}, { "smeDrop": "smeDrop"; }, never, ["*"], false, never>;
}
