import React, { FC, PropsWithChildren, ComponentPropsWithoutRef } from 'react'; import { type TagType } from './Types'; export interface SectionElementResult { value?: T; parentValue?: T; keyName?: K; /** Index of the parent `keyName` */ keys?: K[]; } export type SectionElementProps = { as?: T; render?: (props: SectionElement, result: SectionElementResult) => React.ReactNode; }; export type SectionElement = SectionElementProps & ComponentPropsWithoutRef; type InitialState = { Copied?: SectionElement; CountInfo?: SectionElement; CountInfoExtra?: SectionElement; Ellipsis?: SectionElement; Row?: SectionElement; KeyName?: SectionElement; }; type Dispatch = React.Dispatch>; export declare const useSectionStore: () => InitialState; export declare function useSection(): [{ Copied?: SectionElement | undefined; CountInfo?: SectionElement | undefined; CountInfoExtra?: SectionElement | undefined; Ellipsis?: SectionElement | undefined; Row?: SectionElement | undefined; KeyName?: SectionElement | undefined; }, React.Dispatch>]; export declare function useSectionDispatch(): Dispatch; interface SectionProps { initial: InitialState; dispatch: Dispatch; } export declare const Section: FC>; export {};