import { CruxDomainId } from "../../packages/identity-utils"; import { CruxDomain } from "../entities/crux-domain"; import { IKeyManager } from "./key-manager"; export interface ICruxDomainRepository { isCruxDomainIdAvailable: (domainId: CruxDomainId) => Promise; create: (domainId: CruxDomainId, identityKeyManager: IKeyManager) => Promise; get: (domainId: CruxDomainId) => Promise; save: (cruxDomain: CruxDomain, keyManager: IKeyManager) => Promise; getWithConfigKeyManager: (keyManager: IKeyManager, domainId?: CruxDomainId) => Promise; } export interface ICruxDomainRepositoryOptions { } export declare type ICruxDomainRepositoryConstructor = new (options?: ICruxDomainRepositoryOptions) => ICruxDomainRepository;