import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React$1 from 'react';
import React__default, { ReactNode, ComponentType } from 'react';
import { FallbackRender } from '@sentry/react';
import { SplitProps } from 'react-split';
import { BoxProps } from '@mui/material/Box';
import { a as LineageGraphNode, b as LineageGraphEdge, c as LineageGraphColumnNode, d as LineageGraph } from './LineageViewContext-DPVC8ak8.js';
export { L as LineageViewContext, u as useLineageViewContext } from './LineageViewContext-DPVC8ak8.js';
import { Y as LineageDiffViewOptions, $ as RowCountDiff, _ as RowCount, M as ManifestMetadata, a$ as RunResultViewProps, c as QueryViewOptions, aL as Run, b0 as DataGridHandle, g as QueryDiffViewOptions, y as NodeData, aE as RowObjectType, C as Check, b1 as ViewOptionTypes, b2 as RegistryEntry, b3 as RefTypes, b4 as RunType, b5 as RunFormParamTypes, a_ as RunFormProps, a6 as ProfileDiffViewOptions, az as ValueDiffDetailViewOptions, ab as HistogramDiffParams, a8 as TopKDiffParams, ac as HistogramResult, a9 as TopKResult } from './lineagecheck-BQaKAQzn.js';
export { P as ProfileDiffForm, R as RunToolbar, S as ScreenshotDataGrid, V as ValueDiffForm } from './lineagecheck-BQaKAQzn.js';
import { NodeProps, EdgeProps } from '@xyflow/react';
import { AnimationOptions } from 'chart.js';
import '@tanstack/react-query';
import 'axios';
import 'react-icons';
import 'ag-grid-community';
import 'ag-grid-react';

interface MuiProviderProps {
    children: ReactNode;
    /**
     * Force a specific theme mode. If not provided, follows system/user preference.
     */
    forcedTheme?: "light" | "dark";
    /**
     * Whether to include MUI's CssBaseline for consistent baseline styles.
     * Disabled by default to avoid conflicts with Chakra/Tailwind during migration.
     */
    enableCssBaseline?: boolean;
}
/**
 * MUI Theme Provider for Recce
 *
 * This provider integrates MUI theming with the existing next-themes
 * color mode system used by Chakra UI. During the migration period,
 * both Chakra and MUI components will share the same theme mode.
 *
 * Usage:
 * ```tsx
 * <MuiProvider>
 *   <MuiButton>Click me</MuiButton>
 * </MuiProvider>
 * ```
 */
declare function MuiProvider({ children, forcedTheme, enableCssBaseline, }: MuiProviderProps): react_jsx_runtime.JSX.Element;

/**
 * Toast types and interfaces
 */
interface ToastOptions {
    id?: string;
    title?: string;
    description?: ReactNode;
    type?: "success" | "error" | "warning" | "info" | "loading";
    duration?: number;
    closable?: boolean;
    action?: {
        label: string;
        onClick: () => void;
    };
}
interface ToasterContextValue {
    toast: (options: ToastOptions) => string;
    success: (options: Omit<ToastOptions, "type">) => string;
    error: (options: Omit<ToastOptions, "type">) => string;
    warning: (options: Omit<ToastOptions, "type">) => string;
    info: (options: Omit<ToastOptions, "type">) => string;
    loading: (options: Omit<ToastOptions, "type">) => string;
    dismiss: (id: string) => void;
    update: (id: string, options: Partial<ToastOptions>) => void;
}
/**
 * Simple toaster implementation using MUI Snackbar
 */
declare function ToasterProvider({ children }: {
    children: ReactNode;
}): react_jsx_runtime.JSX.Element;
/**
 * Hook to use the toaster
 */
declare function useToaster(): ToasterContextValue;
/**
 * Toaster component that renders toasts from the standalone toaster
 */
declare function Toaster(): react_jsx_runtime.JSX.Element;

declare const ErrorBoundary: ({ children, fallback, }: {
    children: ReactNode;
    fallback?: React$1.ReactElement | FallbackRender | undefined;
}) => react_jsx_runtime.JSX.Element;

declare const HSplit: (props: SplitProps) => react_jsx_runtime.JSX.Element;
declare const VSplit: (props: SplitProps) => react_jsx_runtime.JSX.Element;

interface ScreenshotBoxProps extends BoxProps {
    backgroundColor?: string;
    blockSize?: string;
    children?: React.ReactNode;
}
declare const ScreenshotBox: React$1.ForwardRefExoticComponent<Omit<ScreenshotBoxProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;

declare function LineagePage(): react_jsx_runtime.JSX.Element;

interface LineageViewProps {
    viewOptions?: LineageDiffViewOptions;
    interactive?: boolean;
    weight?: number;
    height?: number;
    filterNodes?: (key: string, node: LineageGraphNode) => boolean;
}
interface LineageViewRef {
    copyToClipboard: () => void;
}
declare const LineageView: React__default.ForwardRefExoticComponent<LineageViewProps & React__default.RefAttributes<LineageViewRef>>;

declare const LineageViewTopBar: () => react_jsx_runtime.JSX.Element;

type GraphNodeProps = NodeProps<LineageGraphNode>;
declare function GraphNode(nodeProps: GraphNodeProps): react_jsx_runtime.JSX.Element;

type GraphEdgeProps = EdgeProps<LineageGraphEdge>;
declare function GraphEdge(props: GraphEdgeProps): react_jsx_runtime.JSX.Element;

type GrapeColumnNodeProps = NodeProps<LineageGraphColumnNode>;
declare function GraphColumnNode(nodeProps: GrapeColumnNodeProps): react_jsx_runtime.JSX.Element;

interface NodeViewProps {
    node: LineageGraphNode;
    onCloseNode: () => void;
}
declare function NodeView({ node, onCloseNode }: NodeViewProps): react_jsx_runtime.JSX.Element;

interface NodeSqlViewProps {
    node: LineageGraphNode;
}
declare const NodeSqlView: ({ node }: NodeSqlViewProps) => react_jsx_runtime.JSX.Element | "Not available";

declare function ResourceTypeTag({ node }: {
    node: LineageGraphNode;
}): react_jsx_runtime.JSX.Element;
interface ModelRowCountProps {
    rowCount?: RowCountDiff;
}
declare function ModelRowCount({ rowCount }: ModelRowCountProps): react_jsx_runtime.JSX.Element;
interface RowCountDiffTagProps {
    node: LineageGraphNode;
    rowCount?: RowCountDiff;
    onRefresh?: () => void;
    isFetching?: boolean;
    error?: Error | null;
}
declare function RowCountDiffTag({ rowCount: fetchedRowCount, node, onRefresh, isFetching, }: RowCountDiffTagProps): react_jsx_runtime.JSX.Element;
interface RowCountTagProps {
    node: LineageGraphNode;
    rowCount?: RowCount;
    onRefresh?: () => void;
    isFetching?: boolean;
    error?: Error | null;
}

declare function SetupConnectionBanner(): react_jsx_runtime.JSX.Element;

declare const QueryPage: () => react_jsx_runtime.JSX.Element;

interface QueryFormProps extends BoxProps {
    defaultPrimaryKeys: string[] | undefined;
    onPrimaryKeysChange: (primaryKeys: string[]) => void;
}
declare const QueryForm: ({ defaultPrimaryKeys, onPrimaryKeysChange, ...props }: QueryFormProps) => react_jsx_runtime.JSX.Element;

interface SqlEditorProps {
    language?: string;
    theme?: string;
    value: string;
    baseValue?: string;
    onChange?: (value: string) => void;
    onChangeBase?: (value: string) => void;
    onRun?: () => void;
    onRunBase?: () => void;
    onRunDiff?: () => void;
    options?: {
        readOnly?: boolean;
        fontSize?: number;
        lineNumbers?: "on" | "off";
        wordWrap?: "on" | "off";
    };
    manifestData?: ManifestMetadata;
    schemas?: string;
    label?: string;
    CustomEditor?: React__default.ReactNode;
}
declare function SqlEditor({ value, onChange, onRun, onRunBase, onRunDiff, label, CustomEditor, options, manifestData, schemas, ...props }: SqlEditorProps): react_jsx_runtime.JSX.Element;

interface QueryResultViewProp extends RunResultViewProps<QueryViewOptions> {
    onAddToChecklist?: (run: Run) => void;
}
declare const QueryResultView: React__default.ForwardRefExoticComponent<QueryResultViewProp & React__default.RefAttributes<DataGridHandle>>;

interface QueryDiffResultViewProps extends RunResultViewProps<QueryDiffViewOptions> {
    onAddToChecklist?: (run: Run) => void;
    baseTitle?: string;
    currentTitle?: string;
}
declare const QueryDiffResultView: React$1.ForwardRefExoticComponent<QueryDiffResultViewProps & React$1.RefAttributes<DataGridHandle>>;

interface DiffTextProps {
    value: string;
    colorPalette: "red" | "green";
    grayOut?: boolean;
    noCopy?: boolean;
    fontSize?: string;
}
declare const DiffText: ({ value, colorPalette, grayOut, noCopy, fontSize, }: DiffTextProps) => react_jsx_runtime.JSX.Element;

declare function SetupConnectionGuide(): react_jsx_runtime.JSX.Element;

type CodeEditorLanguage = "sql" | "yaml";
type CodeEditorTheme = "light" | "dark";
interface CodeEditorProps {
    value: string;
    onChange?: (value: string) => void;
    language?: CodeEditorLanguage;
    readOnly?: boolean;
    lineNumbers?: boolean;
    wordWrap?: boolean;
    fontSize?: number;
    height?: string;
    className?: string;
    /** Theme: "light" for githubLight, "dark" for githubDark */
    theme?: CodeEditorTheme;
    /** Custom keyboard shortcuts: { key: handler } */
    keyBindings?: Array<{
        key: string;
        run: () => boolean;
    }>;
}
declare function CodeEditor({ value, onChange, language, readOnly, lineNumbers, wordWrap, fontSize, height, className, theme, keyBindings, }: CodeEditorProps): react_jsx_runtime.JSX.Element;

type DiffEditorLanguage = "sql" | "yaml";
type DiffEditorTheme = "light" | "dark";
interface DiffEditorProps {
    original: string;
    modified: string;
    language?: DiffEditorLanguage;
    readOnly?: boolean;
    lineNumbers?: boolean;
    sideBySide?: boolean;
    height?: string;
    className?: string;
    /** Theme: "light" for githubLight, "dark" for githubDark */
    theme?: DiffEditorTheme;
    /** Called when modified content changes (only if not readOnly) */
    onModifiedChange?: (value: string) => void;
}
declare function DiffEditor({ original, modified, language, readOnly, lineNumbers, sideBySide, height, className, theme, onModifiedChange, }: DiffEditorProps): react_jsx_runtime.JSX.Element;

interface SchemaViewProps {
    base?: NodeData;
    current?: NodeData;
    enableScreenshot?: boolean;
    showMenu?: boolean;
}
declare const SchemaView: React$1.ForwardRefExoticComponent<SchemaViewProps & React$1.RefAttributes<DataGridHandle>>;

/**
 * @file toSchemaDataGrid.ts
 * @description Grid generator for schema diff and single-environment schema views
 *
 * This file is intentionally .ts (not .tsx) - all JSX rendering is delegated
 * to schemaCells.tsx via render functions.
 */

interface SchemaDiffRow extends RowObjectType {
    name: string;
    reordered?: boolean;
    currentIndex?: number;
    baseIndex?: number;
    currentType?: string;
    baseType?: string;
}

declare function ColumnNameCell({ model, row, singleEnv, cllRunning, showMenu, }: {
    model: NodeData;
    row: SchemaDiffRow;
    singleEnv?: boolean;
    cllRunning?: boolean;
    showMenu?: boolean;
}): react_jsx_runtime.JSX.Element;

declare const CheckList: ({ checks, selectedItem, onCheckSelected, onChecksReordered, }: {
    checks: Check[];
    selectedItem: string | null;
    onCheckSelected: (checkId: string) => void;
    onChecksReordered: (source: number, destination: number) => void;
}) => react_jsx_runtime.JSX.Element;

interface CheckDetailProps {
    checkId: string;
    refreshCheckList?: () => void;
}
declare function CheckDetail({ checkId, refreshCheckList, }: CheckDetailProps): ReactNode;

interface CheckBreadcrumbProps {
    name: string;
    setName: (name: string) => void;
}
declare function CheckBreadcrumb({ name, setName }: CheckBreadcrumbProps): react_jsx_runtime.JSX.Element;

interface CheckDescriptionProps {
    value?: string;
    onChange?: (value?: string) => void;
}
declare function CheckDescription({ value, onChange }: CheckDescriptionProps): react_jsx_runtime.JSX.Element;

declare const CheckEmptyState: () => react_jsx_runtime.JSX.Element;

interface LineageDiffViewProps {
    check: Check;
}
declare const LineageDiffView: React$1.ForwardRefExoticComponent<LineageDiffViewProps & React$1.RefAttributes<LineageViewRef>>;

interface SchemaDiffViewProps {
    check: Check;
}
declare const SchemaDiffView: React__default.ForwardRefExoticComponent<SchemaDiffViewProps & React__default.RefAttributes<DataGridHandle>>;

interface RunPageProps$1 {
    runId: string;
}
declare const RunPage: ({ runId }: RunPageProps$1) => react_jsx_runtime.JSX.Element;

declare const RunList: () => react_jsx_runtime.JSX.Element;

interface RunViewProps<VO = ViewOptionTypes> {
    isRunning?: boolean;
    run?: Run;
    error?: Error | null;
    progress?: Run["progress"];
    isAborting?: boolean;
    isCheckDetail?: boolean;
    onCancel?: () => void;
    onExecuteRun?: () => void;
    viewOptions?: VO;
    onViewOptionsChanged?: (viewOptions: VO) => void;
    RunResultView?: RegistryEntry["RunResultView"] | undefined;
    children?: (params: RunResultViewProps) => React__default.ReactNode;
}
declare const RunView: React__default.ForwardRefExoticComponent<RunViewProps<ViewOptionTypes> & React__default.RefAttributes<RefTypes>>;

interface RunModalProps {
    isOpen: boolean;
    onClose: () => void;
    onExecute: (type: RunType, params: RunFormParamTypes) => void;
    title: string;
    type: RunType;
    params?: RunFormParamTypes;
    initialRun?: Run;
    RunForm?: ComponentType<RunFormProps<RunFormParamTypes>>;
}
declare const RunModal: ({ isOpen, onClose, onExecute, type, title, params: defaultParams, RunForm, }: RunModalProps) => react_jsx_runtime.JSX.Element;

interface RunPageProps {
    onClose?: () => void;
    disableAddToChecklist?: boolean;
    isSingleEnvironment?: boolean;
}
declare const RunResultPane: ({ onClose, isSingleEnvironment, }: RunPageProps) => react_jsx_runtime.JSX.Element;

declare const RunStatusAndDate: ({ run }: {
    run: Run;
}) => react_jsx_runtime.JSX.Element;

type ProfileDiffResultViewProp = RunResultViewProps<ProfileDiffViewOptions>;
declare const ProfileDiffResultView: React$1.ForwardRefExoticComponent<ProfileDiffResultViewProp & React$1.RefAttributes<DataGridHandle>>;

/**
 * @file ValueDiffResultView.tsx
 * @description View component for displaying value diff summary results
 *
 * Shows a summary table of column-level match statistics from a value_diff run.
 * Each row represents a column with its match count and percentage.
 */

type ValueDiffResultViewProp = RunResultViewProps;
declare const ValueDiffResultView: React__default.ForwardRefExoticComponent<ValueDiffResultViewProp & React__default.RefAttributes<DataGridHandle>>;

interface ValueDiffDetailResultViewProps extends RunResultViewProps<ValueDiffDetailViewOptions> {
    onAddToChecklist?: (run: Run) => void;
}
declare const ValueDiffDetailResultView: React$1.ForwardRefExoticComponent<ValueDiffDetailResultViewProps & React$1.RefAttributes<DataGridHandle>>;

type HistogramDiffEditProps = RunFormProps<HistogramDiffParams>;
declare function HistogramDiffForm({ params, onParamsChanged, setIsReadyToExecute, }: HistogramDiffEditProps): react_jsx_runtime.JSX.Element;

type HistogramDiffResultViewProp = RunResultViewProps;
declare const HistogramDiffResultView: React$1.ForwardRefExoticComponent<HistogramDiffResultViewProp & React$1.RefAttributes<HTMLDivElement>>;

type TopKDiffFormProps = RunFormProps<TopKDiffParams>;
declare function TopKDiffForm({ params, onParamsChanged, setIsReadyToExecute, }: TopKDiffFormProps): react_jsx_runtime.JSX.Element;

type TopKDiffResultViewProp = RunResultViewProps;
declare const TopKDiffResultView: React$1.ForwardRefExoticComponent<TopKDiffResultViewProp & React$1.RefAttributes<HTMLDivElement>>;

declare const RowCountDiffResultView: React$1.ForwardRefExoticComponent<RunResultViewProps<ViewOptionTypes> & React$1.RefAttributes<DataGridHandle>>;

/**
 * Histogram Chart that can display generic data types such as Numeric, Datetime, Integer
 * X: The Min/Max of the labels range is the scaled width of charting area
 * Y: The Min/Max of the counts range is the scaled height of charting area
 * Counts: Abbreviated based on K, Mn, Bn, Tr (see formatters)
 */
interface HistogramChartProps {
    data: {
        title: string;
        type: string;
        samples?: number;
        min?: string | number;
        max?: string | number;
        binEdges: number[];
        datasets: HistogramResult[];
    };
    animation?: AnimationOptions<"bar">["animation"];
    hideAxis?: boolean;
}
declare function HistogramChart({ data, hideAxis, animation, }: HistogramChartProps): react_jsx_runtime.JSX.Element;

interface Props$2 {
    topk: TopKResult;
    valids: number;
    isDisplayTopTen: boolean;
}
/**
 * A list of each topk summary item (categorical)
 * Last list item will show 'others' when there are leftover values, which is the count difference of valids and displayed topk items
 */
declare function TopKSummaryList({ topk, valids, isDisplayTopTen }: Props$2): react_jsx_runtime.JSX.Element;

declare function SquareIcon({ color }: {
    color: string;
}): react_jsx_runtime.JSX.Element;

declare function SummaryView(): react_jsx_runtime.JSX.Element;

interface Props$1 {
    lineageGraph: LineageGraph;
}
declare function ChangeSummary({ lineageGraph }: Props$1): react_jsx_runtime.JSX.Element;

interface Props {
    lineageGraph: LineageGraph;
}
declare function SchemaSummary({ lineageGraph }: Props): react_jsx_runtime.JSX.Element;

declare function EnvInfo(): react_jsx_runtime.JSX.Element;

declare function HistoryToggle(): ReactNode;

/**
 * Badge component that displays idle timeout warning countdown
 * Only shows when remaining time is below the warning threshold
 * Styled as a warning indicator to draw user attention
 */
declare function IdleTimeoutBadge(): react_jsx_runtime.JSX.Element;

declare const IconSync: (props: React__default.SVGProps<SVGSVGElement>) => react_jsx_runtime.JSX.Element;
declare const IconExport: (props: React__default.SVGProps<SVGSVGElement>) => react_jsx_runtime.JSX.Element;
declare const IconImport: (props: React__default.SVGProps<SVGSVGElement>) => react_jsx_runtime.JSX.Element;
declare const IconSave: (props: React__default.SVGProps<SVGSVGElement>) => react_jsx_runtime.JSX.Element;
declare const IconEdit: (props: React__default.SVGProps<SVGSVGElement>) => react_jsx_runtime.JSX.Element;
declare const IconInfo: (props: React__default.SVGProps<SVGSVGElement>) => react_jsx_runtime.JSX.Element;

export { ChangeSummary, CheckBreadcrumb, CheckDescription, CheckDetail, CheckEmptyState, CheckList, CodeEditor, ColumnNameCell, DiffEditor, DiffText, EnvInfo, ErrorBoundary, GraphColumnNode, GraphEdge, GraphNode, HSplit, HistogramChart, HistogramDiffForm, HistogramDiffResultView, HistoryToggle, IconEdit, IconExport, IconImport, IconInfo, IconSave, IconSync, IdleTimeoutBadge, LineageDiffView, LineagePage, LineageView, LineageViewTopBar, ModelRowCount, MuiProvider, MuiProvider as MuiProviderDefault, NodeSqlView, NodeView, ProfileDiffResultView, QueryDiffResultView, QueryForm, QueryPage, QueryResultView, ResourceTypeTag, RowCountDiffResultView, RowCountDiffTag, type RowCountDiffTagProps, type RowCountTagProps, RunList, RunModal, RunPage, RunResultPane, RunStatusAndDate, RunView, SchemaDiffView, SchemaSummary, SchemaView, ScreenshotBox, SetupConnectionBanner, SetupConnectionGuide, SqlEditor, SquareIcon, SummaryView, Toaster, ToasterProvider, TopKDiffForm, TopKDiffResultView, TopKSummaryList, VSplit, ValueDiffDetailResultView, ValueDiffResultView, useToaster };
