import type { Ref } from 'vue'; import type { BasicTableProps, TableActionType } from '../types/table'; import { provide, inject, ComputedRef } from 'vue'; const key = Symbol('s-table'); type Instance = TableActionType & { wrapRef: Ref>; getBindValues: ComputedRef; isShowTable: any; }; type RetInstance = Omit & { getBindValues: ComputedRef; }; export function createTableContext(instance: Instance) { provide(key, instance); } export function useTableContext(): RetInstance { return inject(key) as RetInstance; }