/**
 * Copyright (c) 2020-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 GeneratorFn, ActionState, UserSearchService } from '@finos/legend-shared';
import { type ApplicationStore } from '@finos/legend-application';
import { DepotServerClient } from '@finos/legend-server-depot';
import { MarketplaceServerClient, RegistryServerClient, TerminalAccessServerClient } from '@finos/legend-server-marketplace';
import { type V1_EngineServerClient, V1_PureGraphManager, V1_RemoteEngine } from '@finos/legend-graph';
import type { LegendMarketplaceApplicationConfig } from '../application/LegendMarketplaceApplicationConfig.js';
import type { LegendMarketplacePluginManager } from '../application/LegendMarketplacePluginManager.js';
import { LakehouseContractServerClient, LakehouseIngestServerClient, LakehousePlatformServerClient, LakehouseWorkflowServerClient, PermitWorkflowServerClient } from '@finos/legend-server-lakehouse';
import { CartStore } from './cart/CartStore.js';
import { PendingTasksCache } from './lakehouse/PendingTasksCache.js';
import { type LegendMarketplaceEnvState } from './LegendMarketplaceEnvState.js';
import { ProductCardState } from './lakehouse/dataProducts/ProductCardState.js';
import { LakehouseDataProductService } from './lakehouse/LakehouseDataProductService.js';
export type LegendMarketplaceApplicationStore = ApplicationStore<LegendMarketplaceApplicationConfig, LegendMarketplacePluginManager>;
export declare class LegendMarketplaceBaseStore {
    readonly applicationStore: LegendMarketplaceApplicationStore;
    readonly envState: LegendMarketplaceEnvState;
    readonly adjacentEnvState: LegendMarketplaceEnvState | undefined;
    readonly marketplaceServerClient: MarketplaceServerClient;
    readonly depotServerClient: DepotServerClient;
    readonly lakehouseContractServerClient: LakehouseContractServerClient;
    readonly lakehousePlatformServerClient: LakehousePlatformServerClient;
    readonly lakehouseIngestServerClient: LakehouseIngestServerClient;
    readonly engineServerClient: V1_EngineServerClient;
    readonly registryServerClient: RegistryServerClient | undefined;
    readonly pluginManager: LegendMarketplacePluginManager;
    readonly remoteEngine: V1_RemoteEngine;
    readonly userSearchService: UserSearchService | undefined;
    readonly lakehouseWorkflowServerClient: LakehouseWorkflowServerClient;
    readonly permitWorkflowServerClient: PermitWorkflowServerClient | undefined;
    readonly lakehouseDataProductService: LakehouseDataProductService;
    readonly cartStore: CartStore;
    readonly terminalAccessServerClient: TerminalAccessServerClient;
    readonly pendingTasksCache: PendingTasksCache;
    readonly initState: ActionState;
    showDemoModal: boolean;
    constructor(applicationStore: LegendMarketplaceApplicationStore);
    buildAdjacentEnvState(): LegendMarketplaceEnvState | undefined;
    private buildVendorImageMap;
    createInitializedGraphManager(): Promise<V1_PureGraphManager>;
    private parseDataProductEntries;
    initHighlightedDataProducts(token: string | undefined): Promise<Record<string, ProductCardState[]> | undefined>;
    fetchTrendingDataProducts(token: string | undefined): Promise<Record<string, ProductCardState[]> | undefined>;
    setDemoModal(val: boolean): void;
    initialize(): GeneratorFn<void>;
}
//# sourceMappingURL=LegendMarketplaceBaseStore.d.ts.map