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