import React, { type PropsWithChildren } from 'react'; import { type JsonViewProps } from './'; import { type InitialTypesState, type TagType } from './store/Types'; export type BlockTagType = keyof JSX.IntrinsicElements; export interface InitialState { value?: object; onExpand?: JsonViewProps['onExpand']; onCopied?: JsonViewProps['onCopied']; beforeCopy?: JsonViewProps['beforeCopy']; objectSortKeys?: JsonViewProps['objectSortKeys']; displayObjectSize?: JsonViewProps['displayObjectSize']; shortenTextAfterLength?: JsonViewProps['shortenTextAfterLength']; stringEllipsis?: JsonViewProps['stringEllipsis']; enableClipboard?: JsonViewProps['enableClipboard']; highlightUpdates?: JsonViewProps['highlightUpdates']; collapsed?: JsonViewProps['collapsed']; shouldExpandNodeInitially?: JsonViewProps['shouldExpandNodeInitially']; indentWidth?: number; } export declare const initialState: InitialState; type Dispatch = React.Dispatch>; export declare const Context: React.Context>; export declare function reducer(state: InitialState, action: InitialState): InitialState; export declare const useStore: () => InitialState; export declare const useDispatchStore: () => Dispatch; export interface ProviderProps { initialState?: InitialState; initialTypes?: InitialTypesState; } export declare const Provider: { ({ children, initialState: init, initialTypes, }: PropsWithChildren>): import("react/jsx-runtime").JSX.Element; displayName: string; }; export declare function useDispatch(): Dispatch; export {};