import { IQuestion, ItemValue, QuestionCheckboxBase } from 'survey-core';
import { SurveyPDF } from '../survey';
import { IPoint, IRect, DocController } from '../doc_controller';
import { FlatQuestion } from './flat_question';
import { IPdfBrick } from '../pdf_render/pdf_brick';
import { ChoiceItem } from 'survey-core';
export declare abstract class FlatSelectBase extends FlatQuestion {
    protected survey: SurveyPDF;
    protected controller: DocController;
    protected question: QuestionCheckboxBase;
    constructor(survey: SurveyPDF, question: IQuestion, controller: DocController);
    abstract generateFlatItem(rect: IRect, item: ItemValue, index: number): IPdfBrick;
    protected generateItemComment(point: IPoint, item: ItemValue): Promise<IPdfBrick>;
    protected generateFlatComposite(point: IPoint, item: ItemValue | ChoiceItem, index: number): Promise<IPdfBrick>;
    protected getVisibleChoices(): Array<ItemValue>;
    protected getColCount(): number;
    generateFlatsContent(point: IPoint): Promise<IPdfBrick[]>;
    protected generateRows(point: IPoint, rows: Array<Array<ItemValue>>): Promise<IPdfBrick[]>;
    protected generateVerticallyItems(point: IPoint, itemValues: ItemValue[]): Promise<IPdfBrick[]>;
    protected generateColumns(point: IPoint): Promise<IPdfBrick[]>;
    protected generateHorisontallyItems(point: IPoint, colCount: number): Promise<IPdfBrick[]>;
}
