/**
 * Copyright (c) 2026-present, Goldman Sachs
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import type { LegendMarketplaceBaseStore } from '../LegendMarketplaceBaseStore.js';
import { ActionState, type GeneratorFn } from '@finos/legend-shared';
import { type FieldSearchRequest, type GroupedFieldSearchResponseMetadata } from '@finos/legend-server-marketplace';
import type { DataProductTypeFilter } from './LegendMarketplaceSearchResultsStore.js';
import { FieldSearchResultState } from './fieldSearch/FieldSearchResultState.js';
export declare class LegendMarketplaceFieldSearchResultsStore {
    readonly marketplaceBaseStore: LegendMarketplaceBaseStore;
    searchQuery: string | undefined;
    fieldSearchResultStates: FieldSearchResultState[];
    responseMetadata: GroupedFieldSearchResponseMetadata | undefined;
    page: number;
    itemsPerPage: number;
    errorMessage: string | undefined;
    selectedProductTypes: Set<DataProductTypeFilter>;
    expandedRows: Set<string>;
    readonly loadState: ActionState;
    private _currentFetchToken;
    private _abortController;
    constructor(marketplaceBaseStore: LegendMarketplaceBaseStore);
    setSearchQuery(query: string | undefined): void;
    setFieldSearchResultStates(results: FieldSearchResultState[]): void;
    setResponseMetadata(value: GroupedFieldSearchResponseMetadata | undefined): void;
    setPage(value: number): void;
    setItemsPerPage(value: number): void;
    setErrorMessage(value: string | undefined): void;
    toggleProductType(productType: DataProductTypeFilter): void;
    clearAllFilters(): void;
    toggleExpandRow(rowId: string): void;
    clearExpandedRows(): void;
    isRowExpanded(rowId: string): boolean;
    get fieldSearchRequest(): FieldSearchRequest | undefined;
    get tableRows(): FieldSearchResultState[];
    get totalItems(): number;
    get totalFieldMatches(): number;
    get lakehouseCount(): number;
    get legacyCount(): number;
    get hasActiveFilters(): boolean;
    get isLoading(): boolean;
    get hasFailed(): boolean;
    executeSearch(): GeneratorFn<void>;
    changePageAndFetch(page: number): GeneratorFn<void>;
    changeItemsPerPageAndFetch(itemsPerPage: number): GeneratorFn<void>;
    toggleProductTypeAndFetch(productType: DataProductTypeFilter): GeneratorFn<void>;
    clearAllFiltersAndFetch(): GeneratorFn<void>;
    private fetchFieldSearchResultsInternal;
    dispose(): void;
}
//# sourceMappingURL=LegendMarketplaceFieldSearchResultsStore.d.ts.map