import { AppObject, AppObjectEntity, AppObjectRepo } from "@vived/core";
import { LabelEntity } from "../../Label/Entities";
export interface LabelDropItemDTO {
    id: string;
    label: string;
    correctAppObjectIDs: string[];
}
export declare class LabelDropItemEntity extends AppObjectEntity {
    static type: string;
    static LABEL_DROP_EMPTY: string;
    static LABEL_DROP_TOO_LONG: string;
    static LABEL_DROP_NEED_TARGETS: string;
    static get(id: string, appObjects: AppObjectRepo): LabelDropItemEntity | undefined;
    get id(): string;
    get data(): LabelDropItemDTO;
    set data(val: LabelDropItemDTO);
    get label(): string;
    set label(val: string);
    readonly labelEntity: LabelEntity;
    get targetValidationMessage(): string | undefined;
    private _targetIds;
    get targetIds(): string[];
    set targetIds(val: string[]);
    addTargetID: (id: string) => void;
    removeTargetID: (id: string) => void;
    private _tries;
    get tries(): number;
    private _answeredCorrectly?;
    get answeredCorrectly(): boolean | undefined;
    submitLabelDrop: (onObjectId: string) => boolean;
    reset: () => void;
    constructor(appObject: AppObject);
}
//# sourceMappingURL=LabelDropItemEntity.d.ts.map