import { OnInit, OnChanges, SimpleChanges, AfterViewInit, OnDestroy, ElementRef, EventEmitter } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { MatLegacyDialog as MatDialog } from '@angular/material/legacy-dialog';
import { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';
import { NsWidgetResolver } from '@sunbird-cb/resolver-v2';
import { NsContent } from '../../../../_services/widget-content.model';
import { RatingService } from '../../../../_services/rating.service';
import { LoggerService, ConfigurationsService, WidgetContentService } from '@sunbird-cb/utils-v2';
import { AppTocService } from '../../../../services/app-toc.service';
import { TimerService } from '../../../../services/timer.service';
import { HandleClaimService } from '../content-services/handle-claim.service';
import { LoadCheckService } from '../../../../services/load-check.service';
import { ReviewComponentDataService } from '../content-services/review-component-data.service';
import { ResetRatingsService } from '../../../../services/reset-ratings.service';
import { NsContentStripWithTabs } from '../../../../models/content-strip-with-tabs.model';
import { DiscussUtilsService } from '../../../../services/discuss-utils.service';
import * as i0 from "@angular/core";
interface IStripUnitContentData {
    key: string;
    canHideStrip: boolean;
    mode?: string;
    showStrip: boolean;
    widgets?: NsWidgetResolver.IRenderConfigWithAnyData[];
    stripTitle: string;
    stripTitleLink?: {
        link: string;
        icon: string;
    };
    sliderConfig?: {
        showNavs: boolean;
        showDots: boolean;
        maxWidgets?: number;
    };
    tabs?: NsContentStripWithTabs.IContentStripTab[] | undefined;
    stripName?: string;
    stripLogo?: string;
    description?: string;
    stripInfo?: NsContentStripWithTabs.IStripInfo;
    noDataWidget?: NsWidgetResolver.IRenderConfigWithAnyData;
    errorWidget?: NsWidgetResolver.IRenderConfigWithAnyData;
    showOnNoData: boolean;
    showOnLoader: boolean;
    showOnError: boolean;
    loaderWidgets?: any;
    stripBackground?: string;
    secondaryHeading?: any;
    viewMoreUrl: any;
    sectorWidgets?: any;
}
export declare class AppTocAboutComponent implements OnInit, OnChanges, AfterViewInit, OnChanges, OnDestroy {
    private ratingService;
    private loggerService;
    private dialog;
    private matSnackBar;
    private loadCheckService;
    private timerService;
    private tocSvc;
    private configService;
    private discussUtilitySvc;
    router: Router;
    private reviewDataService;
    private handleClaimService;
    private resetRatingsService;
    private contentSvc;
    private activatedRoute;
    condition: any;
    kparray: any;
    content: NsContent.IContent | null;
    contentReadData: NsContent.IContent | null;
    baseContentReadData: NsContent.IContent | null;
    skeletonLoader: boolean;
    sticky: boolean;
    tocStructure: any;
    pathSet: any;
    config: any;
    resumeData: any;
    forPreview: boolean;
    showReviews: boolean;
    batchData: any;
    fromViewer: boolean;
    selectedBatchData: any;
    selectedTabValue: number;
    fromMarketPlace?: boolean;
    showMarketPlaceCertificate: boolean;
    languageList: any[];
    lockCertificate: boolean;
    fromMDO: boolean;
    trigerCompletionSurveyForm: EventEmitter<boolean>;
    summaryElem: ElementRef;
    objectivesElem: ElementRef;
    descElem: ElementRef;
    tagsElem: ElementRef;
    searchTagElem: ElementRef;
    disableCertificate: boolean;
    isExternalContent: boolean;
    primaryCategory: typeof NsContent.EPrimaryCategory;
    stripsResultDataMap: {
        [key: string]: IStripUnitContentData;
    };
    summary: {
        ellipsis: boolean;
        viewLess: boolean;
    };
    description: {
        ellipsis: boolean;
        viewLess: boolean;
    };
    objectives: {
        ellipsis: boolean;
        viewLess: boolean;
    };
    tagsEllipsis: boolean;
    searchTagsEllipsis: boolean;
    competencySelected: string;
    ratingSummary: any;
    authReplies: any;
    ratingSummaryProcessed: any;
    topRatingReviews: any[];
    ratingReviews: any[];
    latestReviews: any[];
    dialogRef: any;
    displayLoader: boolean;
    disableLoadMore: boolean;
    lookupLoading: Boolean;
    lastLookUp: any;
    ratingLookup: any;
    reviewPage: number;
    reviewDefaultLimit: number;
    lookupLimit: number;
    ratingViewCount: number;
    ratingViewCountDefault: number;
    competenciesObject: any;
    private destroySubject$;
    viewMoreTags: boolean;
    timerUnsubscribe: any;
    downloadCertificateBool: boolean;
    strip: NsContentStripWithTabs.IContentStripUnit;
    timer: any;
    isMobile: boolean;
    compentencyKey: NsContent.ICompentencyKeys;
    sectorsList: any[];
    subSectorsList: any[];
    userProfile: any;
    subSectorDetailArr: any;
    selectedSector: string;
    selectedSectorId: string;
    refreshratingSub: any;
    pageConfigData: any;
    environment: any;
    constructor(ratingService: RatingService, loggerService: LoggerService, dialog: MatDialog, matSnackBar: MatSnackBar, loadCheckService: LoadCheckService, timerService: TimerService, tocSvc: AppTocService, configService: ConfigurationsService, discussUtilitySvc: DiscussUtilsService, router: Router, reviewDataService: ReviewComponentDataService, handleClaimService: HandleClaimService, resetRatingsService: ResetRatingsService, contentSvc: WidgetContentService, activatedRoute: ActivatedRoute, environment: any);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    getSubThemes(): any[];
    loadCompetencies(): void;
    handleShowCompetencies(item: any): void;
    private transformCompetenciesToWidget;
    handleParseJsonData(s: string): any;
    fetchRatingSummary(): void;
    fetchRatingLookup(): void;
    processRatingLookup(response: any): void;
    getAuthorReply(identifier: string, primaryCategory: NsContent.EPrimaryCategory, userIds: any[]): import("rxjs").Subscription;
    countStarsPercentage(value: any, key: any, total: any): string | 0;
    processRatingSummary(): {
        breakDown: any[];
        latest50Reviews: any[];
        ratingsNumber: any[];
        total_number_of_ratings: any;
        avgRating: number;
    };
    handleCapitalize(str: string, type?: string): string;
    handleOpenReviewModal(): void;
    loadMore(selectedReview: string): void;
    navigateToDiscussionHub(): void;
    handleClickOfClaim(event: any): void;
    getCourseIdForCertificate(): string;
    handleOpenCertificateDialog(): void;
    openSurveyFormPopup(): void;
    checkValidJSON(str: any): boolean;
    handleSubsector(item: any): void;
    navigateToNewVersion(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AppTocAboutComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AppTocAboutComponent, "ws-widget-app-toc-about", never, { "condition": { "alias": "condition"; "required": false; }; "kparray": { "alias": "kparray"; "required": false; }; "content": { "alias": "content"; "required": false; }; "contentReadData": { "alias": "contentReadData"; "required": false; }; "baseContentReadData": { "alias": "baseContentReadData"; "required": false; }; "skeletonLoader": { "alias": "skeletonLoader"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; "tocStructure": { "alias": "tocStructure"; "required": false; }; "pathSet": { "alias": "pathSet"; "required": false; }; "config": { "alias": "config"; "required": false; }; "resumeData": { "alias": "resumeData"; "required": false; }; "forPreview": { "alias": "forPreview"; "required": false; }; "showReviews": { "alias": "showReviews"; "required": false; }; "batchData": { "alias": "batchData"; "required": false; }; "fromViewer": { "alias": "fromViewer"; "required": false; }; "selectedBatchData": { "alias": "selectedBatchData"; "required": false; }; "selectedTabValue": { "alias": "selectedTabValue"; "required": false; }; "fromMarketPlace": { "alias": "fromMarketPlace"; "required": false; }; "showMarketPlaceCertificate": { "alias": "showMarketPlaceCertificate"; "required": false; }; "languageList": { "alias": "languageList"; "required": false; }; "lockCertificate": { "alias": "lockCertificate"; "required": false; }; "fromMDO": { "alias": "fromMDO"; "required": false; }; }, { "trigerCompletionSurveyForm": "trigerCompletionSurveyForm"; }, never, never, false, never>;
}
export {};
//# sourceMappingURL=app-toc-about.component.d.ts.map