import { FC, PropsWithChildren, ElementType, ComponentPropsWithoutRef } from 'react'; import { type TagType } from './Types'; export interface SymbolsElementResult { value?: T; parentValue?: T; keyName?: K; /** Index of the parent `keyName` */ keys?: K[]; } type SymbolsElementProps = { as?: T; render?: (props: SymbolsElement, result: SymbolsElementResult) => React.ReactNode; 'data-type'?: string; }; export type SymbolsElement = SymbolsElementProps & ComponentPropsWithoutRef; type InitialState = { Arrow?: SymbolsElement; Colon?: SymbolsElement; Quote?: SymbolsElement; ValueQuote?: SymbolsElement; BracketsRight?: SymbolsElement; BracketsLeft?: SymbolsElement; BraceRight?: SymbolsElement; BraceLeft?: SymbolsElement; }; type Dispatch = React.Dispatch>; export declare const useSymbolsStore: () => InitialState; export declare function useSymbols(): [{ Arrow?: SymbolsElement | undefined; Colon?: SymbolsElement | undefined; Quote?: SymbolsElement | undefined; ValueQuote?: SymbolsElement | undefined; BracketsRight?: SymbolsElement | undefined; BracketsLeft?: SymbolsElement | undefined; BraceRight?: SymbolsElement | undefined; BraceLeft?: SymbolsElement | undefined; }, import("react").Dispatch>]; export declare function useSymbolsDispatch(): Dispatch; interface SymbolsProps { initial: InitialState; dispatch: Dispatch; } export declare const Symbols: FC>; export {};