import { TDestroyable } from '../../Mixins'; import { Observable } from 'rxjs'; import { TAbstractResourceConfig } from './TAbstractResourceConfig'; import { TAbstractSerializeDependencies } from './TAbstractSerializeDependencies'; import { TAbstractSimpleRegistry } from './TAbstractSimpleRegistry'; export type TAbstractResourceAsyncRegistry = Omit, 'serialize'> & Readonly<{ findByKey$: (name: string) => Observable; findByKeyAsync: (name: string) => Promise; getByKeyAsync: (name: string) => Promise; serialize: (dependencies: TAbstractSerializeDependencies) => ReadonlyArray; }> & TDestroyable;