/// export declare type TokenType = 'array' | 'attribute' | 'attributePair' | 'boolean' | 'nil' | 'number' | 'object' | 'punctuation' | 'quotation' | 'root' | 'string' | 'unquotedAttribute'; export declare type NodeType = 'array' | 'attributePair' | 'boolean' | 'nil' | 'number' | 'object' | 'string'; export declare type ObjectKeySorter = (keyA: string, keyB: string, parent: Record) => number; export declare type TokenMachine = (token: TokenType, content?: React.ReactNode, as?: string) => JSX.Element; export declare type ItemKeyGenerator = (item: unknown, basePath: string, index: number) => string; export declare type NodeWrapper = React.ComponentType<{ path: string; type: NodeType; }>; export declare type JasonStyles = Partial>; export declare type JasonClasses = Partial>; export interface EsModuleJasonTheme { __esModule: true; default: JasonTheme; } export interface JasonTheme { styles?: JasonStyles; classes?: JasonClasses; } export interface JasonContextInstance { token: TokenMachine; getItemKey: ItemKeyGenerator; quoteAttributes: boolean; sortKeys: false | ObjectKeySorter; nodeWrapper?: NodeWrapper; }