import type { ColumnType, DefaultRecordType, ColumnsType, TableLayout, RenderExpandIcon, ExpandableType, RowClassName, TriggerEventHandler, ExpandedRowRender } from '../interface'; import type { InjectionKey } from 'vue'; export interface BodyContextProps { rowClassName: string | RowClassName; expandedRowClassName: RowClassName; columns: ColumnsType; flattenColumns: readonly ColumnType[]; tableLayout: TableLayout; indentSize: number; expandableType: ExpandableType; expandRowByClick: boolean; expandedRowRender: ExpandedRowRender; expandIcon: RenderExpandIcon; onTriggerExpand: TriggerEventHandler; expandIconColumnIndex: number; } export declare const BodyContextKey: InjectionKey; export declare const useProvideBody: (props: BodyContextProps) => void; export declare const useInjectBody: () => BodyContextProps;