import * as i0 from '@angular/core'; import { OnChanges, EventEmitter, OnInit, ChangeDetectorRef, SimpleChanges, TemplateRef } from '@angular/core'; import { Record as Record$1, UserRatingsWebService, CCRating, LinkResult, SponsoredLinksWebService, AuditWebService } from '@sinequa/core/web-services'; import { SearchService } from '@sinequa/components/search'; import { Query, AppService, ValueItem } from '@sinequa/core/app-utils'; import { Observable } from 'rxjs'; import * as i13 from '@angular/common'; import * as i14 from '@angular/forms'; import * as i15 from '@sinequa/core/intl'; import * as i16 from '@sinequa/components/utils'; import * as i17 from '@sinequa/components/collapse'; declare class ResultExtracts implements OnChanges { record: Record$1; showTextAlways: boolean; showLongExtracts: boolean; hideDate: boolean; maxLongExtracts: number; dateFormat: Intl.DateTimeFormatOptions; text: string | undefined; longExtracts: string[] | undefined; extractsClass: string; ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface IconFormat { icon: string; color?: string; } declare const defaultFormatIcons: Record; declare class ResultIcon implements OnChanges { /** * Record which file extension is displayed as an icon */ record: Record$1; /** * Any forced icon to fetch from the mappings list */ icon?: string; /** * Any icons overriding elements * This will still use the default icons but will patch it with the provided data */ set formatIcons(icons: Record); get formatIcons(): Record; /** * Integer controlling the icon's size */ size: number; /** * Whether the icon should be colorized */ colorize: boolean; otherClass: string; private _formatIcons; iconClass: string | undefined; color: string | undefined; ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultMissingTerms implements OnChanges { searchService: SearchService; record: Record$1; query?: Query; showMustInclude: boolean; missingTerms: string[]; constructor(searchService: SearchService); ngOnChanges(): void; mustInclude(term: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultTitle implements OnChanges { searchService: SearchService; /** The record which title we want to display */ record: Record$1; /** * "open" mode: Display a link which opens the original document (url1) if available, or emits a titleClicked event to perform an action otherwise * "action" mode: Display a link which emits a titleClicked event to perform an action * "open-if-url" mode: Display a link which opens the original document (url1) if available, or displays a SPAN with the title otherwise * "display" mode: Only display a SPAN element (no link) */ titleLinkBehavior: "open" | "action" | "open-if-url" | "display"; /** Optional field name containing the title. Otherwise displayTitle or title are used */ field: string; /** Optional custom target used in the link */ originalDocTarget: string | undefined; /** Column containing the original document's URL */ urlColumn: string; /** Event emitter to perform actions at the parent level */ titleClicked: EventEmitter; title: string; constructor(searchService: SearchService); ngOnChanges(): void; get hasLinkBehaviour(): boolean; /** * A span is shown in "display" mode or "open-if-url" mode when no url is present * A link is shown in all other cases (even in "open" mode with no url, which is equivalent to "action" mode) */ get hasSpanBehaviour(): boolean; get href(): string; get target(): string; get url(): string | undefined; private getTitle; click(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultThumbnail implements OnChanges { private appService; private searchService; record: Record$1; linkBehavior: boolean; thumbnailColumn: string; defaultThumbnail: string; urlColumn: string; thumbnailUrl?: string; href?: string; constructor(appService: AppService, searchService: SearchService); ngOnChanges(): void; onClick(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class UserRating implements OnInit { private userRatingService; private changeDetector; record: Record$1; ratingsColumn: string; averageColumn: string; updateDocWeight: boolean; count: number; values: string; titles: string; caption: string; showAverage: boolean; userRatingIndex: number; averageRatingIndex: number; ratingValues: string[]; constructor(userRatingService: UserRatingsWebService, changeDetector: ChangeDetectorRef); ngOnInit(): void; getCCRating(): CCRating; get messageParams(): { values: { average: string; }; }; getTitle(ratingIndex: number): string; getRating(ratingIndex: number): string; getAverageRating(): string; select(selectedRatingIndex: number): void; private ensureRatingValues; private handleResponse; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SponsoredResults implements OnChanges, OnInit { private appService; private searchService; private sponsoredResultsService; private auditService; private changeDetectorRef; query: Query; sponsoredlinks: LinkResult[]; private lastText; private currentPage?; private linksQuery; private initDone; private webService; constructor(appService: AppService, searchService: SearchService, sponsoredResultsService: SponsoredLinksWebService, auditService: AuditWebService, changeDetectorRef: ChangeDetectorRef); /** * Considers the text of the new query and sees if the list of the sponsored lists needs to be updated. * * @param text The text of the new query. * @memberof SponsoredLinks */ private updateSponsoredLinksIfNecessary; /** * Retrieves the web service for sponsored links. * If it is defined both in the component configuration and the app configuration, * this method returns the one in the component configuration. * * @returns the web service for sponsored links. */ private getWebService; ngOnChanges(changes: SimpleChanges): void; private initialize; ngOnInit(): void; auditLinksDisplay(): void; click(link: LinkResult): void; private getUrl; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultsCounter { rowCount: number; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultSource { searchService: SearchService; record: Record$1; treepathColumn: string; displayTreepath: boolean; displayTreepathMinLevel: number; displayTreepathMaxLevel: number; urlColumn: string; displayUrl: boolean; constructor(searchService: SearchService); get source(): ValueItem[]; get url(): string; get urlDecoded(): string; select(item: ValueItem): boolean; notifyClick(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultDuplicatesComponent implements OnChanges { record: Record$1; exactDuplicates: number; nearDuplicates: number; ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultDuplicatesListComponent implements OnChanges { searchService: SearchService; appService: AppService; record: Record$1; duplicateTpl?: TemplateRef; duplicates$: Observable | undefined; searching: boolean; constructor(searchService: SearchService, appService: AppService); ngOnChanges(): void; getGroupByFields(): string[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultDuplicatesSpacerComponent { set record(record: Record$1); isDuplicate: boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ResultModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } declare const enResult: any; declare const frResult: any; declare const deResult: any; export { ResultDuplicatesComponent, ResultDuplicatesListComponent, ResultDuplicatesSpacerComponent, ResultExtracts, ResultIcon, ResultMissingTerms, ResultModule, ResultSource, ResultThumbnail, ResultTitle, ResultsCounter, SponsoredResults, UserRating, deResult, defaultFormatIcons, enResult, frResult }; export type { IconFormat };