import type { DataInsightCtx } from '../../types/atom';
import { AtomName } from '../../types/atom';
import { BaseAtom } from '../base';
import type { LLMMessage } from '../../types/llm';
import type { DataInsightOptions } from './type';
export declare class DataInsightAtom extends BaseAtom<DataInsightCtx, DataInsightOptions> {
    name: AtomName;
    isLLMAtom: boolean;
    constructor(context: DataInsightCtx, option: DataInsightOptions);
    buildDefaultContext(context: DataInsightCtx): DataInsightCtx;
    buildDefaultOptions(): DataInsightOptions;
    shouldRunByContextUpdate(context: DataInsightCtx): boolean;
    protected getLLMMessages(query?: string): LLMMessage[];
    protected parseLLMContent(resJson: any): DataInsightCtx;
    protected runBeforeLLM(): DataInsightCtx;
}
export declare const registerDataInsightAtom: () => void;
