{"_id":"@absolutejs/agent-exchange-webauthn","_rev":"7-adebed1e5a6cd65b1ed794cbe730158d","name":"@absolutejs/agent-exchange-webauthn","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@absolutejs/agent-exchange-webauthn","version":"0.1.0","author":{"name":"Alex Kahn"},"license":"Apache-2.0","_id":"@absolutejs/agent-exchange-webauthn@0.1.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"3e314c1e2880ff4a2755818bc13fb5ccf0f9e373","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.1.0.tgz","fileCount":7,"integrity":"sha512-Hc6OPgj8q5NMrlbeJMLopyQQM4s95etTxKSvkwqIlEfvYUD31iQolGdQMVq+YsArdNZegg5I+ySXx5tFMfMc1A==","signatures":[{"sig":"MEUCIFMVxxdz3UcvMbr+5KnRVxdvWlzWpGGTjsRSefEVkMyAAiEA1WI5AW6QqlslzpO3VPTimrvD+dSNDPtqDdjCmDc/RYs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":27609},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"e9ab8a421fdd3f9ef3239b8842b3ecc82f6e6cf4","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.73.1","@absolutejs/agent-exchange":"0.2.0"},"peerDependencies":{"@absolutejs/auth":">=0.73.1 <0.74","@absolutejs/agent-exchange":">=0.2.0 <0.3"},"_npmOperationalInternal":{"tmp":"tmp/agent-exchange-webauthn_0.1.0_1787741443853_0.29924444102592873","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@absolutejs/agent-exchange-webauthn","version":"0.2.0","author":{"name":"Alex Kahn"},"license":"Apache-2.0","_id":"@absolutejs/agent-exchange-webauthn@0.2.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"26a89edddb514d75fd972c8d6e00df029902d781","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.2.0.tgz","fileCount":7,"integrity":"sha512-aVFs14auPkRL+4qOIySu82Q94PrFeh5NyQxu1w4brc7MLIRZ3iK6BaprtIuHw0WPCC34gQn5QHg2EphPMcJvPQ==","signatures":[{"sig":"MEUCIC8fdsR3yX958R2Kptt3aoP7AoOaZSapMYL6mctoWjTIAiEA0wqLf1U7PbBRjxYcSfUoocU0DkvDzWVlWZHWvIgPLVc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29244},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"21b20bde4dce97a553b28f9711a7ae27ed2c82c6","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.73.1","@absolutejs/agent-exchange":"0.2.0"},"peerDependencies":{"@absolutejs/auth":">=0.73.1 <0.74","@absolutejs/agent-exchange":">=0.2.0 <0.3"},"_npmOperationalInternal":{"tmp":"tmp/agent-exchange-webauthn_0.2.0_1787742619713_0.82876517145304","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@absolutejs/agent-exchange-webauthn","version":"0.2.1","author":{"name":"Alex Kahn"},"license":"Apache-2.0","_id":"@absolutejs/agent-exchange-webauthn@0.2.1","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"2d9c0838ee75d8ac4407ed1fd4057bd5ae970e69","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.2.1.tgz","fileCount":7,"integrity":"sha512-XPcWb16V3n9lPZAU3YM46/P2cQTTOEG88LmvUNLyYhTHzkCfE2LvaOPJ9WgiEW8fDelRLI7GpMalzx4UVAQvjw==","signatures":[{"sig":"MEQCIBFTR36SXeC8Fo+vgkSR4Vb34/u3gtkO2uLwXscu6NviAiBkTOeizN+cI9NQlxE9wKrA24TLNcsAKfDQBjcvIpBj5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29244},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"004f4f1efc8b5dca665f0a6b992c817f62e50c95","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.73.1","@absolutejs/agent-exchange":"0.2.0"},"peerDependencies":{"@absolutejs/auth":">=0.73.1 <0.74","@absolutejs/agent-exchange":">=0.2.0 <0.4"},"_npmOperationalInternal":{"tmp":"tmp/agent-exchange-webauthn_0.2.1_1787743929146_0.8538994499897667","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@absolutejs/agent-exchange-webauthn","version":"0.3.0","author":{"name":"Alex Kahn"},"license":"Apache-2.0","_id":"@absolutejs/agent-exchange-webauthn@0.3.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"72ad2e6f0326e09e1a3024511f5d4ba09542131b","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.3.0.tgz","fileCount":7,"integrity":"sha512-bzik2jIjOVfZGcueCk8SZW1HRMenRaFs+PL+AiHxFqFvd9X4xSBJv709vyh1vocV83EgdKLI4MLldws25/L1NQ==","signatures":[{"sig":"MEUCIQCRaywAhuguUwDJyHe/zva7pxKyJM3JjCmv17OHl0BOpAIgEqYMF4K8p+1ZegGuPFgliq4mEHP2aDpiqYKIGXLRR+k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41542},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"0ef1fe40df197dd39f7522c24ea0c42315b68890","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.73.1","@absolutejs/agent-exchange":"0.4.1"},"peerDependencies":{"@absolutejs/auth":">=0.68.0 <0.74","@absolutejs/agent-exchange":">=0.4.1 <0.5"},"_npmOperationalInternal":{"tmp":"tmp/agent-exchange-webauthn_0.3.0_1787751822398_0.9805922699873713","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@absolutejs/agent-exchange-webauthn","version":"0.4.0","author":{"name":"Alex Kahn"},"license":"Apache-2.0","_id":"@absolutejs/agent-exchange-webauthn@0.4.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"f73b6a5557c30a468308e1adeb0595c0000c3b3a","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.4.0.tgz","fileCount":7,"integrity":"sha512-vlM5uU0T6GbzCCmaOZm1ANCIQDkTDTkWI7npy2VlLo0Wq4Cs/nOjvdIcjyrb9JZ9LlNQjdI90LfuwBK3cINYDw==","signatures":[{"sig":"MEQCIEhePWer8fJ3S+W+w50uaHuVG4r3Fr8Mwe1D/ytn9l/UAiBv8Yk4Ff2LDqaL4vYuAo6R6TiLVnwvJgEIgK3ZZ9Oz+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41542},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"05a6e94907aa2c6fe91023f483bfa51b87847429","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.73.1","@absolutejs/agent-exchange":"0.5.0"},"peerDependencies":{"@absolutejs/auth":">=0.68.0 <0.74","@absolutejs/agent-exchange":">=0.5.0 <0.6"},"_npmOperationalInternal":{"tmp":"tmp/agent-exchange-webauthn_0.4.0_1787773394773_0.5813408959338928","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@absolutejs/agent-exchange-webauthn","version":"0.4.1","author":{"name":"Alex Kahn"},"license":"Apache-2.0","_id":"@absolutejs/agent-exchange-webauthn@0.4.1","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"fd78aa63a5c258520d13b910e65b0d0cfed0a20d","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.4.1.tgz","fileCount":7,"integrity":"sha512-c8+cSlsB07O2e6v04wGLCOzQQB6qKWO8qd7g5Wmnr4yHAM5caAqMKT+w5X5wtFLRDlYzx5kLrBcEUnAgHoC82Q==","signatures":[{"sig":"MEYCIQD3rfqGmaUZX4ZWyh4rIsXNv54rekNLYsh6KQgN28IP+wIhAMGJ5488jsgJxVqbVs4KyCWSbQpuJoK3VhV4FPpuyYQ6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEZyKjB80X1LF1ZQXakq69mCs/Uvk9Ydah5gzqvm+d4uAiEAj0jAL/7sKoPsjIy+/cAPDy2KPrgJtTPIusKAd8LlQ8I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41542},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"2a771d3663b59bcc9a2ad18d90b0b3650ab4e192","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"_nodeVersion":"22.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.75.2","@absolutejs/agent-exchange":"0.5.0"},"peerDependencies":{"@absolutejs/auth":">=0.68.0 <0.76","@absolutejs/agent-exchange":">=0.5.0 <0.6"},"_npmOperationalInternal":{"tmp":"tmp/agent-exchange-webauthn_0.4.1_1787867336115_0.3991771685229457","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"_id":"@absolutejs/agent-exchange-webauthn@0.5.0","bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"dist":{"shasum":"a6f55cc5a69f158aefc539629fbf669657b6b03e","tarball":"https://registry.npmjs.org/@absolutejs/agent-exchange-webauthn/-/agent-exchange-webauthn-0.5.0.tgz","fileCount":10,"integrity":"sha512-CpcZsuGBawm4sDnyrCdBN1g8tULpjck8FMpIfhj0HX4XeezOm9q0pG7womCuwOT5klng2euyMHHaadMAK+5Big==","signatures":[{"sig":"MEUCIDcvzBXn0FZX81Qp25fh+QiD6LR1JUZla7BEntVwD9QtAiEAnDcAQGDPagDPrtLDuMwoo+hyuILTGk5mnddVy8mmBzo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHszJ2iBW8017fQbL8fyzjkELW+FIIjWdft7MEnXLim3AiEA2Zuwh61O67as0fitrtuQx3IJE1QoXvOyHVQ9gdKxXSU="}],"unpackedSize":45338},"main":"./dist/index.js","name":"@absolutejs/agent-exchange-webauthn","type":"module","types":"./dist/index.d.ts","author":{"name":"Alex Kahn"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./client":{"types":"./dist/client.d.ts","import":"./dist/client.js","default":"./dist/client.js"}},"license":"Apache-2.0","scripts":{"test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/client.ts --outdir dist --root src --sourcemap --target=browser --external @absolutejs/agent-exchange --external @absolutejs/auth --external @simplewebauthn/browser && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run check:package && npm publish --access public","typecheck":"tsc --noEmit","format:check":"prettier --check \"./**/*.{ts,json,md}\"","check:package":"bun run format:check && bun run typecheck && bun run test && bun run build","prepublishOnly":"bun run check:package"},"version":"0.5.0","_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"_npmVersion":"10.9.2","description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","directories":{},"maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"_nodeVersion":"22.14.0","dependencies":{"@simplewebauthn/browser":"13.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.14","typescript":"^5.9.0","@absolutejs/auth":"0.89.0","@absolutejs/agent-exchange":"0.5.0"},"peerDependencies":{"@absolutejs/auth":">=0.89.0 <0.90","@absolutejs/agent-exchange":">=0.5.0 <0.6"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/agent-exchange-webauthn_0.5.0_1790288132837_0.16689985686224795"}}},"time":{"created":"2026-08-26T10:50:43.676Z","modified":"2026-09-24T22:15:33.132Z","0.1.0":"2026-08-26T10:50:44.029Z","0.2.0":"2026-08-26T11:10:19.870Z","0.2.1":"2026-08-26T11:32:09.269Z","0.3.0":"2026-08-26T13:43:42.534Z","0.4.0":"2026-08-26T19:43:14.905Z","0.4.1":"2026-08-27T21:48:56.210Z","0.5.0":"2026-09-24T22:15:32.918Z"},"bugs":{"url":"https://github.com/absolutejs/agent-exchange-providers/issues"},"author":{"name":"Alex Kahn"},"license":"Apache-2.0","homepage":"https://github.com/absolutejs/agent-exchange-providers/tree/main/webauthn","repository":{"url":"git+https://github.com/absolutejs/agent-exchange-providers.git","type":"git","directory":"webauthn"},"description":"Request-bound, user-verified WebAuthn approvals for @absolutejs/agent-exchange.","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"readme":"# @absolutejs/agent-exchange-webauthn\n\nAn interchangeable `AgentExchangeApprovalProvider` that binds a user-verified\nWebAuthn assertion to the exact Agent Exchange request digest.\n\nIt also provides `createWebAuthnAgentExchangeMandateApprovalProvider()` for\nstanding mandates. That provider recomputes the domain-separated challenge over\nthe complete mandate draft and requires the issuer authority and subject to match\nthe verifier before beginning or verifying the ceremony.\n\n```ts\nconst approvalProvider = createWebAuthnAgentExchangeApprovalProvider({\n  adapter,\n  credentialStore,\n  origin: \"https://app.example.com\",\n  resolveUserId: async ({ subject }) => subject,\n  rpId: \"example.com\",\n});\n```\n\nThe provider requires HTTPS, an RP ID valid for the configured verifier origin,\nan exact caller-provided challenge, user verification, credential ownership, and\nsafe signature-counter progression. It does not persist raw assertions.\n\nUse the resulting provider with the phishing-resistant assurance profile in\n`@absolutejs/agent-exchange@0.4`.\n\nFor local development only, `allowInsecureLocalhost: true` permits an HTTP\n`localhost` origin and RP ID. It does not permit arbitrary HTTP hosts.\n\n## Browser approval\n\nImport `approveAgentExchangeWithPasskey` from\n`@absolutejs/agent-exchange-webauthn/client`. Call it from the user's confirmation\nbutton after displaying the exact service, teammate, expiry, and use limit.\nProvide `begin()` (returns `approvalId` and WebAuthn `options`) and `verify()`\n(receives the same approval ID and the authenticator response). The helper uses\nSimpleWebAuthn's browser implementation and does not approve or persist a mandate\nitself. The server must consume an Auth challenge bound to purpose, user and\nsession before using the mandate approval provider.\n\nVersion 0.5.0 requires Auth 0.89.x, whose credential stores prevent owner/key\nreplacement and counter rollback and provide durable one-use challenge stores.\n","readmeFilename":"README.md"}