import { AppObject, AppObjectEntity, AppObjectRepo } from "@vived/core";
import { Challenge } from "../../Challenge/Entities/ChallengeEntity";
export declare abstract class ObjectPickEntity extends AppObjectEntity implements Challenge {
    static readonly type = "ObjectPick";
    static get(appObjects: AppObjectRepo): ObjectPickEntity | undefined;
    readonly challengeID = "OBJECT_PICK";
    authorHelpText: string;
    consumerHelpText: string;
    helpHeading: string;
    name: string;
    abstract get correctObjectIds(): string[];
    abstract get hasSubmitted(): boolean;
    abstract get isCorrect(): boolean;
    abstract get isSelectingCorrectObjects(): boolean;
    abstract set isSelectingCorrectObjects(val: boolean);
    abstract addCorrectObjectId: (id: string) => void;
    abstract removeCorrectObjectId: (id: string) => void;
    abstract clearCorrectObjectIds: () => void;
    abstract submit: (id: string) => void;
    abstract reset: () => void;
}
export declare function makeObjectPickEntity(appObject: AppObject): ObjectPickEntity;
//# sourceMappingURL=ObjectPickEntity.d.ts.map