import { OnInit, OnChanges, OnDestroy, EventEmitter, SimpleChanges } from "@angular/core";
import { FormGroup } from "@angular/forms";
import { KreFormFieldConfig, KreSurveyInfo, KreFormCommonService } from "@kre-form/core";
import { NzModalService } from "ng-zorro-antd/modal";
import { NzMessageService } from "ng-zorro-antd/message";
import { KreFormAntService } from "../../tools/service";
import { IDesignFormAPI } from "../../tools/util";
import { KreDialogService } from "../../service/dialog.service";
import { DataService } from "../../service/data.service";
import { KreTransferService } from "../../tools/transferService";
export declare class KreSurveyDesignDetail implements OnInit, OnChanges, OnDestroy {
    private message;
    private modalService;
    private kreFormAntService;
    kreDialogService: KreDialogService;
    dataService: DataService;
    kreTransferService: KreTransferService;
    kreFormCommonService: KreFormCommonService;
    formCode: string;
    api: IDesignFormAPI;
    saveEvent: EventEmitter<string>;
    cancelEvent: EventEmitter<string>;
    previewEvent: EventEmitter<string>;
    pageStatus: number;
    form_model: any;
    form_group: FormGroup;
    form_fields: KreFormFieldConfig[];
    kreSurveyInfo: KreSurveyInfo;
    show_setting: boolean;
    questionField: KreFormFieldConfig;
    pageSelectedIndex: number;
    constructor(message: NzMessageService, modalService: NzModalService, kreFormAntService: KreFormAntService, kreDialogService: KreDialogService, dataService: DataService, kreTransferService: KreTransferService, kreFormCommonService: KreFormCommonService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    saveSurvey(): void;
    initFormInfo(): void;
    pageClick(e: number): void;
    addPage(): void;
    deletePage(index: number): void;
    getQuestionListByPageIndex(pageIndex: number): void;
    questionOperational(res: any): void;
    optionOperational(res: any): void;
    addQuestionType(data: any, index?: any): void;
    addQuestionDragDrop(res: any): void;
    readonly formFieldGroup: any[];
}
