import { HostRepository } from "../../types/HostRepository"; import Host from "../../types/Host"; interface CacheRecord { deleted: boolean; host: Host; } export declare class MemoryHostRepository implements HostRepository { private _cache; /** * Interval when to delete deleted records * * @private */ private _intervalListener; private readonly _intervalCallback; constructor(); onInterval(): void; initialize(): void; destroy(): void; findById(domainId: string, id: string, allowDeleted?: true): Promise; findByName(domainId: string, name: string, allowDeleted?: true): Promise; getPage(domainId: string, page: number, size: number, search?: string): Promise; getCount(domainId: string, search?: string): Promise; create(host: Host): Promise; update(host: Host): Promise; delete(domainId: string, id: string): Promise; protected _createId(): string; protected _deleteSoftDeletedItems(): void; protected _setToCache(domainId: string, hostId: string, record: CacheRecord): void; protected _getHosts(domainId: string): Record; private _matchesCriteria; } export declare function createRepository(): HostRepository; export default createRepository;