BodyContext.d.ts 1006 B

12345678910111213141516171819
  1. import type { ColumnType, DefaultRecordType, ColumnsType, TableLayout, RenderExpandIcon, ExpandableType, RowClassName, TriggerEventHandler, ExpandedRowRender } from '../interface';
  2. import type { InjectionKey } from 'vue';
  3. export interface BodyContextProps<RecordType = DefaultRecordType> {
  4. rowClassName: string | RowClassName<RecordType>;
  5. expandedRowClassName: RowClassName<RecordType>;
  6. columns: ColumnsType<RecordType>;
  7. flattenColumns: readonly ColumnType<RecordType>[];
  8. tableLayout: TableLayout;
  9. indentSize: number;
  10. expandableType: ExpandableType;
  11. expandRowByClick: boolean;
  12. expandedRowRender: ExpandedRowRender<RecordType>;
  13. expandIcon: RenderExpandIcon<RecordType>;
  14. onTriggerExpand: TriggerEventHandler<RecordType>;
  15. expandIconColumnIndex: number;
  16. }
  17. export declare const BodyContextKey: InjectionKey<BodyContextProps>;
  18. export declare const useProvideBody: (props: BodyContextProps) => void;
  19. export declare const useInjectBody: () => BodyContextProps<any>;