UNPKG

@finos/legend-application-studio

Version:
125 lines 5.61 kB
/** * 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 EmbeddedData, type ModelData, DataElement, RelationalCSVData, type Database, type RelationalCSVDataTable, DataElementReference, ExternalFormatData, ModelStoreData, ModelEmbeddedData, type RelationElement, RelationElementsData } from '@finos/legend-graph'; import type { EditorStore } from '../../../EditorStore.js'; export declare const createEmbeddedData: (type: string, editorStore: EditorStore) => EmbeddedData; export declare abstract class EmbeddedDataState { editorStore: EditorStore; embeddedData: EmbeddedData; constructor(editorStore: EditorStore, embeddedData: EmbeddedData); abstract label(): string; } export declare class ExternalFormatDataState extends EmbeddedDataState { embeddedData: ExternalFormatData; canEditContentType: boolean; constructor(editorStore: EditorStore, embeddedData: ExternalFormatData); label(): string; setCanEditoContentType(val: boolean): void; get supportsFormatting(): boolean; format(): void; } export declare abstract class ModelDataState { readonly uuid: string; readonly modelStoreDataState: ModelStoreDataState; modelData: ModelData; constructor(modelData: ModelData, modelStoreDataState: ModelStoreDataState); } export declare class ModelEmbeddedDataState extends ModelDataState { modelData: ModelEmbeddedData; embeddedDataState: EmbeddedDataState; constructor(modelData: ModelEmbeddedData, modelStoreDataState: ModelStoreDataState); } export declare class UnsupportedModelDataState extends ModelDataState { } export declare class ModelStoreDataState extends EmbeddedDataState { embeddedData: ModelStoreData; modelDataStates: ModelDataState[]; hideClass: boolean; constructor(editorStore: EditorStore, embeddedData: ModelStoreData, hideClass?: boolean); label(): string; buildStates(): ModelDataState[]; } export declare class RelationElementState { relationElement: RelationElement; constructor(relationElement: RelationElement); addColumn(name: string): void; removeColumn(index: number): void; updateColumn(index: number, name: string): void; addRow(): void; removeRow(index: number): void; updateRow(rowIndex: number, columnIndex: number, value: string): void; clearAllData(): void; exportJSON(): string; exportSQL(): string; exportCSV(): string; private parseCSVLine; importCSV(csvContent: string): void; } export declare class RelationElementsDataState extends EmbeddedDataState { embeddedData: RelationElementsData; showImportCSVModal: boolean; showNewRelationElementModal: boolean; activeRelationElement: RelationElementState | undefined; relationElementStates: RelationElementState[]; constructor(editorStore: EditorStore, embeddedData: RelationElementsData); label(): string; setActiveRelationElement(val: RelationElementState | undefined): void; addRelationElement(relationElement: RelationElement): void; setShowImportCSVModal(show: boolean): void; setShowNewRelationElementModal(show: boolean): void; } export declare class RelationalCSVDataTableState { readonly editorStore: EditorStore; table: RelationalCSVDataTable; constructor(table: RelationalCSVDataTable, editorStore: EditorStore); updateTableValues(val: string): void; } export declare class RelationalCSVDataState extends EmbeddedDataState { embeddedData: RelationalCSVData; selectedTable: RelationalCSVDataTableState | undefined; showImportCSVModal: boolean; database: Database | undefined; showTableIdentifierModal: boolean; tableToEdit: RelationalCSVDataTable | undefined; constructor(editorStore: EditorStore, embeddedData: RelationalCSVData); setShowImportCsvModal(val: boolean): void; setDatabase(val: Database | undefined): void; openIdentifierModal(renameTable?: RelationalCSVDataTable | undefined): void; closeCSVModal(): void; closeModal(): void; importCSV(val: string): void; resetSelectedTable(): void; deleteTable(val: RelationalCSVDataTable): void; changeSelectedTable(val: RelationalCSVDataTable): void; label(): string; } export interface EmbeddedDataStateOption { hideSource?: boolean; } export declare class UnsupportedDataState extends EmbeddedDataState { label(): string; } export declare class DataElementReferenceState extends EmbeddedDataState { embeddedData: DataElementReference; embeddedDataValueState: EmbeddedDataState; options?: EmbeddedDataStateOption | undefined; constructor(editorStore: EditorStore, embeddedData: DataElementReference, options?: EmbeddedDataStateOption); label(): string; setDataElement(dataElement: DataElement): void; buildValueState(options?: EmbeddedDataStateOption): EmbeddedDataState; } export declare function buildEmbeddedDataEditorState(_embeddedData: EmbeddedData, editorStore: EditorStore, options?: EmbeddedDataStateOption): EmbeddedDataState; //# sourceMappingURL=EmbeddedDataState.d.ts.map