import { TokenDesc, VariableDefine } from 'shuttle-formula/core';
import { SyntaxAst, WithTokenError } from 'shuttle-formula/render';

export interface TokenInfo {
    code: string;
    tokens: TokenDesc<string>[];
    firstUpdateIndex: number;
    insertCount: number;
    deleteCount: number;
}
export interface AstInfo {
    ast: SyntaxAst;
    error?: WithTokenError;
    typeMap?: Map<string, VariableDefine.Desc>;
}
export interface OnChangeProps {
    onTokenChange?: (tokenInfo: TokenInfo) => void;
    onAstChange?: (astInfo: AstInfo) => void;
}
export default function OnChange({ onTokenChange, onAstChange }: OnChangeProps): import("react/jsx-runtime").JSX.Element;
