import { Logger } from "../../../logger/Logger.js";
import { DidDocument } from "../domain/DidDocument.js";
import { DidResolutionOptions, DidResolutionResult } from "../types.js";
import { DidsModuleConfig } from "../DidsModuleConfig.js";
import { DidRepository } from "../repository/DidRepository.js";
import { AgentContext } from "../../../agent/context/AgentContext.js";

//#region src/modules/dids/services/DidResolverService.d.ts
declare class DidResolverService {
  private logger;
  private didsModuleConfig;
  private didRepository;
  constructor(logger: Logger, didsModuleConfig: DidsModuleConfig, didRepository: DidRepository);
  resolve(agentContext: AgentContext, didUrl: string, options?: DidResolutionOptions): Promise<DidResolutionResult>;
  /**
   * Resolve a did document. This uses the default resolution options, and thus
   * will use caching if available.
   */
  resolveDidDocument(agentContext: AgentContext, did: string): Promise<DidDocument>;
  invalidateCacheForDid(agentContext: AgentContext, did: string): Promise<void>;
  private getCacheKey;
  private findResolver;
  /**
   * Get all supported did methods for the did resolver.
   */
  get supportedMethods(): string[];
}
//#endregion
export { DidResolverService };
//# sourceMappingURL=DidResolverService.d.ts.map