import { QuestionType } from 'src/common/enum/question-type.enum';
import { AnswerType } from 'src/common/enum/answer-type.enum';
export declare class SectionOverrideDto {
    sectionName?: string;
    sectionDescription?: string;
    isVisible?: boolean;
    conditionalConfig?: Record<string, any>;
}
export declare class QuestionOverrideDto {
    label?: string;
    placeholder?: string;
    helpText?: string;
    isVisible?: boolean;
    config?: Record<string, any>;
    conditionalConfig?: Record<string, any>;
    optionConfig?: Record<string, any>[];
    isRequired?: boolean;
}
export declare class QuestionInputDto {
    masterQuestionId?: number;
    label?: string;
    type?: QuestionType;
    answerType?: AnswerType;
    config?: Record<string, any>;
    placeholder?: string;
    helpText?: string;
    displayOrder?: number;
    optionConfig?: Record<string, any>[];
    override?: QuestionOverrideDto;
}
export declare class SectionInputDto {
    masterFormSectionId?: number;
    sectionName?: string;
    sectionKey?: string;
    templateFormSectionId?: number;
    sectionDescription?: string;
    displayOrder?: number;
    parentSectionId?: number;
    conditionalConfig?: Record<string, any>;
    sectionOverride?: SectionOverrideDto;
    questions?: QuestionInputDto[];
    subsections?: SectionInputDto[];
}
export declare class TemplateFormBuilderDto {
    programTemplateId?: number;
    masterFormId?: number;
    cloneFromMaster?: boolean;
    sections?: SectionInputDto[];
    createdBy: number;
}
export declare class TemplateFormBuilderResponseDto {
    success: boolean;
    message: string;
    data: {
        templateFormSections: any[];
        totalSectionsCreated: number;
        totalQuestionsCreated: number;
    };
}
