import * as _sinequa_core_web_services from '@sinequa/core/web-services'; import { UserSettingsWebService, Results, AuditEvents, Aggregation, AggregationItem, Filter, ExprFilter, NumericalFilter, Suggestion, EngineType, ListAggregation, TreeAggregation, TreeAggregationNode, CCColumn, Select } from '@sinequa/core/web-services'; import * as rxjs from 'rxjs'; import { Subject, Observable, Subscription } from 'rxjs'; import * as i0 from '@angular/core'; import { Type, InjectionToken, EventEmitter, TemplateRef, OnInit, OnChanges, OnDestroy, DoCheck, AfterContentInit, QueryList, ComponentRef, ChangeDetectorRef, AfterViewInit, ElementRef, SimpleChanges, ModuleWithProviders } from '@angular/core'; import * as i16 from '@sinequa/components/action'; import { Action, IAction } from '@sinequa/components/action'; import * as i18 from '@sinequa/components/autocomplete'; import { SuggestService } from '@sinequa/components/autocomplete'; import * as i17 from '@sinequa/components/search'; import { SearchService, FirstPageService } from '@sinequa/components/search'; import { AppService, FormatService, Query } from '@sinequa/core/app-utils'; import * as i13 from '@sinequa/core/intl'; import { IntlService } from '@sinequa/core/intl'; import { StrictUnion, MapOf } from '@sinequa/core/base'; import * as i14 from '@sinequa/components/utils'; import { Placement, UIService, Expr } from '@sinequa/components/utils'; import { UserPreferences } from '@sinequa/components/user-settings'; import * as i12 from '@angular/forms'; import { FormGroup, FormControl, UntypedFormBuilder, UntypedFormGroup, AbstractControl } from '@angular/forms'; import * as i19 from '@angular-slider/ngx-slider'; import { Options, LabelType, ChangeContext } from '@angular-slider/ngx-slider'; import * as i11 from '@angular/common'; import * as i15 from '@sinequa/components/collapse'; import * as i20 from '@sinequa/core/load-component'; interface FacetConfig { /** type of component that should be displayed */ type: string; /** aggregation(s) used by this facet */ aggregation: string | string[]; /** technical name for this facet */ name?: string; /** display title */ title?: string; /** icon class */ icon?: string; /** tabs in which this facet should be displayed */ includedTabs?: string[]; /** tabs in which this facet should not be displayed */ excludedTabs?: string[]; className?: string; /** List of parameters specific to this facet configuration */ parameters?: StrictUnion; } declare const DEFAULT_FACET_COMPONENTS: MapOf>; interface FacetState { name: string; position: number; } interface NamedFacetConfig extends FacetConfig<{}> { name: string; } /** * Options for the [[FacetService.AddFilter]] and [[FacetService.AddFilterSearch]] methods * * and: If multiple items are filtered, determines whether they are filtered as AND or OR * not: Whether this is an exclusion of the filtered item * replaceCurrent: if true, the current filter is replaced */ interface AddFilterOptions { and?: boolean; not?: boolean; replaceCurrent?: boolean; forceAdd?: boolean; } declare const enum FacetEventType { Loaded = "Facet_Loaded", Add = "Facet_Added", AddAll = "Facets_Added", Remove = "Facet_Removed", RemoveAll = "Facets_Removed", SetDefaults = "Facets_SetDefaults", Patched = "Facet_Patched", ClearFilters = "Facet_ClearFilters", AddFilter = "Facet_AddFilter", RemoveFilter = "Facet_RemoveFilter", Open = "Facet_TreeOpen" } declare const FACET_CHANGE_EVENTS: FacetEventType[]; interface FacetChangeEvent { type: FacetEventType; query?: Query; facet?: FacetState; } declare const ALL_FACETS: InjectionToken; declare const DEFAULT_FACETS: InjectionToken; declare class FacetService { protected userSettingsService: UserSettingsWebService; protected searchService: SearchService; protected suggestService: SuggestService; protected appService: AppService; protected intlService: IntlService; protected formatService: FormatService; protected firstPageService: FirstPageService; allFacets: NamedFacetConfig[]; defaultFacets: FacetState[]; protected readonly _events: Subject; protected readonly _changes: Subject; constructor(userSettingsService: UserSettingsWebService, searchService: SearchService, suggestService: SuggestService, appService: AppService, intlService: IntlService, formatService: FormatService, firstPageService: FirstPageService, allFacets: NamedFacetConfig[], defaultFacets: FacetState[]); /** * Returns the list of this user's facets. * The list is stored in the user settings (this is a redirection). * Using this service creates the list of facets if it does not already exist. */ get facets(): FacetState[]; /** * @returns a facet with the given name or undefined if it does not exist * @param name */ facet(name: string | undefined): FacetState | undefined; /** * Returns the list of facet config in the given container (position) * @param position (default to 0 if there is a single container) */ getFacets(position: number | undefined, results: Results): FacetConfig<{}>[]; isFacetIncluded(facet: FacetConfig<{}>, results: Results): boolean; /** * Returns true if this facet is opened (in any container) * @param facetName */ isFacetOpened(name: any): boolean; protected facetIndex(name: string | undefined): number; /** * Triggers any events regarding the facets */ get events(): Subject; /** * Triggers when events affect the list of facets * Cf. CHANGE_EVENTS list */ get changes(): Subject; addFacet(facet: FacetState): void; removeFacet(facet: FacetState): void; setDefaultFacets(): void; addAllFacets(): void; removeAllFacets(): void; updateFacets(type: FacetEventType, facet?: FacetState): void; createFacetMenu(): Action; /** * Updates facets in User settings. * @param auditEvents : Audit Events to be triggered * @returns an Observable which can be used to trigger further events */ protected patchFacets(auditEvents?: AuditEvents): rxjs.Subscription; /** * Verify that the search service can search the given query on the current route. * - check that the query is the search service query * - check that the route is a search route * - check that the query is not an empty search */ canSearch(query: Query): boolean | undefined; /** * Filter/Exclude an item in a facet and launch a search. * Triggers an internal event and an Audit Event * @param facetName * @param aggregation * @param items * @param options */ addFilterSearch(aggregation: Aggregation, items: AggregationItem | AggregationItem[], options?: AddFilterOptions, query?: Query, facetName?: string): Promise; /** * Filter/Exclude one or more item(s) in a facet (without launching a search) * @param facetName * @param aggregation * @param items * @param options * @param query the query on which to add the filter (defaults to search service query) */ addFilter(aggregation: Aggregation, items: AggregationItem | AggregationItem[], options?: AddFilterOptions, query?: Query): boolean; applyFilterSearch(filter: Filter, query?: Query, replaceCurrent?: boolean, facetName?: string): void; applyFilter(filter: Filter, query?: Query, replaceCurrent?: boolean): void; protected getFields(filter: Filter): string[]; protected toFilter(item: AggregationItem, aggregation: Aggregation): Filter; /** * Clears the query from the current filters on the given facet * @param field * @param query the query to clear from the facet filters (defaults to search service query) */ clearFilters(field: string, query?: Query): void; /** * Clears the query from the current selection on the given facet and perform a search * @param facetName */ clearFiltersSearch(fields: string | string[], all: boolean, query?: Query, facetName?: string): Promise; /** * Remove a filter and update the appropriate Select if it was previously included in a selection * @param aggregation the aggregation that contains the item to remove * @param item the aggregation item to remove from the query * @param query the query on which to remove the filter (defaults to search service query) */ removeFilter(aggregation: Aggregation, item: AggregationItem, query?: Query): Filter | undefined; /** * Removes the aggregation from the search service query and refresh the search * @param aggregation * @param item */ removeFilterSearch(aggregation: Aggregation, item: AggregationItem, query?: Query, facetName?: string): Promise; makeRangeFilter(field: string, start: Date | number | string | undefined, end: Date | number | string | undefined, fromOperator?: 'gte' | 'eq'): ExprFilter | NumericalFilter | undefined; /** * Queries the server for data for this aggregation * @param aggregation * @param skip * @param count * @param query the query to use to fetch the data (default to search service query) */ loadData(aggregation: Aggregation, query?: Query, searchInactive?: boolean): Observable; /** * Get suggestions given a text and a field name, using the Suggest service * @param text * @param field * @param suggestQuery */ suggest(text: string, field: string, query?: Query): Observable; /** * Returns true if this facet has at least one active selection * filtering the search * @param field */ hasFiltered(field: string | string[], query?: Query): boolean; /** * Returns an active selection of this facet filtering the search * Returns it as a filter * @param field */ findFilter(field: string | string[], query?: Query): Filter | undefined; /** * Look for an aggregation with the given name in the search results and returns it. * If this.searchService.results is used, then it takes care of initializing the aggregation items to insert their $column property. * If not, fallback to results?.aggregations since $aggregationMap will never exists * @param aggregationName * @param results The search results can be provided explicitly or taken from the SearchService implicitly. */ getAggregation(aggregationName: string, results?: ({ sort: string; tabs: { name: string; value: string; count: number; display: string; }[]; pageSize: number; aggregations: ({ name: string; items: ({ value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; } | ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; }))[]; column: string; $filtered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; } | { name: string; items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; column: string; $filtered: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; hasChildren?: boolean | undefined; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; })[]; id: string; page: number; rowCount: number; totalRowCount: number; cursorRowCount: number; columnCount: number; tab: string; attributes: { processingtime: string; rowfetchtime: string; cachehit: string; matchingrowcount: string; queryid?: string | undefined; searchid?: string | undefined; internalqueryanalysis?: string | undefined; internalquerylog?: string | undefined; }; queryIntents: _sinequa_core_web_services.QueryIntent[]; records: { id: string; $selected: boolean; matchlocations: string[]; rank: number; databasealias: string; matchingpartnames: string[]; matchlocationsperpartname: { matchlocations: { data: string; partname: string; }[]; }[]; documentlanguages: string[]; documentweight: string; modified: string; indexationtime: string; version: string; title: string; size: number; treepath: string[]; filename: string; fileext: string; flags: string[]; collection: string[]; docformat: string; url1: string; text: string; authors: string[]; rfmEnabled: boolean; termspresence: { term: string; presence: "found" | "missing"; }[]; $isDuplicate: boolean; $duplicateCount: number; globalrelevance?: number | undefined; displayTitle?: string | undefined; doctype?: string | undefined; url2?: string | undefined; relevantExtracts?: string | undefined; extracts?: { score: number; highlighted: string; locations: string; originalLocations: string; partname?: string | undefined; }[] | undefined; accesslists?: { accessListIndices: number[]; authorizedLists: { domain: string; id: string; }[]; deniedLists: { domain: string; id: string; }[]; } | undefined; thumbnailUrl?: string | undefined; originalUrl?: string | undefined; pdfUrl?: string | undefined; rfm?: { click?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; like?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; important?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; } | undefined; groupcount?: number | undefined; nearhash?: string | undefined; exacthash?: string | undefined; containerid?: string | undefined; $page?: number | undefined; matchingpassages?: { passages: { id: number; score: number; location: number[]; rlocation: number[]; highlightedText: string; $expanded?: boolean | undefined; }[]; } | undefined; $hasPassages?: boolean | undefined; }[]; queryName: string; hasRelevance: boolean; attributeCount?: number | undefined; scope?: string | undefined; didYouMean?: { text: { original: string; corrected: string; appliedChanges?: { correction: string; form: string; action?: "correction" | "expansion" | "suggestion" | undefined; }[] | undefined; }; spellingCorrectionMode: "default" | "classic" | "smart" | "correct" | "dymonly" | "force" | "false"; } | undefined; queryAnalysis?: { text: string; initial: boolean; elements: _sinequa_core_web_services.QueryAnalysisElement[]; queryLanguage?: string | undefined; } | undefined; rfmQueryHash?: string | undefined; statements?: string[] | undefined; answers?: { answers: { score: number; text: string; passage: { id: number; location: number[]; rlocation: number[]; highlightedText: string; }; recordId: string; "af.score": number; "rm.score": number; $record?: { id: string; $selected: boolean; matchlocations: string[]; rank: number; databasealias: string; matchingpartnames: string[]; matchlocationsperpartname: { matchlocations: { data: string; partname: string; }[]; }[]; documentlanguages: string[]; documentweight: string; modified: string; indexationtime: string; version: string; title: string; size: number; treepath: string[]; filename: string; fileext: string; flags: string[]; collection: string[]; docformat: string; url1: string; text: string; authors: string[]; rfmEnabled: boolean; termspresence: { term: string; presence: "found" | "missing"; }[]; $isDuplicate: boolean; $duplicateCount: number; globalrelevance?: number | undefined; displayTitle?: string | undefined; doctype?: string | undefined; url2?: string | undefined; relevantExtracts?: string | undefined; extracts?: { score: number; highlighted: string; locations: string; originalLocations: string; partname?: string | undefined; }[] | undefined; accesslists?: { accessListIndices: number[]; authorizedLists: { domain: string; id: string; }[]; deniedLists: { domain: string; id: string; }[]; } | undefined; thumbnailUrl?: string | undefined; originalUrl?: string | undefined; pdfUrl?: string | undefined; rfm?: { click?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; like?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; important?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; } | undefined; groupcount?: number | undefined; nearhash?: string | undefined; exacthash?: string | undefined; containerid?: string | undefined; $page?: number | undefined; matchingpassages?: { passages: { id: number; score: number; location: number[]; rlocation: number[]; highlightedText: string; $expanded?: boolean | undefined; }[]; } | undefined; $hasPassages?: boolean | undefined; } | undefined; $liked?: boolean | undefined; }[]; } | null | undefined; topPassages?: { passages?: { id: number; score: number; location: [number, number]; text: string; recordId: string; index: string; $record?: { id: string; $selected: boolean; matchlocations: string[]; rank: number; databasealias: string; matchingpartnames: string[]; matchlocationsperpartname: { matchlocations: { data: string; partname: string; }[]; }[]; documentlanguages: string[]; documentweight: string; modified: string; indexationtime: string; version: string; title: string; size: number; treepath: string[]; filename: string; fileext: string; flags: string[]; collection: string[]; docformat: string; url1: string; text: string; authors: string[]; rfmEnabled: boolean; termspresence: { term: string; presence: "found" | "missing"; }[]; $isDuplicate: boolean; $duplicateCount: number; globalrelevance?: number | undefined; displayTitle?: string | undefined; doctype?: string | undefined; url2?: string | undefined; relevantExtracts?: string | undefined; extracts?: { score: number; highlighted: string; locations: string; originalLocations: string; partname?: string | undefined; }[] | undefined; accesslists?: { accessListIndices: number[]; authorizedLists: { domain: string; id: string; }[]; deniedLists: { domain: string; id: string; }[]; } | undefined; thumbnailUrl?: string | undefined; originalUrl?: string | undefined; pdfUrl?: string | undefined; rfm?: { click?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; like?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; important?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; } | undefined; groupcount?: number | undefined; nearhash?: string | undefined; exacthash?: string | undefined; containerid?: string | undefined; $page?: number | undefined; matchingpassages?: { passages: { id: number; score: number; location: number[]; rlocation: number[]; highlightedText: string; $expanded?: boolean | undefined; }[]; } | undefined; $hasPassages?: boolean | undefined; } | undefined; answer?: string | undefined; answerScore?: number | undefined; }[] | undefined; } | null | undefined; } & { $aggregationMap: Record> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; } | ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; }))[]; column: string; $filtered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; } | { name: string; items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; column: string; $filtered: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; hasChildren?: boolean | undefined; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; }>; }) | undefined): ListAggregation | TreeAggregation | undefined; /** * Opens a Tree node of the given tree facet by querying data from the server * Takes care of initializing the Node aggregation items to insert their properties ($column, $path, $opened, $level) * @param facetName * @param aggregation * @param item * @param levelCallback A callback method called at every level of the tree. * Can be used to read or alter the properties of the nodes (opening, closing), or node list (sorting) */ open(aggregation: TreeAggregation, item: TreeAggregationNode, query?: Query, searchInactive?: boolean, facetName?: string): Observable; protected getAggregationNode(nodes: TreeAggregationNode[], path: string): TreeAggregationNode | undefined; /** * Convert Suggestion to AggregationItem * @param suggest a Suggestion object * * @returns AggregationItem object with is `$column` property defined. * On boolean type, convert `value` property to boolean */ suggestionToAggregationItem(suggest: Suggestion): AggregationItem; /** * Converts a list of suggestions into a structure of TreeAggregationNodes * @param suggests Suggestions to convert * @param searchTerm The searched term in the suggestions * @param aggregation The tree aggregations */ suggestionsToTreeAggregationNodes(suggests: Suggestion[], searchTerm: string, aggregation: Aggregation | undefined): TreeAggregationNode[]; /** * Utility recursive function to generate a tree aggregation structure from * a list of suggestions */ protected addNode(items: TreeAggregationNode[], path2node: Map, parentPath: string, path: string, count: number, level: number, matchend: number, column: CCColumn | undefined): void; /** * This function returns the query that was used to generate the given data. * If the results object is the "first page", then it was obtained from a blank search * If the results object is the searchService.results, then it was obtained from the searchService.query * It could also be an unrelated query so we return sensible defaults */ getDataQuery(results: Results, query?: Query): Query; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * This interface should be implemented by facet components, which expose * a list of actions and event listeners */ declare abstract class AbstractFacet { /** * List of custom actions of this facet */ get actions(): Action[]; /** * Event emitter triggered when the list of action changes */ actionsChanged: EventEmitter; /** * Template for the settings editor of this facet, if any */ settingsTpl?: TemplateRef; /** * Template for header of this facet, if any */ headerTpl?: TemplateRef; /** * Template for a sub-header of this facet, if any. This appears below the header */ subHeaderTpl?: TemplateRef; /** * Template for footer of this facet, if any */ footerTpl?: TemplateRef; /** * Method called when a facet is collapsed */ onCollapse(collapsed: boolean): void; /** * Method called when a facet is resized via an action (not accounting for window resizing) */ onExpand(expanded: boolean): void; /** * Method called when the settings of this facet are opened */ onOpenSettings(settingsOpened: boolean): void; /** * Method enabling the facet component to be hidden (if, for example there is no data to display) */ isHidden(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class FacetViewDirective { readonly template: TemplateRef; viewOptions?: IAction; default?: boolean; constructor(template: TemplateRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class BsFacetCard implements OnInit, OnChanges, OnDestroy, DoCheck, AfterContentInit { prefs: UserPreferences; /** * Title of this facet (optional) */ title: string; /** * Tooltip of this facet (defaults to title) */ tooltip: string; /** * Icon of this facet, in a form of a span class name (optional) */ icon: string; /** * List of custom actions for this facet (optional) */ actions: Action[]; /** * List of secondary actions */ secondaryActions: Action[]; /** * Whether the [actions]="..." passed by binding should be displayed before or after * the actions from the inner facet component */ actionsFirst: boolean; /** * Whether the actions from the inner facet components are to be treated as secondary */ facetActionsAreSecondary: boolean; /** * Whether the actions for switching between views are to be treated as secondary */ viewActionsAreSecondary: boolean; /** * Bootstrap theme name (light, dark...) */ buttonsStyle?: string; viewButtonsStyle?: string; secondaryButtonsStyle?: string; /** * Size of the custom actions */ actionsSize: string; viewActionsSize?: string; secondaryActionsSize: string; /** * Class applied to the button groups */ actionsClass?: string; viewActionsClass?: string; secondaryActionsClass?: string; /** * Whether the facet can be collapsed (default: true) */ collapsible: boolean; /** * Whether the facet starts collapsed (if collapsible / default: false) */ startCollapsed: boolean; /** * Whether other actions should be hidden when the facet is collapsed (default: true) */ hideActionsCollapsed: boolean; /** * A name to save the collapse status in the preferences to save it for next sessions */ preference?: string; /** * Whether the facet can be expanded (default: false) */ expandable: boolean; /** * Whether the facet starts expanded (if expandable / default: false) */ startExpanded: boolean; /** * Facet will collapse automatically once clicking outside of it */ collapseOnClickOutside: boolean; /** * Whether the facet starts with opened settings (default: false) */ startSettingsOpened: boolean; /** * Default placement of the title of All actions, if not specified in the action itself */ defaultTooltipPlacement: Placement; /** * Default fallback placements of the title of All actions, if not specified in the action itself */ defaultTooltipFallbackPlacements: Placement[]; /** * Event triggered when the facet gets expanded or reduced */ facetExpanded: EventEmitter<"expanded" | "reduced">; /** * Event triggered when the facet gets expanded or reduced */ facetCollapsed: EventEmitter<"expanded" | "collapsed">; /** * Event triggered when the facet gets expanded or reduced */ settingsOpened: EventEmitter<"opened" | "saved" | "canceled">; /** * Reference to the child facet inserted by transclusion (ng-content) */ facetQuery: QueryList; views: QueryList; view: FacetViewDirective; viewActions: Action[]; headerTpl?: TemplateRef; subHeaderTpl?: TemplateRef; footerTpl: TemplateRef; settingsTpl: TemplateRef; /** * Concluded reference to child facet inserted by transclusion AND which its content is also loaded by transclusion */ _facetComponent: AbstractFacet | undefined; _collapsed: boolean; _expanded: boolean; _settingsOpened: boolean; get hidden(): boolean; allActions: Action[]; allSecondaryActions: Action[]; readonly collapseAction: any; readonly expandAction: any; readonly settingsAction: any; private subs; constructor(prefs: UserPreferences); ngOnInit(): void; ngOnChanges(): void; ngAfterContentInit(): void; ngDoCheck(): void; ngOnDestroy(): void; updateFacetComponent(): void; get facetComponent(): AbstractFacet | undefined; set facetComponent(facet: AbstractFacet | undefined); updateViews(): void; setView(view: FacetViewDirective): void; updateActions(): void; getActions(): Action[]; getSecondaryActions(): Action[]; _oldActions: Action[] | undefined; protected actionsChanged(): boolean; get hideActions(): boolean; updateClickOutside(): void; onClickOutside?: () => void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BsFacetBar { facetService: FacetService; results: Results; containerIndex: number; facetComponents: MapOf>; constructor(facetService: FacetService); get facets(): FacetConfig<{}>[]; onFacetLoad(facetCard: BsFacetCard, componentRef: { componentRef: ComponentRef | undefined; }): void; getFacetInputs(facet: FacetConfig<{}>): MapOf; getComponent(type: string): Type | undefined; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BsFacetFilters implements OnChanges, OnDestroy { private facetService; private cdRef; results: Results; facets: FacetConfig<{}>[]; facetComponents: MapOf>; enableCustomization: boolean; autoAdjust: boolean; autoAdjustBreakpoint: string; collapseBreakpoint: string; rightAligned: boolean; size: string; filters: Action[]; facetMenu: Action | undefined; openedFacet: FacetConfig<{}> | undefined; facetInstance: AbstractFacet | undefined; sub: Subscription; constructor(facetService: FacetService, cdRef: ChangeDetectorRef); ngOnChanges(): void; ngOnDestroy(): void; /** * Build filters bar actions */ protected buildFilters(): void; openFacet(facet: FacetConfig<{}>): void; onLoadFacet(event: { componentRef: ComponentRef | undefined; }): void; get isFacetEmpty(): boolean; get filteredFacets(): FacetConfig<{}>[]; get userFacets(): FacetState[]; get hasFacetSelected(): boolean; trackByData: (action: Action) => any; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface FacetListParams { showCount?: boolean; searchable?: boolean; focusSearch?: boolean; allowExclude?: boolean; allowOr?: boolean; allowAnd?: boolean; displayEmptyDistributionIntervals?: boolean; acceptNonAggregationItemFilter?: boolean; replaceCurrent?: boolean; suggestQuery?: string; } interface FacetListConfig extends FacetConfig { type: 'list'; } declare class BsFacetList extends AbstractFacet implements FacetListParams, OnChanges, OnDestroy, AfterViewInit { protected searchService: SearchService; protected facetService: FacetService; protected changeDetectorRef: ChangeDetectorRef; name: string; results: Results; query?: Query; aggregation: string; showCount: boolean; searchable: boolean; focusSearch: boolean; allowExclude: boolean; allowOr: boolean; allowAnd: boolean; displayEmptyDistributionIntervals: boolean; acceptNonAggregationItemFilter: boolean; replaceCurrent: boolean; expandedLevel: number; searchInput: ElementRef; /** * Template used with content projection strategy, allowing user to customize each list item * When not set, the default list item renderer is used. * * @example * ```typescript * * *
  • {{ item.value }}
  • * *
    * ``` */ itemTpl?: TemplateRef; items: (AggregationItem | TreeAggregationNode)[]; data: ListAggregation | TreeAggregation | undefined; suggests: Suggestion[] | undefined; selected: AggregationItem[]; searchGroup: FormGroup<{ searchQuery: FormControl; }>; suggestDelay: number; searchActive: Subject; showCheckbox: boolean; constructor(searchService: SearchService, facetService: FacetService, changeDetectorRef: ChangeDetectorRef); /** * OnChanges listener awaits new results from the search service * This completely resets the display * @param changes */ ngOnChanges(changes: SimpleChanges): void; sub: Subscription; ngOnDestroy(): void; ngAfterViewInit(): void; updateItems(): void; protected updateTreeItems(filtered: AggregationItem[], selected: AggregationItem[]): void; protected updateListItems(filtered: AggregationItem[], selected: AggregationItem[]): void; /** * Called when clicking on a facet item text * @param item * @param event */ filterItem(item: AggregationItem, event?: Event): boolean; addFilter(item: AggregationItem | AggregationItem[], options?: AddFilterOptions): void; removeFilter(item: AggregationItem): void; clearAllFilters(): void; /** * Called when selecting/unselecting an item in the facet * @param item */ selectItem(item: AggregationItem): void; /** * Called on loadMore button click */ loadMore(): boolean; /** * Expand/Collapse a Tree node (the data may need to downloaded from the server) * @param item */ open(item: TreeAggregationNode, event: Event): boolean; expandItems(items: TreeAggregationNode[]): void; get searchControl(): FormControl; onSearch(text: string): Observable; clearSearch(): void; /** * Uses the `suggestfield` API to retrieve suggestions from the server * The suggestions **override** the data from the distribution (until search results are cleared) */ getSuggests(text: string, data: Aggregation): Observable; protected whileSearchActive(observable: Observable): Observable; protected compareItems(a: AggregationItem, b: AggregationItem): boolean; /** * Finds and removes an item from the given array of aggregation items. * * @param items - The array of aggregation items to search through * @param item - The aggregation item to find and remove * @returns `true` if the item was found and removed, `false` otherwise * * @remarks * This method uses `compareItems()` to determine item equality and modifies * the input array by removing the first matching item if found. */ protected findAndSplice(items: AggregationItem[], item: AggregationItem): boolean; isHidden(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface FacetRefineParams { suggestQuery?: string; autocompleteEnabled?: boolean; suggestDelay?: number; } interface FacetRefineConfig extends FacetConfig { type: 'refine'; } declare class BsRefine extends AbstractFacet implements FacetRefineParams, OnChanges { formBuilder: UntypedFormBuilder; appService: AppService; searchService: SearchService; facetService: FacetService; /** * Results of the search page associated to this refine */ results: Results; _query?: Query; /** * Whether or not to enable autocompletion */ autocompleteEnabled: boolean; /** * Suggest query with which to perform autocompletion */ _suggestQuery: string; /** * Minimum delay (in ms) between suggest queries */ suggestDelay: number; form: UntypedFormGroup; searchControl: AbstractControl; inputErrorMessage: string; get query(): Query; get suggestQuery(): string; constructor(formBuilder: UntypedFormBuilder, appService: AppService, searchService: SearchService, facetService: FacetService); ngOnChanges(changes: SimpleChanges): void; doRefine: () => void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare enum RoundTarget { number = 0, year = 1, month = 2, week = 3,// ISO day = 4 } declare enum RoundType { up = 0, down = 1, nearest = 2 } interface StepDef { step: string; format: string; minRange: string; active: boolean; } interface FacetRangeParams { min?: string | number | Date; max?: string | number | Date; stepDefs?: StepDef[]; } interface FacetRangeConfig extends FacetConfig { type: 'range'; } declare class BsFacetRange extends AbstractFacet implements FacetRangeParams, OnChanges, AfterViewInit, OnDestroy { private facetService; protected appService: AppService; protected formatService: FormatService; protected intlService: IntlService; protected uiService: UIService; name?: string; results: Results; query?: Query; aggregation: string; min: string | number | Date; max: string | number | Date; stepDefs: StepDef[]; slider: ElementRef; data: Aggregation | undefined; options: Options; value: number; highValue: number; startValue: number; startHighValue: number; sliderActive: boolean; rangeActive: boolean; rangeSelected: boolean; manualRefresh: EventEmitter; initDone: boolean; protected column: CCColumn | undefined; protected roundTarget: RoundTarget; protected roundMultiple: number; protected localeChange: Subscription; protected format: string; clearFiltersAction: Action; applyFiltersAction: Action; constructor(facetService: FacetService, appService: AppService, formatService: FormatService, intlService: IntlService, uiService: UIService); protected translate: (value: number, label: LabelType) => string; protected roundAdjustment(value: number, multiple: number, roundType: RoundType): number; protected _roundNumberUp(value: number, step: number): number; protected _roundNumberDown(value: number, step: number): number; protected _roundNumber(value: number, step: number, roundType: RoundType): number; protected _getNearestDate(date: Date, upper: Date, lower: Date): Date; protected _getNearestTargetDate(date: Date, target: RoundTarget): Date; protected _round(value: number, step: number, target: RoundTarget, multiple: number, roundType?: RoundType): number; protected round(value: number, roundType?: RoundType): number; protected roundDown(value: number): number; protected roundUp(value: number): number; protected roundNearest(value: number): number; private fixDate; protected initMinMax(): void; protected parseValue(value: string | number | Date): number; protected initStep(): void; protected getRoundTarget(step: number): { roundTarget: RoundTarget; roundMultiple: number; }; protected init(): void; ngOnChanges(changes: SimpleChanges): void; protected onResize: () => void; ngAfterViewInit(): void; ngOnDestroy(): void; onUserChangeEnd(changeContext: ChangeContext): void; getRange(): (number | undefined)[]; setRange(from: number | undefined, to: number | undefined): void; applyRange(): void; clearRange(): void; get actions(): Action[]; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare interface FacetMultiConfig extends FacetConfig<{ displayEmptyDistributionIntervals?: boolean; }> { $count: number; $hasMore: boolean; $hasFiltered: boolean; $hidden: boolean; $fields: string[]; $disabled?: boolean; } declare class BsFacetMultiComponent extends AbstractFacet implements OnChanges, OnDestroy { facetService: FacetService; private changeDetectorRef; results: Results; query?: Query; facets: FacetMultiConfig[]; facetComponents: MapOf>; showCount: boolean; name: string; icon: string; title: string; events: EventEmitter; /** * A reference to the facet child component */ facetComponent?: AbstractFacet; /** * The facet configuration to open */ openedFacet?: FacetMultiConfig; /** * Action to switch back from an opened facet to the facet multi view */ backAction: Action; clearAllFiltersAction: Action; facetComponentInputs: MapOf; subscription: Subscription; constructor(facetService: FacetService, changeDetectorRef: ChangeDetectorRef); /** * If a sub-facet is opened, add a Back button and forward * the actions of the facet. */ get actions(): Action[]; /** * Return the actions of the child facet */ get facetActions(): Action[]; /** * Open this sub facet * @param facet */ openFacet(facet: FacetMultiConfig): void; close(): void; clearFacetFilters(facet: FacetMultiConfig, e: Event): boolean; initFacet(facet: FacetMultiConfig): void; /** * When the results change, actualize count, hasData and hasFiltered * which are displayed in the template. * Also, update list of inputs passed to child facets */ ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; onFacetLoad(componentRef: { componentRef: ComponentRef | undefined; }): void; getFacetInputs(): MapOf; get component(): Type | undefined; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface FacetTagCloudParams { limit?: number; uniformRepartition?: boolean; showCount?: boolean; proportionalWeight?: boolean; countThreshold?: number; shuffleData?: boolean; isolateFacetFilters?: boolean; } interface FacetTagCloudConfig extends FacetConfig { type: 'tag-cloud'; } interface TagCloudItem { aggregation: Aggregation; item: AggregationItem; weight: number; } declare class BsFacetTagCloud extends AbstractFacet implements FacetTagCloudParams, OnChanges { private facetService; /** search results */ results: Results; /** Search query modified by this facet */ query?: Query; /** list of aggregations to be considered in collecting tag-cloud data */ aggregation: string | string[]; /** maximum number of data to be displayed in tag-cloud */ limit: number; /** the way data are collected from given aggregations: equal repartition between them or most relevant among all of them */ uniformRepartition: boolean; /** show/hide number of occurrences of each item*/ showCount: boolean; /** define the size of each displayed item: common size for all or proportional size based on their count */ proportionalWeight: boolean; /** lowest count under which items will not be taken into account in tag-cloud data */ countThreshold: number; /** wether data are rendered following their count sorting or randomly */ shuffleData: boolean; /** Optional facet name, for audit and facet customization */ name: string; aggregationsData: Aggregation[]; tagCloudData: TagCloudItem[]; hasFiltered: boolean; private readonly clearFilters; private readonly defaultWeight; constructor(facetService: FacetService); ngOnChanges(): void; /** * Defines the tag-cloud data according to given inputs */ getTagCloudData(): TagCloudItem[]; /** * Invoked on click on an item in order to update the query * @param tagCloudItem * @param event */ filterItem(tagCloudItem: TagCloudItem, event: Event): void; /** * Define the possible actions according to the actual context */ get actions(): Action[]; /** * Map the initial aggregations names to a list of Aggregation */ protected getAggregationsData(): Aggregation[]; /** * Linearly map the original weight to a discrete scale from 1 to 10 * @param weight original weight */ private scaleItemWeight; /** * Shuffle items of the supplied array * @param arr */ private shuffle; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class FacetContainerComponent implements OnChanges, OnDestroy { appService: AppService; facetService: FacetService; searchService: SearchService; firstPageService: FirstPageService; cdRef: ChangeDetectorRef; results?: Results; query?: Query; facetComponents: Record>; facetConfigs: FacetConfig[]; buttonClass: string; facetOpen: EventEmitter; buttonList: ElementRef; openedFacet: FacetConfig | undefined; facetInputs: MapOf | undefined; facetInstance: AbstractFacet | undefined; facetList: { config: FacetConfig; filters: number; classes: {}; disabled: boolean; }[]; _resultsMode: 'current' | 'all'; get resultsMode(): "current" | "all"; set resultsMode(mode: 'current' | 'all'); subscription: Subscription; constructor(appService: AppService, facetService: FacetService, searchService: SearchService, firstPageService: FirstPageService, cdRef: ChangeDetectorRef); ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; updateFacetList(): void; open(facet: FacetConfig): void; close(): void; setFacetInputs(): void; onLoadComponent(event: { componentRef: ComponentRef | undefined; }): void; get isFacetEmpty(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "sq-facet-container", never, { "results": { "alias": "results"; "required": false; }; "query": { "alias": "query"; "required": false; }; "facetComponents": { "alias": "facetComponents"; "required": false; }; "facetConfigs": { "alias": "facetConfigs"; "required": false; }; "buttonClass": { "alias": "buttonClass"; "required": false; }; }, { "facetOpen": "facetOpen"; }, never, never, false, never>; } interface FacetMySearchParams { allowDeletion?: boolean; displayFieldNames?: boolean; collapsible?: boolean; useBadges?: boolean; ignoreText?: boolean; excludedFacets?: (string | undefined)[]; } interface FacetMySearchConfig extends FacetConfig { type: 'my-search'; } type FilterScalarOperator = 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'like' | 'contains' | 'regex' | 'null' | 'notnull'; type FilterRangeOperator = 'in' | 'between'; type FilterExprOperator = 'and' | 'or' | 'not'; type FilterOperator = FilterScalarOperator | FilterRangeOperator | FilterExprOperator; type LegacyFilter = { display: string; field: string; filters?: LegacyFilter | LegacyFilter[]; operator?: FilterOperator; values?: string[]; value?: string; start?: string | number; end?: string | number; }; type MySearchExpr = { expr?: Expr; display: Expr | string; filter?: LegacyFilter; select?: Select; }; declare class BsMySearch extends AbstractFacet implements FacetMySearchParams, OnChanges { results: Results; /** Display icon to delete items */ allowDeletion: boolean; /** Display each item's field */ displayFieldNames: boolean; /** Make the div collapsible */ collapsible: boolean; /** Add a badge likely style to items */ useBadges: boolean; /** Wether we Ignore text and fielded search */ ignoreText: boolean; /** * Items of those facets will be excluded * @deprecated Facet are not used anymore * */ excludedFacets: (string | undefined)[]; collapsed: boolean; items: MySearchExpr[]; fields: string[]; clearAction: Action; searchService: SearchService<{ sort: string; tabs: { name: string; value: string; count: number; display: string; }[]; pageSize: number; aggregations: ({ name: string; items: ({ value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; } | ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; }))[]; column: string; $filtered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; } | { name: string; items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; column: string; $filtered: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; hasChildren?: boolean | undefined; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; })[]; id: string; page: number; rowCount: number; totalRowCount: number; cursorRowCount: number; columnCount: number; tab: string; attributes: { processingtime: string; rowfetchtime: string; cachehit: string; matchingrowcount: string; queryid?: string | undefined; searchid?: string | undefined; internalqueryanalysis?: string | undefined; internalquerylog?: string | undefined; }; queryIntents: _sinequa_core_web_services.QueryIntent[]; records: { id: string; $selected: boolean; matchlocations: string[]; rank: number; databasealias: string; matchingpartnames: string[]; matchlocationsperpartname: { matchlocations: { data: string; partname: string; }[]; }[]; documentlanguages: string[]; documentweight: string; modified: string; indexationtime: string; version: string; title: string; size: number; treepath: string[]; filename: string; fileext: string; flags: string[]; collection: string[]; docformat: string; url1: string; text: string; authors: string[]; rfmEnabled: boolean; termspresence: { term: string; presence: "found" | "missing"; }[]; $isDuplicate: boolean; $duplicateCount: number; globalrelevance?: number | undefined; displayTitle?: string | undefined; doctype?: string | undefined; url2?: string | undefined; relevantExtracts?: string | undefined; extracts?: { score: number; highlighted: string; locations: string; originalLocations: string; partname?: string | undefined; }[] | undefined; accesslists?: { accessListIndices: number[]; authorizedLists: { domain: string; id: string; }[]; deniedLists: { domain: string; id: string; }[]; } | undefined; thumbnailUrl?: string | undefined; originalUrl?: string | undefined; pdfUrl?: string | undefined; rfm?: { click?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; like?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; important?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; } | undefined; groupcount?: number | undefined; nearhash?: string | undefined; exacthash?: string | undefined; containerid?: string | undefined; $page?: number | undefined; matchingpassages?: { passages: { id: number; score: number; location: number[]; rlocation: number[]; highlightedText: string; $expanded?: boolean | undefined; }[]; } | undefined; $hasPassages?: boolean | undefined; }[]; queryName: string; hasRelevance: boolean; attributeCount?: number | undefined; scope?: string | undefined; didYouMean?: { text: { original: string; corrected: string; appliedChanges?: { correction: string; form: string; action?: "correction" | "expansion" | "suggestion" | undefined; }[] | undefined; }; spellingCorrectionMode: "default" | "classic" | "smart" | "correct" | "dymonly" | "force" | "false"; } | undefined; queryAnalysis?: { text: string; initial: boolean; elements: _sinequa_core_web_services.QueryAnalysisElement[]; queryLanguage?: string | undefined; } | undefined; rfmQueryHash?: string | undefined; statements?: string[] | undefined; answers?: { answers: { score: number; text: string; passage: { id: number; location: number[]; rlocation: number[]; highlightedText: string; }; recordId: string; "af.score": number; "rm.score": number; $record?: { id: string; $selected: boolean; matchlocations: string[]; rank: number; databasealias: string; matchingpartnames: string[]; matchlocationsperpartname: { matchlocations: { data: string; partname: string; }[]; }[]; documentlanguages: string[]; documentweight: string; modified: string; indexationtime: string; version: string; title: string; size: number; treepath: string[]; filename: string; fileext: string; flags: string[]; collection: string[]; docformat: string; url1: string; text: string; authors: string[]; rfmEnabled: boolean; termspresence: { term: string; presence: "found" | "missing"; }[]; $isDuplicate: boolean; $duplicateCount: number; globalrelevance?: number | undefined; displayTitle?: string | undefined; doctype?: string | undefined; url2?: string | undefined; relevantExtracts?: string | undefined; extracts?: { score: number; highlighted: string; locations: string; originalLocations: string; partname?: string | undefined; }[] | undefined; accesslists?: { accessListIndices: number[]; authorizedLists: { domain: string; id: string; }[]; deniedLists: { domain: string; id: string; }[]; } | undefined; thumbnailUrl?: string | undefined; originalUrl?: string | undefined; pdfUrl?: string | undefined; rfm?: { click?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; like?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; important?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; } | undefined; groupcount?: number | undefined; nearhash?: string | undefined; exacthash?: string | undefined; containerid?: string | undefined; $page?: number | undefined; matchingpassages?: { passages: { id: number; score: number; location: number[]; rlocation: number[]; highlightedText: string; $expanded?: boolean | undefined; }[]; } | undefined; $hasPassages?: boolean | undefined; } | undefined; $liked?: boolean | undefined; }[]; } | null | undefined; topPassages?: { passages?: { id: number; score: number; location: [number, number]; text: string; recordId: string; index: string; $record?: { id: string; $selected: boolean; matchlocations: string[]; rank: number; databasealias: string; matchingpartnames: string[]; matchlocationsperpartname: { matchlocations: { data: string; partname: string; }[]; }[]; documentlanguages: string[]; documentweight: string; modified: string; indexationtime: string; version: string; title: string; size: number; treepath: string[]; filename: string; fileext: string; flags: string[]; collection: string[]; docformat: string; url1: string; text: string; authors: string[]; rfmEnabled: boolean; termspresence: { term: string; presence: "found" | "missing"; }[]; $isDuplicate: boolean; $duplicateCount: number; globalrelevance?: number | undefined; displayTitle?: string | undefined; doctype?: string | undefined; url2?: string | undefined; relevantExtracts?: string | undefined; extracts?: { score: number; highlighted: string; locations: string; originalLocations: string; partname?: string | undefined; }[] | undefined; accesslists?: { accessListIndices: number[]; authorizedLists: { domain: string; id: string; }[]; deniedLists: { domain: string; id: string; }[]; } | undefined; thumbnailUrl?: string | undefined; originalUrl?: string | undefined; pdfUrl?: string | undefined; rfm?: { click?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; like?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; important?: { status: _sinequa_core_web_services.RFMDisplay; eventCount: number; average: number; image: _sinequa_core_web_services.RFMDisplay; imageAction: _sinequa_core_web_services.RFMDisplay; availableActions: _sinequa_core_web_services.RFMDisplay; } | undefined; } | undefined; groupcount?: number | undefined; nearhash?: string | undefined; exacthash?: string | undefined; containerid?: string | undefined; $page?: number | undefined; matchingpassages?: { passages: { id: number; score: number; location: number[]; rlocation: number[]; highlightedText: string; $expanded?: boolean | undefined; }[]; } | undefined; $hasPassages?: boolean | undefined; } | undefined; answer?: string | undefined; answerScore?: number | undefined; }[] | undefined; } | null | undefined; } & { $aggregationMap: Record> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; } | ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; }))[]; column: string; $filtered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; } | { name: string; items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; column: string; $filtered: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & { items: ({ value: string; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; hasChildren?: boolean | undefined; $path?: string | undefined; $opened?: boolean | undefined; $opening?: boolean | undefined; $level?: number | undefined; } & any)[]; })[]; $cccount: number; $remainingFiltered: { value: string | number | boolean | null; count: number; display?: string | undefined; score?: number | undefined; operatorResults?: Partial> | undefined; $selected?: boolean | undefined; $excluded?: boolean | undefined; $filtered?: boolean | undefined; $column?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; }[]; hasChildren?: boolean | undefined; isDistribution?: boolean | undefined; isTree?: boolean | undefined; valuesAreExpressions?: boolean | undefined; $ccaggregation?: { name: string; column: string; includeInStandardSearch: boolean; count: number; order: string; mask: string; distribution: string; tabBehavior: "" | "Default" | "LoadForSelectedTab" | "LoadForAllTabs"; keySeparator: string; displayKeySeparator: string; } | undefined; $cccolumn?: { name: string; type: string; eType: EngineType; eTypeModifier: _sinequa_core_web_services.EngineTypeModifier; description?: string | undefined; aliases?: string[] | undefined; label?: string | undefined; labelPlural?: string | undefined; formatter?: string | undefined; transforms?: string | undefined; parser?: string | undefined; typeModifier?: string | undefined; } | undefined; $hasMore?: boolean | undefined; }>; }>; appService: AppService; formatService: FormatService; intlService: IntlService; facetService: FacetService; ngOnChanges(changes: SimpleChanges): void; protected initFilters(): void; private traverseFilters; private makeBreadcrumbsItemFromDistributionFilter; private processFilter; private makeBreadcrumbsItemFromExpr; protected getField(item: any): string; removeItem(item: any): void; get isEmpty(): boolean; get actions(): Action[]; protected clear(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class BsFacetModule { static forRoot(allFacets?: NamedFacetConfig[], defaultFacets?: FacetState[]): ModuleWithProviders; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } declare const enFacet: any; declare const frFacet: any; declare const deFacet: any; export { ALL_FACETS, AbstractFacet, BsFacetBar, BsFacetCard, BsFacetFilters, BsFacetList, BsFacetModule, BsFacetMultiComponent, BsFacetRange, BsFacetTagCloud, BsMySearch, BsRefine, DEFAULT_FACETS, DEFAULT_FACET_COMPONENTS, FACET_CHANGE_EVENTS, FacetContainerComponent, FacetEventType, FacetService, FacetViewDirective, RoundTarget, RoundType, deFacet, enFacet, frFacet }; export type { AddFilterOptions, FacetChangeEvent, FacetConfig, FacetListConfig, FacetListParams, FacetMySearchConfig, FacetMySearchParams, FacetRangeConfig, FacetRangeParams, FacetRefineConfig, FacetRefineParams, FacetState, FacetTagCloudConfig, FacetTagCloudParams, NamedFacetConfig, StepDef, TagCloudItem };