import * as _c8y_client from '@c8y/client'; import { IManagedObject, IResultList } from '@c8y/client'; import * as _c8y_ngx_components from '@c8y/ngx-components'; import { SearchFilters, Column, Pagination, ActionControl, BulkActionControl, GridConfigContextProvider, DataGridComponent, FeatureCacheService, UserPreferencesGridConfigContext, DataSourceModifier, ServerSideDataResult, FilteringActionType, FilteringModifier, AlertService, RouterService, ColumnConfig } from '@c8y/ngx-components'; import * as rxjs from 'rxjs'; import { BehaviorSubject, UnaryFunction, Observable } from 'rxjs'; import * as i0 from '@angular/core'; import { EventEmitter, OnDestroy, OnInit, ModuleWithProviders } from '@angular/core'; import * as i2 from '@c8y/ngx-components/device-grid'; import * as i3 from '@c8y/ngx-components/data-grid-columns/asset-type'; import { AssetTypeGridColumn } from '@c8y/ngx-components/data-grid-columns/asset-type'; import * as _angular_router from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router'; declare class AssetSearchService { GRID_CONFIG_STORAGE_KEY: string; DEFAULT_PAGE_SIZE: number; getGlobalSearchData: any; appliedFilters$: BehaviorSubject<{ [SearchFilters.ALL_FILTERS]: boolean; [SearchFilters.ONLY_GROUPS_AND_ASSETS]: boolean; [SearchFilters.ONLY_DEVICES]: boolean; [SearchFilters.CURRENT_HIERARCHY]: boolean; }>; private queriesUtil; private featureCacheService; private deviceGridService; private assetNodeService; private contextRouteService; constructor(); /** * Resets the status of applied filters, used during the search. * Applies only to filters: 'All', 'Show only devices', 'Show only groups and assets'. */ resetAppliedFilters(): void; buildCombinedRootQueryFilter(columns: Column[], pagination: Pagination): _c8y_client.QueryObjectWithDedicatedFilter | _c8y_client.QueryObjectFilterComparison | { [x: string]: _c8y_client.QueryObjectFilterComparison[]; }; getData(columns: Column[], pagination: Pagination, text?: string): Promise; getDefaultColumns(): Column[]; getDefaultActionControls(): ActionControl[]; getDefaultBulkActionControls(): BulkActionControl[]; getDefaultPagination(): Pagination; isWildcardSearchEnabled(): Promise; private buildSearchQuery; /** * Get search data based on the provided text and pagination. * @param text The search text. * @param pagination The pagination options. * @returns The search results. */ private getSearchData; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } /** * Configuration object of the SearchModule. */ interface SearchConfig { /** * Allows to enable advanced filters. * Default value: true. */ showAdvancedFilters?: boolean; /** * Allows a custom placeholder. * Default value: '' */ placeholder?: string; } declare class SearchGridComponent implements GridConfigContextProvider { parentGroup: IManagedObject; title: string; loadingItemsLabel: string; set _columns(value: Column[]); set _pagination(value: Pagination); set _actionControls(value: ActionControl[]); selectable: boolean; set _bulkActionControls(value: BulkActionControl[]); onColumnsChange: EventEmitter; searchText: string; filteringName: string; /** The name of the key where columns configuration will be stored. */ columnsConfigKey: string; moduleConfig: SearchConfig; showAdvancedFilters: boolean; customPlaceholder: string; columns: Column[]; assetSearchService: AssetSearchService; pagination: Pagination; actionControls: ActionControl[]; bulkActionControls: BulkActionControl[]; serverSideDataCallback: any; refresh: EventEmitter; dataGrid: DataGridComponent; featureCacheService: FeatureCacheService; isWildcardSearchEnabled$: rxjs.Observable; wildcardSearchTitle: "Asset data"; fullTextSearchTitle: "Search results"; private sizeCount; private bsModalService; private smartGroupsService; private subAssetsGridService; getGridConfigContext(): UserPreferencesGridConfigContext; ngOnInit(): void; ngAfterViewInit(): void; trackByName(_index: any, column: Column): string; onDataSourceModifier(dataSourceModifier: DataSourceModifier): Promise; setActionControls(): void; updateFiltering(columnNames: string[], action: { type: FilteringActionType; payload?: { filteringModifier: FilteringModifier; }; }): void; onColumnFilterReset(column: Column): void; private onDeleteAsset; private setInitialFilterForTypeColumn; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SearchResultsComponent implements OnDestroy { private route; private alert; filter: string; searchText: string; searchGrid: SearchGridComponent; filteringName: string; featureCacheService: FeatureCacheService; isWildcardSearchEnabled$: rxjs.Observable; private readonly WARNING_TIMEOUT_TIME; private unsubscribe$; constructor(route: ActivatedRoute, alert: AlertService); ngOnInit(): void; ngAfterViewInit(): void; resetSearch(): void; resetFilter(): void; ngOnDestroy(): void; private onQueryParamsChange; private shouldFilter; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SearchActionComponent { showAdvancedFilters: boolean; customPlaceholder: string; customQuery: UnaryFunction>>; typeaheadReload: EventEmitter; featureCacheService: FeatureCacheService; isWildcardSearchEnabled$: Observable; c8yRouter: RouterService; router: Router; moduleConfig: SearchConfig; isOnlyHierarchyQuery: boolean; constructor(); triggerDataLoad(): void; onOpenChange(isOpen: boolean): void; onSearch(on: string): Promise; onFilter(on: string): void; onClick(mo: IManagedObject): void; private navigate; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } type Checkbox = { label: string; name: string; value: boolean; indeterminate?: boolean; isDisabled?: boolean; }; declare class SearchCustomFiltersComponent implements OnInit { useTabs: boolean; customDataQuery: EventEmitter; refresh: EventEmitter; tabNames: { all: "All"; devices: "Devices"; groupsAndAssets: "Groups and assets"; }; selectedTab: (typeof this.tabNames)[keyof typeof this.tabNames]; checkboxesState: Array; isOnlyHierarchyQuery: boolean; isOnlyHierarchyQueryChange: EventEmitter; private assetSearchService; private contextRouteService; private router; contextRouteData$: rxjs.Observable<_angular_router.Data & _c8y_ngx_components.ContextData>; context$: rxjs.Observable<_c8y_ngx_components.ContextData | (_angular_router.Data & _c8y_ngx_components.ContextData)>; ngOnInit(): void; onCheckboxChange(event: Event, checkbox: Checkbox): void; onTabChange(tabName?: (typeof this.tabNames)[keyof typeof this.tabNames]): void; onHierarchyQueryChange(checked: boolean): void; onSearchFilterChange(all: boolean, devices: boolean, groupsAndAssets: boolean, currentHierarchy?: boolean): void; private saveCheckboxValue; private onSelectAll; private onAllDevices; private onGroupsAndAssets; private getCheckbox; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class SearchModule { static config(config?: SearchConfig): ModuleWithProviders; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } declare class AssetTypeSearchGridColumn extends AssetTypeGridColumn { constructor(hideExtendedFilters: boolean, initialColumnConfig?: ColumnConfig, assetSearchService?: AssetSearchService, customPlaceholder?: string); private getFilteringConfig; } export { AssetSearchService, AssetTypeSearchGridColumn, SearchCustomFiltersComponent, SearchGridComponent, SearchModule, SearchResultsComponent }; export type { Checkbox }; //# sourceMappingURL=index.d.ts.map