import { Ref } from 'vue'; import { BaseEntityServiceImplements } from '..'; import { NonNullableExtractServiceImplementsEntity } from '../../types'; import { ComponentExposed } from 'vue-component-type-helpers'; import VcEntityEditableTabs from '../components/Tabs/VcEntityEditableTabs.vue'; type EntityProvideParamType = { entity: Entity; editableTabs?: Ref>; onCreateFunction?: () => unknown; closeActiveTabFunction?: () => unknown; openListTab?: () => unknown; loading?: Ref; isRecycleBin?: Ref; onRecycleBinToggleFunction?: (isRecycleBin: boolean) => unknown; onEditFunction?: (data: NonNullableExtractServiceImplementsEntity) => unknown; onDeleteFunction?: (data: NonNullableExtractServiceImplementsEntity, index?: number) => Promise; onRestoreFunction?: (data: NonNullableExtractServiceImplementsEntity) => Promise; onChangeStatus?: (data: NonNullableExtractServiceImplementsEntity, newStatus: number) => unknown; loadDataFunction?: () => Promise; onEntityTableDeleteSelectedFunction?: (data: Array>) => Promise | unknown; }; export declare function useEntityProvide(param: EntityProvideParamType): void; export declare function useEntityInject(): EntityProvideParamType; export {};