import { EventEmitter, OnInit } from '@angular/core';
import { Subject } from 'rxjs';
import { RestApiService } from '../restapi.service';
import { SnackBarService } from '../../../ui-kit/snack-bar/snack-bar.service';
import { SelectedIds, SelectedValues } from '../program-integration-interfaces';
import { programList } from './program-list-model';
import * as i0 from "@angular/core";
export declare class LinkProgramComponent implements OnInit {
    private restApiService;
    private snackbar;
    animation: boolean;
    ASSETS: {
        responsibility_center: string;
        case_type: string;
        case_category: string;
        when: string;
        what: string;
        case_resolution_deadline: string;
        case_assignees: string;
        format_evidence: string;
        case_owners: string;
        link_controls: string;
        link_items: string;
        spreadsheet_multiple_category: string;
        recommended_action: string;
        risks: string;
        exception_type: string;
        priority: string;
        associated_risks: string;
        oversight: string;
        add_risk_more_option: string;
        lables: string;
        reviewer: string;
        checkpoints: string;
        assessments: string;
        objectives: string;
        audit: string;
        roles: string;
        approval: string;
        recurring: string;
        lock_scope: string;
        custom_fields: string;
        link_risks: string;
        placeholder: string;
        add_logic: string;
        image_choice: string;
        logic_image_choice: string;
        thank_you_image: string;
        upload: string;
        select_users: string;
        everyone_as_per_category: string;
        bulb: string;
        enter_icon: string;
        im_creating: string;
        notes: string;
        attestations: string;
        risk_category: string;
        issue_type: string;
        type: string;
        search_data: string;
        approval_workflow: string;
        sequential: string;
        round_robin: string;
        anyone: string;
        collaborator: string;
    };
    subCategoriesList: {
        from: number;
        to: number;
        currentPage: number;
        totalPage: number;
        totalRecords: number;
        data: never[];
    };
    responsibilitiesList: {
        from: number;
        to: number;
        currentPage: number;
        totalPage: number;
        totalRecords: number;
        data: never[];
    };
    searchText: {
        program: string;
        category: string;
        responsibility: string;
    };
    selectedValues: SelectedValues;
    selectedIds: SelectedIds;
    submissionLoader: boolean;
    currentCategory: any;
    policy: any;
    currentTab: any;
    mode: string;
    changeTab: EventEmitter<any>;
    updatedProgramDetails: EventEmitter<any>;
    currentBusinessCycle: any;
    loader: boolean;
    programSortBy: 'desc' | 'asc';
    currentList: 'programs' | 'categories' | 'responsibilities';
    unsubscribe: Subject<unknown>;
    save: EventEmitter<any>;
    close: EventEmitter<any>;
    refreshLinkedPolicies: EventEmitter<any>;
    subList: boolean;
    programsList: any;
    set getSelectedProgram(program: any);
    selectedCategories: any[];
    selectedLinkProgram: {
        _id: string;
    };
    hideProgramsList: any;
    searchProgram: any;
    previousSelectedValues: any;
    programData: programList;
    programTypeObject: {
        regulations: number;
        standards: number;
        internal_controls: number;
        others: number;
    };
    displayConfirmationMessage: boolean;
    activeTab: 'regulations' | 'standards' | 'internal_controls' | 'others';
    constructor(restApiService: RestApiService, snackbar: SnackBarService);
    ngOnInit(): void;
    getPrograms(data?: any): void;
    getCategories(data?: any): void;
    changeTabProgram(type: 'regulations' | 'standards' | 'internal_controls' | 'others'): void;
    getResponsibilities(data?: any): void;
    changePage(event: any, type: 'programs' | 'categories' | 'responsibilities'): void;
    searchBy(event: any, type: 'programs' | 'categories' | 'responsibilities'): void;
    selectProgram(event: any, data: any): void;
    selectCategory(event: any, category: any): void;
    selectResponsibility(event: any, data: any): void;
    goBack(from?: 'categories' | 'responsibilities'): void;
    remove(type: 'programs' | 'categories' | 'responsibilities', item: any): void;
    saveChanges(type: 'programs' | 'categories' | 'responsibilities' | 'programsOnly'): void;
    saveChangesFromProgram(event: boolean): void;
    submitprogramIntegration(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<LinkProgramComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LinkProgramComponent, "vc-link-program", never, { "policy": { "alias": "policy"; "required": false; }; "currentTab": { "alias": "currentTab"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "programsList": { "alias": "programsList"; "required": false; }; "getSelectedProgram": { "alias": "selectedProgram"; "required": false; }; "selectedCategories": { "alias": "selectedCategories"; "required": false; }; "selectedLinkProgram": { "alias": "selectedLinkProgram"; "required": false; }; "hideProgramsList": { "alias": "hideProgramsList"; "required": false; }; }, { "changeTab": "changeTab"; "updatedProgramDetails": "updatedProgramDetails"; "save": "save"; "close": "close"; "refreshLinkedPolicies": "refreshLinkedPolicies"; }, never, never, false, never>;
}
