/** * 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 } from '@finos/legend-shared'; import { type Showcase, type ShowcaseMetadata, type ShowcaseTextSearchMatch } from '@finos/legend-server-showcase'; import type { LegendStudioApplicationStore } from './LegendStudioBaseStore.js'; import { ApplicationExtensionState, type GenericLegendApplicationStore } from '@finos/legend-application'; import type { TreeData, TreeNodeData } from '@finos/legend-art'; import { SHOWCASE_LAUNCH_ENTRY_POINT, SHOWCASE_MANAGER_ENTRY_POINT } from '../__lib__/LegendStudioTelemetryHelper.js'; export declare enum SHOWCASE_MANAGER_VIEW { EXPLORER = "EXPLORER", SEARCH = "SEARCH" } export declare enum SHOWCASE_MANAGER_SEARCH_CATEGORY { SHOWCASE = "SHOWCASE", CODE = "CODE" } export declare class ShowcasesExplorerTreeNodeData implements TreeNodeData { isOpen?: boolean | undefined; id: string; label: string; parentId?: string | undefined; childrenIds: string[]; metadata?: ShowcaseMetadata | undefined; constructor(id: string, label: string, parentId: string | undefined, metadata?: ShowcaseMetadata | undefined); } export type ShowcaseTextSearchMatchResult = { match: ShowcaseTextSearchMatch; showcase: ShowcaseMetadata; }; export declare class ShowcaseManagerState extends ApplicationExtensionState { private static readonly IDENTIFIER; readonly applicationStore: LegendStudioApplicationStore; readonly initState: ActionState; readonly fetchShowcaseState: ActionState; readonly textSearchState: ActionState; private readonly showcaseServerClient?; allShowcases: ShowcaseMetadata[] | undefined; currentShowcase?: Showcase | undefined; showcaseLineToScroll?: number | undefined; private currentShowcaseOpenedAt?; currentView: SHOWCASE_MANAGER_VIEW; explorerTreeData?: TreeData | undefined; searchText: string; showcaseSearchResults?: ShowcaseMetadata[] | undefined; textSearchResults?: ShowcaseTextSearchMatchResult[] | undefined; currentSearchCaterogy: SHOWCASE_MANAGER_SEARCH_CATEGORY; constructor(applicationStore: LegendStudioApplicationStore); get INTERNAL__identifierKey(): string; get nonDevShowcases(): ShowcaseMetadata[]; static retrieveNullableState(applicationStore: GenericLegendApplicationStore): ShowcaseManagerState | undefined; static retrieveState(applicationStore: GenericLegendApplicationStore): ShowcaseManagerState; get isEnabled(): boolean; private get client(); setCurrentView(val: SHOWCASE_MANAGER_VIEW): void; openShowcase(metadata: ShowcaseMetadata, showcaseLineToScroll?: number | undefined, entryPoint?: SHOWCASE_LAUNCH_ENTRY_POINT): GeneratorFn; logOpenManager(entryPoint?: SHOWCASE_MANAGER_ENTRY_POINT): void; closeShowcase(): void; setExplorerTreeData(val: TreeData): void; setSearchText(val: string): void; resetSearch(): void; setCurrentSearchCategory(val: SHOWCASE_MANAGER_SEARCH_CATEGORY): void; initialize(): GeneratorFn; search(): GeneratorFn; } export declare const openShowcaseManager: (applicationStore: LegendStudioApplicationStore, entryPoint: SHOWCASE_MANAGER_ENTRY_POINT) => void; //# sourceMappingURL=ShowcaseManagerState.d.ts.map