@finos/legend-application-studio
Version:
Legend Studio application core
114 lines • 5.32 kB
TypeScript
/**
* 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 { EditorState } from './EditorState.js';
import { type GeneratorFn, ActionState } from '@finos/legend-shared';
import type { EditorStore } from '../EditorStore.js';
import { type Entity } from '@finos/legend-storage';
import type { ModelImporterExtensionConfiguration } from '../../LegendStudioApplicationPlugin.js';
import { type ExternalFormatDescription, type PureModel, SchemaSet } from '@finos/legend-graph';
import { InnerSchemaSetEditorState } from './element-editor-state/external-format/DSL_ExternalFormat_SchemaSetEditorState.js';
export declare enum MODEL_IMPORT_NATIVE_INPUT_TYPE {
ENTITIES = "ENTITIES",
PURE_PROTOCOL = "PURE_PROTOCOL",
PURE_GRAMMAR = "PURE_GRAMMAR"
}
export declare enum MODEL_IMPORT_TYPE {
NATIVE = "NATIVE",
EXTERNAL_FORMAT = "EXTERNAL_FORMAT",
EXTENSIONS = "EXTENSIONS"
}
export declare abstract class ModelImporterEditorState {
readonly editorStore: EditorStore;
readonly modelImporterState: ModelImporterState;
readonly loadModelActionState: ActionState;
constructor(modelImporterState: ModelImporterState);
abstract get label(): string;
abstract get allowHardReplace(): boolean;
abstract get isLoadingDisabled(): boolean;
abstract loadModel(): Promise<void>;
}
export declare class NativeModelImporterEditorState extends ModelImporterEditorState {
nativeType: MODEL_IMPORT_NATIVE_INPUT_TYPE;
modelText: string;
loadCurrentProjectActionState: ActionState;
constructor(modelImporterState: ModelImporterState);
get label(): string;
get allowHardReplace(): boolean;
get isLoadingDisabled(): boolean;
setModelText(val: string): void;
setNativeImportType(nativeImportType: MODEL_IMPORT_NATIVE_INPUT_TYPE): void;
getNativeImportExampleText(inputType: MODEL_IMPORT_NATIVE_INPUT_TYPE): string;
loadEntites(): Promise<Entity[]>;
loadCurrentProjectEntities(): GeneratorFn<void>;
private getExampleEntitiesInputText;
private getExamplePureProtocolInputText;
private getExamplePureGrammarText;
loadModel(): Promise<void>;
}
export declare class ExecuteInputDebugModelImporterEditorState extends ModelImporterEditorState {
executeInput: string;
executablePath: string;
readonly loadState: ActionState;
constructor(modelImporterState: ModelImporterState);
get label(): string;
get allowHardReplace(): boolean;
get isLoadingDisabled(): boolean;
setExecuteInput(val: string): void;
setExecutablePath(val: string): void;
loadModel(): Promise<void>;
}
export declare abstract class ExtensionModelImportRendererState {
importerState: ModelImporterState;
constructor(importerState: ModelImporterState);
}
export declare class ExtensionModelImporterEditorState extends ModelImporterEditorState {
config: ModelImporterExtensionConfiguration;
rendererState: ExtensionModelImportRendererState;
constructor(config: ModelImporterExtensionConfiguration, rendererState: ExtensionModelImportRendererState, modelImporterState: ModelImporterState);
get label(): string;
get allowHardReplace(): boolean;
get isLoadingDisabled(): boolean;
setExtension(extensionConfiguration: ModelImporterExtensionConfiguration): void;
loadModel(): Promise<void>;
}
export declare class ExternalFormatModelImporterState extends ModelImporterEditorState {
schemaSet: SchemaSet;
schemaSetEditorState: InnerSchemaSetEditorState;
description: ExternalFormatDescription;
isolatedSchemaGraph: PureModel;
constructor(description: ExternalFormatDescription, modelImporterState: ModelImporterState);
get allowHardReplace(): boolean;
get label(): string;
get isLoadingDisabled(): boolean;
setDescription(val: ExternalFormatDescription): void;
setExternalFormat(description: ExternalFormatDescription): void;
loadModel(): Promise<void>;
}
export declare class ModelImporterState extends EditorState {
replace: boolean;
modelImportEditorState: ModelImporterEditorState;
extensionConfigs: ModelImporterExtensionConfiguration[];
constructor(editorStore: EditorStore);
get label(): string;
match(tab: EditorState): boolean;
setReplaceFlag(val: boolean): void;
setImportEditorState(val: ModelImporterEditorState): void;
setNativeImportType(nativeImportType: MODEL_IMPORT_NATIVE_INPUT_TYPE): NativeModelImporterEditorState;
setExternalFormatImportFormat(externalFormat: ExternalFormatDescription): ExternalFormatModelImporterState;
setModelImporterExtension(extension: ModelImporterExtensionConfiguration): ExtensionModelImporterEditorState;
setExecuteInputDebugModelImporter(): void;
}
//# sourceMappingURL=ModelImporterState.d.ts.map