import { type IContainer } from "../container"; export interface IImportTabs { tab: string; services: string[]; } export type IImportTranslations = Record; export interface IImportMeta { tabs: IImportTabs[]; translations: IImportTranslations; } export interface IImportBeginEvent { } export interface IImportEndEvent { } export interface IImportHandler { container: IContainer; begin?(event: IImportBeginEvent): Promise; end?(event: IImportEndEvent): Promise; handler(item: TItem): Promise; } export type IImportHandlers = Record IImportHandler>; export interface IWithImporters { importers: IImportHandlers; } export interface IImportSource, TEntity extends Record> { /** * Create or update item. * * It also needs resolveId method to work properly. * * Internally, it should use create() with patch() in unique handler. */ import(create: TCreate): Promise; } //# sourceMappingURL=inteface.d.ts.map