/**
 * 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 { WorkspaceType } from '@finos/legend-server-sdlc';
export declare enum LEGEND_STUDIO_QUERY_PARAMS {
    EDITOR_CONFIG = "editorConfig"
}
export declare enum LEGEND_STUDIO_ROUTE_PATTERN_TOKEN {
    SHOWCASE_PATH = "showcasePath",
    PROJECT_ID = "projectId",
    PATCH_RELEASE_VERSION_ID = "patchReleaseVersionId",
    WORKSPACE_ID = "workspaceId",
    GROUP_WORKSPACE_ID = "groupWorkspaceId",
    REVISION_ID = "revisionId",
    VERSION_ID = "versionId",
    REVIEW_ID = "reviewId",
    ENTITY_PATH = "entityPath",
    GAV = "gav"
}
export declare const LEGEND_STUDIO_ROUTE_PATTERN: Readonly<{
    VIEW: "/view/:projectId";
    VIEW_BY_ENTITY: "/view/:projectId/entity/:entityPath";
    VIEW_BY_REVISION: "/view/:projectId/revision/:revisionId";
    VIEW_BY_VERSION: "/view/:projectId/version/:versionId";
    VIEW_BY_REVISION_ENTITY: "/view/:projectId/revision/:revisionId/entity/:entityPath";
    VIEW_BY_VERSION_ENTITY: "/view/:projectId/version/:versionId/entity/:entityPath";
    REVIEW: "/review/:projectId/:reviewId";
    PATCH_REVIEW: "/review/:projectId/patches/:patchReleaseVersionId/:reviewId";
    EDIT_WORKSPACE: "/edit/:projectId/:workspaceId/";
    EDIT_PATCH_WORKSPACE: "/edit/:projectId/patches/:patchReleaseVersionId/:workspaceId/";
    EDIT_WORKSPACE_ENTITY: "/edit/:projectId/:workspaceId/entity/:entityPath";
    EDIT_PATCH_WORKSPACE_ENTITY: "/edit/:projectId/patches/:patchReleaseVersionId/:workspaceId/entity/:entityPath";
    EDIT_GROUP_WORKSPACE: "/edit/:projectId/groupWorkspace/:groupWorkspaceId/";
    EDIT_PATCH_GROUP_WORKSPACE: "/edit/:projectId/patches/:patchReleaseVersionId/groupWorkspace/:groupWorkspaceId/";
    EDIT_GROUP_WORKSPACE_ENTITY: "/edit/:projectId/groupWorkspace/:groupWorkspaceId/entity/:entityPath";
    EDIT_PATCH_GROUP_WORKSPACE_ENTITY: "/edit/:projectId/patches/:patchReleaseVersionId/groupWorkspace/:groupWorkspaceId/entity/:entityPath";
    SETUP_WORKSPACE: "/setup/:projectId?/:workspaceId?";
    SETUP_PATCH_WORKSPACE: "/setup/:projectId/patches/:patchReleaseVersionId?/:workspaceId?";
    SETUP_GROUP_WORKSPACE: "/setup/:projectId/groupWorkspace/:groupWorkspaceId/";
    SETUP_PATCH_GROUP_WORKSPACE: "/setup/:projectId/patches/:patchReleaseVersionId?/groupWorkspace/:groupWorkspaceId/";
    TEXT_GROUP_WORKSPACE: "/text/:projectId/groupWorkspace/:groupWorkspaceId/";
    TEXT_WORKSPACE: "/text/:projectId/:workspaceId/";
}>;
export declare const LEGEND_STUDIO_SDLC_BYPASSED_ROUTE_PATTERN: Readonly<{
    VIEW_BY_GAV: "/view/archive/:gav";
    VIEW_BY_GAV_ENTITY: "/view/archive/:gav/entity/:entityPath";
    PREVIEW_BY_GAV_ENTITY: "/view/archive/:gav/entity/:entityPath/preview";
    SHOWCASE: "/showcase/:showcasePath";
    PCT_REPORT: "/pct";
}>;
export type ProjectReviewerPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PROJECT_ID]: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.REVIEW_ID]: string;
};
export type ProjectViewerPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.GAV]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PROJECT_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.VERSION_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.REVISION_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.ENTITY_PATH]?: string;
};
export type ShowcaseViewerPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.SHOWCASE_PATH]?: string;
};
export type StudioQueryParams = {
    [LEGEND_STUDIO_QUERY_PARAMS.EDITOR_CONFIG]?: string;
};
export type WorkspaceEditorPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PROJECT_ID]: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PATCH_RELEASE_VERSION_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.WORKSPACE_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.GROUP_WORKSPACE_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.ENTITY_PATH]?: string;
};
export type LazyTextEditorPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PROJECT_ID]: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.WORKSPACE_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.GROUP_WORKSPACE_ID]?: string;
};
export type WorkspaceSetupPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PROJECT_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.PATCH_RELEASE_VERSION_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.WORKSPACE_ID]?: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.GROUP_WORKSPACE_ID]?: string;
};
export type ElementPreviewPathParams = {
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.GAV]: string;
    [LEGEND_STUDIO_ROUTE_PATTERN_TOKEN.ENTITY_PATH]: string;
};
export declare const generateSetupRoute: (projectId: string | undefined, patchReleaseVersionId: string | undefined, workspaceId?: string | undefined, workspaceType?: WorkspaceType | undefined) => string;
export declare const generateEditorRoute: (projectId: string, patchReleaseVersionId: string | undefined, workspaceId: string, workspaceType: WorkspaceType, entityPath?: string | undefined) => string;
export declare const generateReviewRoute: (projectId: string, reviewId: string) => string;
export declare const generateViewProjectRoute: (projectId: string) => string;
export declare const generateViewEntityRoute: (projectId: string, entityPath: string) => string;
export declare const generateViewVersionRoute: (projectId: string, versionId: string, entityPath?: string | undefined) => string;
export declare const generateViewRevisionRoute: (projectId: string, revisionId: string, entityPath?: string | undefined) => string;
export declare const generateViewProjectByGAVRoute: (groupId: string, artifactId: string, versionId: string | undefined, entityPath?: string | undefined) => string;
export declare const generateElementPreviewRoute: (groupId: string, artifactId: string, versionId: string | undefined, entityPath: string) => string;
/**
 * @external_application_navigation This depends on Legend Query routing and is hardcoded so it's potentially brittle
 */
export declare const EXTERNAL_APPLICATION_NAVIGATION__generateServiceQueryCreatorUrl: (queryApplicationUrl: string, groupId: string, artifactId: string, versionId: string, servicePath: string) => string;
export declare const generateShowcasePath: (showcasePath: string) => string;
export declare const EXTERNAL_APPLICATION_NAVIGATION__generateUrlWithEditorConfig: (base: string, editorConfig: string) => string;
//# sourceMappingURL=LegendStudioNavigation.d.ts.map