/** * Copyright (c) 2026-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 { AtomicTest, TestSuite } from '@finos/legend-graph'; import type { ActionState, GeneratorFn } from '@finos/legend-shared'; import { type ReactNode } from 'react'; import type { TestableTestEditorState } from '../../../../stores/editor/editor-state/element-editor-state/testable/TestableEditorState.js'; import type { LakehouseElementTestDataState, LakehouseTestDataStateBase } from '../../../../stores/editor/editor-state/element-editor-state/testable/LakehouseTestableUtils.js'; import type { EditorStore } from '../../../../stores/editor/EditorStore.js'; /** * Minimal interface for a suite state object accepted by LakehouseTestsEditor * and LakehouseTestSuiteEditor. Satisfied by both IngestTestSuiteState and * DataProductTestSuiteState. */ export interface LakehouseSuiteStateForEditor { testDataState: LakehouseTestDataStateBase; testStates: TestableTestEditorState[]; selectTestState: TestableTestEditorState | undefined; runningSuiteState: ActionState; runSuite(): GeneratorFn; changeTest(test: AtomicTest): void; deleteTest(test: AtomicTest): void; suite: TestSuite; editorStore: EditorStore; } /** * Minimal interface for the top-level testable state passed to the tests editor. * Satisfied by both IngestTestableState and DataProductTestableState. */ export interface LakehouseTestableStateForEditor { setShowCreateTestModal(val: boolean): void; editorStore: EditorStore; } export declare const LakehouseElementTestDataItem: ((props: { elementState: LakehouseElementTestDataState; testDataState: LakehouseTestDataStateBase; isReadOnly: boolean; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; export declare const LakehouseElementTestDataEditor: ((props: { elementState: LakehouseElementTestDataState; isReadOnly: boolean; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; export declare const LakehouseAddElementModal: ((props: { testDataState: LakehouseTestDataStateBase; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; export declare const LakehouseTestDataEditor: ((props: { testDataState: LakehouseTestDataStateBase; isReadOnly: boolean; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; export declare const LakehouseTestEditor: ((props: { testState: TestableTestEditorState; isReadOnly: boolean; renderTestStateExtension?: (testState: TestableTestEditorState) => ReactNode; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; export declare const LakehouseTestsEditor: ((props: { suiteState: LakehouseSuiteStateForEditor; testableState: LakehouseTestableStateForEditor; isReadOnly: boolean; renderTestStateExtension?: (testState: TestableTestEditorState) => ReactNode; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; export declare const LakehouseTestSuiteEditor: ((props: { suiteState: LakehouseSuiteStateForEditor; testableState: LakehouseTestableStateForEditor; isReadOnly: boolean; renderTestStateExtension?: (testState: TestableTestEditorState) => ReactNode; }) => import("react/jsx-runtime").JSX.Element) & { displayName: string; }; //# sourceMappingURL=LakehouseTestableEditor.d.ts.map