Resolve AT Protocol DIDs, handles, and schemas with intelligent caching for Laravel
1<?php
2
3namespace SocialDept\AtpResolver\Contracts;
4
5use SocialDept\AtpResolver\Data\DidDocument;
6
7interface DidResolver
8{
9 /**
10 * Resolve a DID to a DID Document.
11 *
12 * @param string $did The DID to resolve (e.g., "did:plc:abc123" or "did:web:example.com")
13 * @return DidDocument
14 *
15 * @throws \SocialDept\AtpResolver\Exceptions\DidResolutionException
16 */
17 public function resolve(string $did): DidDocument;
18
19 /**
20 * Check if this resolver supports the given DID method.
21 *
22 * @param string $method The DID method (e.g., "plc", "web")
23 */
24 public function supports(string $method): bool;
25}