import { PropType } from 'vue';
import { ChessPuzzle } from './index';
import { ViewData } from '../../../../../common/dist/index.mjs';
type PromotionPiece = 'q' | 'r' | 'b' | 'n';
type Color = 'cg-white' | 'cg-black';
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    data: {
        type: PropType<ViewData[]>;
        required: true;
    };
    modifyDifficulty: {
        type: NumberConstructor;
        required: false;
        default: number;
    };
}>, {
    priorSessionViews: import('vue').Ref<number>;
    priorAttempts: import('vue').Ref<number>;
    priorAnswers: import('vue').Ref<[import('../../../../../common/dist/index.mjs').Answer, string][]>;
    maxAttemptsPerView: import('vue').Ref<number>;
    maxSessionViews: import('vue').Ref<number>;
    question: import('vue').Ref<ChessPuzzle | undefined, ChessPuzzle | undefined>;
    submitAnswer: (answer: import('../../../../../common/dist/index.mjs').Answer, submittingClass?: string) => import('packages/db/dist').QuestionRecord;
    startTime: import('vue').Ref<moment.Moment>;
    hotKeys: import('vue').Ref<import('../../../../../common-ui/dist/common-ui.es.js').HotKey[]>;
    timeSpent: import('vue').ComputedRef<number>;
    logger: import('../../../../../common-ui/dist/common-ui.es.js').ViewableLogger;
    getURL: (item: string, dataShapeIndex?: number) => string;
    emitResponse: (record: import('packages/db/dist').CardRecord) => void;
    boardElement: import('vue').Ref<HTMLElement | null, HTMLElement | null>;
    playerColor: import('vue').Ref<Color, Color>;
    files: import('vue').ComputedRef<string[]>;
    showPromotionDialog: import('vue').Ref<boolean, boolean>;
    promotionPieces: {
        value: string;
        name: string;
        whiteSymbol: string;
        blackSymbol: string;
    }[];
    handlePromotion: (promotionPiece: PromotionPiece | string) => void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    data: {
        type: PropType<ViewData[]>;
        required: true;
    };
    modifyDifficulty: {
        type: NumberConstructor;
        required: false;
        default: number;
    };
}>> & Readonly<{}>, {
    modifyDifficulty: number;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default _default;
//# sourceMappingURL=puzzle.vue.d.ts.map