import { ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
import { FormArray, FormBuilder, FormControl, FormGroup } from '@angular/forms';
import { GlobalStateService } from 'tango-app-ui-global';
import { TraxService } from '../../services/trax.service';
import { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';
import { Router } from '@angular/router';
import { Answer, AnswerForm, AnswerType, HeaderFilter, Question, QuestionForm, Section, SectionForm, TaskForm, ValidationType } from './create-task.interface';
import { ToastService } from 'tango-app-ui-shared';
import dayjs from "dayjs";
import { TimePeriod } from 'ngx-daterangepicker-material/daterangepicker.component';
import * as i0 from "@angular/core";
export declare class AddMultitaskComponent implements OnDestroy, OnInit {
    private fb;
    private activeModal;
    private gs;
    private traxService;
    private cd;
    private modalService;
    private router;
    private toastService;
    taskForm: FormGroup<TaskForm>;
    type: any;
    sourceCheckList_id: any;
    filtertype: any;
    showcomment: any;
    excelData: any;
    currentIndex: number;
    intervalId: any;
    allowedStoreLocation: boolean;
    restrictAttendance: boolean;
    submitted: boolean;
    headerData: HeaderFilter | null | undefined;
    selectedlistselectControl: FormControl;
    answerTypes: {
        label: string;
        value: AnswerType;
    }[];
    validationTypes: {
        label: string;
        value: ValidationType;
    }[];
    environment: any;
    taskContainer: HTMLElement | null;
    private destroy$;
    payload: any;
    taskDetails: any;
    checklistInfo: any;
    selectedStores: any;
    selectedUsers: any;
    priorityTypeList: any;
    clientId: any;
    timeDetails: any;
    constructor(fb: FormBuilder, activeModal: NgbActiveModal, gs: GlobalStateService, traxService: TraxService, cd: ChangeDetectorRef, modalService: NgbModal, router: Router, toastService: ToastService);
    ngOnInit(): void;
    tasks: number[];
    taskCounter: number;
    updateForm(): void;
    filterChange(event: any): void;
    prevSlide(): void;
    nextSlide(): void;
    goToSlide(index: number): void;
    cancel(): void;
    onSubmit(): void;
    preventEnter(event: any): void;
    createForm(): void;
    addSectionForm(section?: Section): void;
    addQuestionForm(question: Question, sectionIndex: number, insertIndex?: number): void;
    addAnswerForm(answer: Answer, sectionIndex: number, questionIndex: number, insertIndex?: number): void;
    get getSections(): FormArray<FormGroup<SectionForm>>;
    getQuestions(sectionIndex: number): FormArray<FormGroup<QuestionForm>>;
    isInvalidAnswer(secIdx: number, qnIdx: number): boolean;
    getAnswers(sectionIndex: number, questionIndex: number): FormArray<FormGroup<AnswerForm>>;
    uploadFile(event: any, sectionIndex: number, questionIndex: number, answerIndex?: number): void;
    togglegeofencing(evt: any): void;
    toggleAttendance(evt: any): void;
    closeDropdown(event: MouseEvent): void;
    openDropdown(event: MouseEvent): void;
    selectedItem: any;
    dropDown: boolean;
    currentTime: string;
    updateCurrentTime(): void;
    isDisabled(time: string): boolean;
    selectItem(value: any): void;
    onAnswerDelete(sectionIndex: number, questionIndex: number, answerIndex: number): void;
    onValidateResponseChange(event: any, sectionIndex: number, questionIndex: number, answerIndex: number): void;
    addNewAnswer(sectionIndex: number, questionIndex: number, type: AnswerType): void;
    onQuestionChange(event: any, sectionIndex: number, questionIndex: number): void;
    selectedDate: any;
    dayjs: typeof dayjs;
    isCustomDate: (m: dayjs.Dayjs) => false | "invalid-date";
    onStartDateChange(event: any): void;
    datechange(event: TimePeriod): void;
    uploadedFiles: File[];
    selectedFile?: File;
    previewUrl?: any;
    fileInput: ElementRef;
    removeImage(index: any): void;
    ngOnDestroy(): void;
    updateLinearTypeRange(event: any, sectionIndex: number, questionIndex: number): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AddMultitaskComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AddMultitaskComponent, "lib-add-multitask", never, { "type": { "alias": "type"; "required": false; }; "sourceCheckList_id": { "alias": "sourceCheckList_id"; "required": false; }; "filtertype": { "alias": "filtertype"; "required": false; }; "showcomment": { "alias": "showcomment"; "required": false; }; "excelData": { "alias": "excelData"; "required": false; }; "payload": { "alias": "payload"; "required": false; }; "taskDetails": { "alias": "taskDetails"; "required": false; }; "checklistInfo": { "alias": "checklistInfo"; "required": false; }; }, {}, never, never, false, never>;
}
