import { Accessor } from 'solid-js';
import { DashboardConfig, DrillData, MalloyClickEventPayload, TableConfig, VegaConfigHandler } from './types';
import { RenderFieldMetadata } from '../render-field-metadata';
export type { DrillData } from './types';
import type * as Malloy from '@malloydata/malloy-interfaces';
export type MalloyRenderProps = {
    result?: Malloy.Result;
    element: HTMLElement;
    scrollEl?: HTMLElement;
    modalElement?: HTMLElement;
    onClick?: (payload: MalloyClickEventPayload) => void;
    onDrill?: (drillData: DrillData) => void;
    onError?: (error: Error) => void;
    vegaConfigOverride?: VegaConfigHandler;
    tableConfig?: Partial<TableConfig>;
    dashboardConfig?: Partial<DashboardConfig>;
    renderFieldMetadata: RenderFieldMetadata;
};
export declare const useConfig: () => {
    tableConfig: Accessor<TableConfig>;
    dashboardConfig: Accessor<DashboardConfig>;
    onClick?: (payload: MalloyClickEventPayload) => void;
    onDrill?: (drillData: DrillData) => void;
    vegaConfigOverride?: VegaConfigHandler;
    modalElement?: HTMLElement;
};
export declare function MalloyRender(props: MalloyRenderProps): import("solid-js").JSX.Element;
export declare function MalloyRenderInner(props: {
    result: Malloy.Result;
    element: HTMLElement;
    scrollEl?: HTMLElement;
    vegaConfigOverride?: VegaConfigHandler;
    renderFieldMetadata: RenderFieldMetadata;
}): import("solid-js").JSX.Element;
