{"_id":"@solana/keychain-core","_rev":"14-4f520d0fe1ea5dc4e7ff49ef2d882fef","name":"@solana/keychain-core","dist-tags":{"latest":"2.0.0","beta":"2.0.0-beta.1"},"versions":{"0.0.0":{"name":"@solana/keychain-core","version":"0.0.0","keywords":[],"author":"","license":"ISC","_id":"@solana/keychain-core@0.0.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"dist":{"shasum":"1e6488e53609484b79ddf6b5b5b37b175bb43fe1","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.0.0.tgz","fileCount":2,"integrity":"sha512-QFVgE7DG1BvMOQuQusnvB8z/buqPrIrcqTIBSsQK28hz1BDwgomNufLsA3WNa8+6A0fD1rj70rtsbATwIwRWVQ==","signatures":[{"sig":"MEYCIQDqPyXgFQmJadcn+NBXU4KdvY29NVevPDB4d6B+s3xwygIhALuOl/h3MfRbazdqvU1kZ2iTTy4jagmgeeXWAagXMr5a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":256},"main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"solana-devs","email":"npm@solana.org"},"_npmVersion":"10.8.2","directories":{},"_nodeVersion":"20.19.6","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.0.0_1767678956489_0.12957682338940724","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@solana/keychain-core","version":"0.2.1","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@0.2.1","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"1ed229c20ce40fd4a549353c3ee7986c938cb240","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.2.1.tgz","fileCount":22,"integrity":"sha512-jduqFo7M1R2ZH/i5zha9ecktj/f8Xh9hPXvQU6uwY2ZcWg1NROK6fyW5zt4MUI+q+bgh+r77aTk4SXPZy3qdpA==","signatures":[{"sig":"MEQCICIlt7iczI1C90apy/OjivUws78d0lbtNWnb+VcIBLcqAiByLMcIrdDgUnWCV2vRRJVSgmXXWd+Rg9cZZ6EBw0Yvvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29168},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-0.2.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-0.2.1.tgz","_integrity":"sha512-jduqFo7M1R2ZH/i5zha9ecktj/f8Xh9hPXvQU6uwY2ZcWg1NROK6fyW5zt4MUI+q+bgh+r77aTk4SXPZy3qdpA==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.6.2","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.12.0","dependencies":{"@solana/keys":"^5.0.0","@solana/signers":"^5.0.0","@solana/addresses":"^5.0.0","@solana/codecs-core":"^5.0.0","@solana/transactions":"^5.0.0","@solana/codecs-strings":"^5.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.2.1_1767737128141_0.309995437945348","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@solana/keychain-core","version":"0.3.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@0.3.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"8fe5c723596e1c7b2cd0ac8afe756dc4d098a68c","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.3.0.tgz","fileCount":22,"integrity":"sha512-SHMcSy5i5DY4kIUB+nVkab7tqlfilXrj9BoMS0ix33jd4rGYjnylczadKe5zfCq6dkYXu5FFmmk4cQ0FUaye7w==","signatures":[{"sig":"MEUCIQDNo7o0zkwwBc5ArAxw0wnMGt2iaD6JuEkOb+996Mk64QIgD/7d/4SaOPZNufwgxMZ2mx+oyc5CZdc5xHHsFtApw2o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29168},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-0.3.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-0.3.0.tgz","_integrity":"sha512-SHMcSy5i5DY4kIUB+nVkab7tqlfilXrj9BoMS0ix33jd4rGYjnylczadKe5zfCq6dkYXu5FFmmk4cQ0FUaye7w==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.6.2","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@solana/keys":"^5.0.0","@solana/signers":"^5.0.0","@solana/addresses":"^5.0.0","@solana/codecs-core":"^5.0.0","@solana/transactions":"^5.0.0","@solana/codecs-strings":"^5.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.3.0_1769622034002_0.8476263536837623","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@solana/keychain-core","version":"0.4.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@0.4.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"451eed2550d191e242a908d443ba650ff4776205","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.4.0.tgz","fileCount":22,"integrity":"sha512-EF6cKMYm1RYzv6rhS04wF46vob5YBnu9YLblQ80zHXCEB6yvTBlalF6xEX4Ekryux2VQgUkrmHHFMe9BbPmeLg==","signatures":[{"sig":"MEQCIDUm8IkBPTBg5pZ/vWv4BImqME4AC6M818S3fwbATY8GAiAiHgXTzgG6lUC+KrHGKxs2QwTCKq/TnmXoBww+w9POpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29159},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-0.4.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-0.4.0.tgz","_integrity":"sha512-EF6cKMYm1RYzv6rhS04wF46vob5YBnu9YLblQ80zHXCEB6yvTBlalF6xEX4Ekryux2VQgUkrmHHFMe9BbPmeLg==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.6.2","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.4.0_1770756319750_0.4215705328099073","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@solana/keychain-core","version":"0.5.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@0.5.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"91c93899ca2c25d6d28a673f5d35a8582dedb621","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.5.0.tgz","fileCount":22,"integrity":"sha512-HD1310RGzAFnDBqHaWjdIIw+Jjoo8iBG6Y/iaFLMeG1CcOA2OTQjaUTnb+/8ZSR5N+/V0vGrlrR3PCcapej3Fw==","signatures":[{"sig":"MEUCIGyCNF+JP6wE4NVCcmmvefiAbbrIA+U5rQgl9t4Iwz5LAiEA4IilTMPu79MZvDKKdA8+nRp88aIKegHvyyslNfEDgPY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29412},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-0.5.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-0.5.0.tgz","_integrity":"sha512-HD1310RGzAFnDBqHaWjdIIw+Jjoo8iBG6Y/iaFLMeG1CcOA2OTQjaUTnb+/8ZSR5N+/V0vGrlrR3PCcapej3Fw==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.9.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.5.0_1772819613673_0.8015614489719898","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@solana/keychain-core","version":"0.6.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@0.6.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"a4c7f7bc7b93448edfb2882ea412bc9e779a1c8e","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.6.0.tgz","fileCount":28,"integrity":"sha512-9KcoCacyBd9YvQ+fmNoDkGBKug1OPccLNWx3/DsTwgWtJbU5QdLMOK4Cp/n4o8UHTklDze+LFHRE4pnDJUbywg==","signatures":[{"sig":"MEUCIQCuKjHWqq/QG7ffo7XfwYY8Ih8Ml+tLeS05vj+gA7ZqqQIgEdas++ohaij/TUzskNuKUIE50YED+wosaHR9iXnfzlo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41357},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-0.6.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-0.6.0.tgz","_integrity":"sha512-9KcoCacyBd9YvQ+fmNoDkGBKug1OPccLNWx3/DsTwgWtJbU5QdLMOK4Cp/n4o8UHTklDze+LFHRE4pnDJUbywg==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.9.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.10"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.6.0_1774023161026_0.890706667189054","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@solana/keychain-core","version":"0.6.1","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@0.6.1","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"a36be29cced3c9207209c953a43b089ca687bd03","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-0.6.1.tgz","fileCount":28,"integrity":"sha512-hZt6IIxtr+bHYGSRyiVBJhfe5h/5fEtpP5eZRUN32lnbMB20cJb2RA4kfwuu6C0CVeEJc1w1aMlKr4DXNnpYTg==","signatures":[{"sig":"MEUCIQDwNA29zSF2KcJAfSn01ahj4gUzMbE0jQjHFwy8r9VQGAIgH5JfWfA1qHBG9DYMknMqieHKoUt271b2rkZ/xsTg8Ig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41580},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-0.6.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-0.6.1.tgz","_integrity":"sha512-hZt6IIxtr+bHYGSRyiVBJhfe5h/5fEtpP5eZRUN32lnbMB20cJb2RA4kfwuu6C0CVeEJc1w1aMlKr4DXNnpYTg==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.9.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.10","@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"peerDependencies":{"@solana/keys":">=6.0.1","@solana/signers":">=6.0.1","@solana/addresses":">=6.0.1","@solana/codecs-core":">=6.0.1","@solana/transactions":">=6.0.1","@solana/codecs-strings":">=6.0.1"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_0.6.1_1774622226072_0.06483413201902577","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@solana/keychain-core","version":"1.0.1","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@1.0.1","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"8baf6abe33c400365cdbdbe5b5d72f0955e4f601","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-1.0.1.tgz","fileCount":29,"integrity":"sha512-Ky3gRkDRU4XArf5xa7b5b3GNatFKocEtLZEl99eIKSCnsdhSlFvgWHVboKGqHlOTru/KDf78+zR7rr8ovK2/yg==","signatures":[{"sig":"MEYCIQCjQw60dpnkCqEsHPc62oQoE4rpDF+2dDpdk5tkYaAJswIhAIpKOw8VZBZH0RCt+IgcyvTRii52uuxc3aFp884TmjYy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":47068},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-1.0.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-1.0.1.tgz","_integrity":"sha512-Ky3gRkDRU4XArf5xa7b5b3GNatFKocEtLZEl99eIKSCnsdhSlFvgWHVboKGqHlOTru/KDf78+zR7rr8ovK2/yg==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.11.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.10","@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"peerDependencies":{"@solana/keys":">=6.0.1","@solana/signers":">=6.0.1","@solana/addresses":">=6.0.1","@solana/codecs-core":">=6.0.1","@solana/transactions":">=6.0.1","@solana/codecs-strings":">=6.0.1"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_1.0.1_1775227628711_0.42328804971074896","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@solana/keychain-core","version":"1.1.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@1.1.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"dc7db578bb53317fc9cea9b4fd624d798a571765","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-1.1.0.tgz","fileCount":29,"integrity":"sha512-EKF2cskojsspQmeST0wn9j/1g326iEmr/TEospmGHUu5rEePTHA3yS9zhuEB631tzjbJpJH3ZtKyan30zxnhVQ==","signatures":[{"sig":"MEQCIEr4sV3HCeNCCryDyvwPU8SSdcxJxFyJdH96l95qAQeQAiA8Wourz0bTTk07ClDsgnenqcREac7+Q2TghkadhU5shw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":47068},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-1.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-1.1.0.tgz","_integrity":"sha512-EKF2cskojsspQmeST0wn9j/1g326iEmr/TEospmGHUu5rEePTHA3yS9zhuEB631tzjbJpJH3ZtKyan30zxnhVQ==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.11.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.10","@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"peerDependencies":{"@solana/keys":">=6.0.1","@solana/signers":">=6.0.1","@solana/addresses":">=6.0.1","@solana/codecs-core":">=6.0.1","@solana/transactions":">=6.0.1","@solana/codecs-strings":">=6.0.1"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_1.1.0_1776093786983_0.5081725333720222","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@solana/keychain-core","version":"1.2.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@1.2.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"726ac672ee048057b44921e51cac6dcc4c9b4f96","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-1.2.0.tgz","fileCount":34,"integrity":"sha512-dCOvXiXxkYMYuaVz3JHkecmTxIvVA/hbAlqtJ9AnKKU/kXPCKAV+gohNaMI0EJUKiFmJWAdHIFzVj+vB9Sy4Gw==","signatures":[{"sig":"MEUCIQCeV9MPvx/YRbRl/Qmo5dTBFH3dAQi3AU4LWzogbmJ7rgIgU1rJU6FcCr7JqOkBxIqm6kUo79TXeEfWeJNgn9AP99Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":47898},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-1.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-1.2.0.tgz","_integrity":"sha512-dCOvXiXxkYMYuaVz3JHkecmTxIvVA/hbAlqtJ9AnKKU/kXPCKAV+gohNaMI0EJUKiFmJWAdHIFzVj+vB9Sy4Gw==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.11.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.0.10","@solana/keys":"^6.0.1","@solana/signers":"^6.0.1","@solana/addresses":"^6.0.1","@solana/codecs-core":"^6.0.1","@solana/transactions":"^6.0.1","@solana/codecs-strings":"^6.0.1"},"peerDependencies":{"@solana/keys":">=6.0.1","@solana/signers":">=6.0.1","@solana/addresses":">=6.0.1","@solana/codecs-core":">=6.0.1","@solana/transactions":">=6.0.1","@solana/codecs-strings":">=6.0.1"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_1.2.0_1777557710705_0.12705656020061462","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@solana/keychain-core","version":"1.3.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@1.3.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"8ba22d5d2e6da9a97a01726a450881c9d749e061","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-1.3.0.tgz","fileCount":34,"integrity":"sha512-iIH3GRQdNPiLZVDU7MxiDzIQ8Fd8GKw4LxaeuifBjqWHFbAlOFSjgvvtNix1VFHy1quvCFSJZt+/0l0MRX0aoQ==","signatures":[{"sig":"MEYCIQDcKNVUAsBWf9zz2pm192SMHnSJKMUve0EYGFHCjDoaPAIhAJb/18dJAKBkk8oZPM9oM92l9QRJKn6uNAvyu/Ykfj2S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":48620},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-1.3.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-1.3.0.tgz","_integrity":"sha512-iIH3GRQdNPiLZVDU7MxiDzIQ8Fd8GKw4LxaeuifBjqWHFbAlOFSjgvvtNix1VFHy1quvCFSJZt+/0l0MRX0aoQ==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.13.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.2","vitest":"^4.1.6","@solana/keys":"^6.9.0","@solana/signers":"^6.9.0","@solana/addresses":"^6.9.0","@solana/codecs-core":"^6.9.0","@solana/transactions":"^6.9.0","@solana/codecs-strings":"^6.9.0"},"peerDependencies":{"@solana/keys":">=6.0.1","@solana/signers":">=6.0.1","@solana/addresses":">=6.0.1","@solana/codecs-core":">=6.0.1","@solana/transactions":">=6.0.1","@solana/codecs-strings":">=6.0.1"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_1.3.0_1780343550724_0.1651606896065403","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@solana/keychain-core","version":"1.4.0","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@1.4.0","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"49cabd36e281e389612826945955e00c6b8fa92a","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-1.4.0.tgz","fileCount":53,"integrity":"sha512-WhNYopIPdHAEwJ3RDQ7VtUbKrOa2sEV9Z/Q9RxQNlfVDykzC7j/hQrlMcl5Uc3HTTA1J1/3Hg3wbnZPshSy6xg==","signatures":[{"sig":"MEUCIGxQGVXMPxBpTYrfNJhOa/duVWqghCdqo7uAbppW73jxAiEAu35lL1Dw2odLCTdaGtF7m0+kuoSdydohwUvcq0CWLAU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":80527},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-1.4.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-1.4.0.tgz","_integrity":"sha512-WhNYopIPdHAEwJ3RDQ7VtUbKrOa2sEV9Z/Q9RxQNlfVDykzC7j/hQrlMcl5Uc3HTTA1J1/3Hg3wbnZPshSy6xg==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.13.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.5","vitest":"^4.1.6","@solana/keys":"^6.9.0","@solana/signers":"^6.9.0","@solana/addresses":"^6.9.0","@solana/codecs-core":"^6.9.0","@solana/transactions":"^6.9.0","@solana/codecs-strings":"^6.9.0"},"peerDependencies":{"@solana/keys":">=6.0.1","@solana/signers":">=6.0.1","@solana/addresses":">=6.0.1","@solana/codecs-core":">=6.0.1","@solana/transactions":">=6.0.1","@solana/codecs-strings":">=6.0.1"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_1.4.0_1782165211011_0.6567608743643363","host":"s3://npm-registry-packages-npm-production"}},"2.0.0-beta.1":{"name":"@solana/keychain-core","version":"2.0.0-beta.1","keywords":["solana","signing","wallet","privy","vault","turnkey"],"author":{"name":"Solana Foundation"},"license":"MIT","_id":"@solana/keychain-core@2.0.0-beta.1","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"homepage":"https://github.com/solana-foundation/solana-keychain#readme","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"245c5c378dca8f87b8e240bd29e7b0b0aebd34fb","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-2.0.0-beta.1.tgz","fileCount":67,"integrity":"sha512-pdpi8nQRbHCh0QJOohh1IJrQQhPD7K48UgHAvnf4teabYg9xSGuWjU0yx8BWxHSINVrduHW2drTcYvoKGPOD3g==","signatures":[{"sig":"MEYCIQDuo+pTzAW6zkLFq3LuE8/VkR1VzN8iNc6dsWOTqEGolQIhAJUPWFLJ/zf5vBsMVPd9vqQotVJwXk3ZpxMCG80GsN/F","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@2.0.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":179999},"main":"./dist/index.js","type":"module","_from":"file:.npm-pack/solana-keychain-core-2.0.0-beta.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:34871fb1-456b-4959-aa77-2914cfc30630"}},"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-2.0.0-beta.1.tgz","_integrity":"sha512-pdpi8nQRbHCh0QJOohh1IJrQQhPD7K48UgHAvnf4teabYg9xSGuWjU0yx8BWxHSINVrduHW2drTcYvoKGPOD3g==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.17.0","description":"Core interfaces and types for external Solana signers","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"vite":"^7.3.6","vitest":"^4.1.10","@solana/keys":"8.0.0","@solana/signers":"8.0.0","@solana/addresses":"8.0.0","@solana/codecs-core":"8.0.0","@solana/transactions":"8.0.0","@solana/codecs-strings":"8.0.0"},"peerDependencies":{"@solana/keys":">=8.0.0","@solana/signers":">=8.0.0","@solana/addresses":">=8.0.0","@solana/codecs-core":">=8.0.0","@solana/transactions":">=8.0.0","@solana/codecs-strings":">=8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/keychain-core_2.0.0-beta.1_1787847714029_0.45535710504783955","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"_id":"@solana/keychain-core@2.0.0","bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"dist":{"shasum":"38eb57ffaa451d77aca095a0fa6d329126337c29","tarball":"https://registry.npmjs.org/@solana/keychain-core/-/keychain-core-2.0.0.tgz","fileCount":68,"integrity":"sha512-yMuLwC6PPNeuRqTebqCNnjH9PWPZ6Vpzz1oPwP/Jmuc0JJn/o4R5neQ3EVZQhSyPqLg6spnnAVO+LsRnmlCKbw==","signatures":[{"sig":"MEQCIAz5cEJr+GF6dFFXjBCQCq5RDOmkWyQNsjod0AC8A/4gAiBnVqT6qknd0Cl/1s3Ae8zNOqvQECu9B4dCyhFk6JCxtA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDTis1epppU75yJL/6FDAbvuw4hlFgEqRKOojLassWTLAIgIftw3T5LoKaTP/NolIi+uGhBMka6XUqxYASwfgIC3GU="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@solana%2fkeychain-core@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":210498},"main":"./dist/index.js","name":"@solana/keychain-core","type":"module","_from":"file:.npm-pack/solana-keychain-core-2.0.0.tgz","types":"./dist/index.d.ts","author":{"name":"Solana Foundation"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"license":"MIT","scripts":{"test":"vitest run && pnpm run typecheck","build":"tsc --build","clean":"rm -rf dist *.tsbuildinfo","test:unit":"vitest run","typecheck":"tsc --noEmit","test:treeshakability":"agadoo dist/index.js"},"version":"2.0.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"34871fb1-456b-4959-aa77-2914cfc30630"}},"homepage":"https://github.com/solana-foundation/solana-keychain#readme","keywords":["solana","signing","wallet","privy","vault","turnkey"],"_resolved":"/home/runner/work/solana-keychain/solana-keychain/typescript/.npm-pack/solana-keychain-core-2.0.0.tgz","_integrity":"sha512-yMuLwC6PPNeuRqTebqCNnjH9PWPZ6Vpzz1oPwP/Jmuc0JJn/o4R5neQ3EVZQhSyPqLg6spnnAVO+LsRnmlCKbw==","repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"_npmVersion":"11.19.0","description":"Core interfaces and types for external Solana signers","directories":{},"maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"sideEffects":false,"_nodeVersion":"24.21.0","dependencies":{"@noble/curves":"^2.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","vitest":"^4.1.11","@solana/keys":"8.3.0","@solana/signers":"8.3.0","@solana/addresses":"8.3.0","@solana/codecs-core":"8.3.0","@solana/transactions":"8.3.0","@solana/codecs-strings":"8.3.0"},"peerDependencies":{"@solana/keys":">=8.1.0","@solana/signers":">=8.1.0","@solana/addresses":">=8.1.0","@solana/codecs-core":">=8.1.0","@solana/transactions":">=8.1.0","@solana/codecs-strings":">=8.1.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/keychain-core_2.0.0_1790868826377_0.620443024212743"}}},"time":{"created":"2026-01-06T05:55:56.326Z","modified":"2026-10-01T15:33:50.777Z","0.0.0":"2026-01-06T05:55:56.632Z","0.2.1":"2026-01-06T22:05:28.333Z","0.3.0":"2026-01-28T17:40:34.132Z","0.4.0":"2026-02-10T20:45:19.894Z","0.5.0":"2026-03-06T17:53:33.840Z","0.6.0":"2026-03-20T16:12:41.188Z","0.6.1":"2026-03-27T14:37:06.213Z","1.0.1":"2026-04-03T14:47:08.857Z","1.1.0":"2026-04-13T15:23:07.150Z","1.2.0":"2026-04-30T14:01:50.841Z","1.3.0":"2026-06-01T19:52:30.888Z","1.4.0":"2026-06-22T21:53:31.152Z","2.0.0-beta.1":"2026-08-27T16:21:54.218Z","2.0.0":"2026-10-01T15:33:46.477Z"},"bugs":{"url":"https://github.com/solana-foundation/solana-keychain/issues"},"author":{"name":"Solana Foundation"},"license":"MIT","homepage":"https://github.com/solana-foundation/solana-keychain#readme","keywords":["solana","signing","wallet","privy","vault","turnkey"],"repository":{"url":"git+https://github.com/solana-foundation/solana-keychain.git","type":"git"},"description":"Core interfaces and types for external Solana signers","maintainers":[{"name":"solana-devs","email":"npm@solana.org"}],"readme":"# @solana/keychain-core\n\nCore interfaces and utilities for building external Solana signers.\n\n## Installation\n\n```bash\npnpm add @solana/keychain-core\n```\n\n## What's Included\n\n### Interfaces\n\nOne capability interface per Kit signer shape, each adding `isAvailable(): Promise<boolean>` to the corresponding `@solana/signers` interface. Signing methods inherit Kit's optional config — including `{ abortSignal }` to cancel an in-flight signing request.\n\n**`SolanaTransactionSigner`** - A signer that returns signatures for a caller-owned transaction. Extends Kit's `TransactionPartialSigner`:\n\n```typescript\nimport { SolanaTransactionSigner } from '@solana/keychain-core';\n\ninterface SolanaTransactionSigner {\n    address: Address;\n    isAvailable(): Promise<boolean>;\n    signTransactions(\n        transactions: readonly Transaction[],\n        config?: TransactionPartialSignerConfig,\n    ): Promise<readonly SignatureDictionary[]>;\n}\n```\n\n**`SolanaModifyingSigner`** - A signer that may rewrite parts of the transaction before signing it, then returns the modified transaction without broadcasting. Extends Kit's `TransactionModifyingSigner`. Fordefi native manual mode (`FordefiNativeManualSigner`) has this shape: continue from the transaction it returns, never the one you submitted.\n\n**`SolanaSendingSigner`** - Interface for managed-broadcast backends. A backend belongs in this category when it rewrites the transaction message and/or broadcasts server-side, so its signature cannot be applied to the caller's transaction. Such signers expose `signAndSendTransactions()` (Kit's `TransactionSendingSigner`) and deliberately **no** `signTransactions` — Kit classifies signers by duck-typed method presence, and a present-but-throwing method would make Kit misroute the transaction and fail at runtime:\n\n```typescript\nimport { SolanaSendingSigner } from '@solana/keychain-core';\n\ninterface SolanaSendingSigner {\n    address: Address;\n    isAvailable(): Promise<boolean>;\n    signAndSendTransactions(transactions: readonly Transaction[]): Promise<readonly SignatureBytes[]>;\n}\n```\n\n**`SolanaMessageSigner`** - A signer that signs off-chain messages via `signMessages()`. Extends Kit's `MessagePartialSigner`. Message signing is orthogonal to the transaction shapes, exactly as Kit separates `MessageSigner` from `TransactionSigner`: a backend that signs messages intersects this interface with its transaction shape (`SolanaTransactionSigner & SolanaMessageSigner` for most backends), and a backend that does not (Crossmint, Utila) exposes no `signMessages` method at all.\n\n**`SolanaSigner`** - Any keychain signer: the union `SolanaModifyingSigner | SolanaSendingSigner | SolanaTransactionSigner`, mirroring Kit's `TransactionSigner` union. Which shape a signer has is not knowable from this type, so narrow with the guards below before calling a signing method.\n\nRuntime guards: `isSolanaSigner()`, `isSolanaTransactionSigner()`, `isSolanaModifyingSigner()`, `isSolanaSendingSigner()`, `isSolanaMessageSigner()`, `assertIsSolanaSigner()`, and `assertIsSolanaTransactionSigner()`. `signerCapabilities(signer)` reports the same information as a `{ canModifyTransactions, canSignAndSend, canSignMessages, canSignTransactions }` record.\n\n### Error Handling\n\n```typescript\nimport { SignerError, SignerErrorCode, throwSignerError } from '@solana/keychain-core';\n\n// Check error type\nif (error instanceof SignerError) {\n    console.log(error.code); // e.g., 'SIGNER_SIGNING_FAILED'\n    console.log(error.context); // Additional error details\n}\n\n// Throw typed errors\nthrowSignerError(SignerErrorCode.SIGNING_FAILED, {\n    address: 'signer-address',\n    message: 'Custom error message'\n});\n```\n\n**Available error codes:**\n- `INVALID_PRIVATE_KEY` - Invalid private key format\n- `INVALID_PUBLIC_KEY` - Invalid public key format\n- `SIGNING_FAILED` - Signing operation failed\n- `REMOTE_API_ERROR` - Remote signer API error\n- `HTTP_ERROR` - HTTP request failed\n- `SERIALIZATION_ERROR` - Transaction serialization failed\n- `CONFIG_ERROR` - Invalid configuration\n- `NOT_AVAILABLE` - Signer not available/healthy\n- `IO_ERROR` - File I/O error\n- `PRIVY_NOT_INITIALIZED` - Privy signer not initialized\n\n### Utilities\n\n**`extractSignatureFromWireTransaction`** - Extract a specific signer's signature from a signed transaction:\n\n```typescript\nimport { extractSignatureFromWireTransaction } from '@solana/keychain-core';\n\n// When a remote API returns a fully signed base64 transaction, we need to extract the signature to use Kit's native methods (which rely on .signTransactions to return a SignatureDictionary)\nconst signedTx = await remoteApi.signTransaction(...);\nconst sigDict = extractSignatureFromWireTransaction({\n    base64WireTransaction: signedTx,\n    signerAddress: myAddress\n});\n```\n\n**`createSignatureDictionary`** - Create a signature dictionary from raw signature bytes:\n\n```typescript\nimport { createSignatureDictionary } from '@solana/keychain-core';\n\nconst sigDict = createSignatureDictionary({\n    signature: signatureBytes,\n    signerAddress: myAddress\n});\n```\n\n## Usage\n\nThis package is typically used as a dependency when building custom signer implementations. See [@solana/keychain-privy](https://www.npmjs.com/package/@solana/keychain-privy) for an example implementation.\n\n```typescript\nimport { SolanaMessageSigner, SolanaTransactionSigner, SignerErrorCode, throwSignerError } from '@solana/keychain-core';\n\nclass MyCustomSigner implements SolanaTransactionSigner, SolanaMessageSigner {\n    readonly address: Address;\n\n    async isAvailable(): Promise<boolean> {\n        // Check if backend is healthy\n    }\n\n    async signMessages(messages: readonly SignableMessage[], config?: MessagePartialSignerConfig) {\n        // Sign messages using your backend, honoring config?.abortSignal\n    }\n\n    async signTransactions(transactions: readonly Transaction[], config?: TransactionPartialSignerConfig) {\n        // Sign transactions using your backend, honoring config?.abortSignal\n    }\n}\n```\n\n## Type Guards\n\n**`isSolanaSigner`** - Check if a value is a `SolanaSigner` (any of the three transaction shapes):\n\n```typescript\nimport { isSolanaSigner } from '@solana/keychain-core';\n\nconst isSigner = isSolanaSigner(value); // true or false\n```\n\n**`isSolanaTransactionSigner`** / **`isSolanaModifyingSigner`** / **`isSolanaSendingSigner`** - Narrow a `SolanaSigner` to its transaction shape before calling a signing method:\n\n```typescript\nimport { isSolanaSendingSigner, isSolanaTransactionSigner } from '@solana/keychain-core';\n\nif (isSolanaSendingSigner(signer)) {\n    await signer.signAndSendTransactions([transaction]);\n} else if (isSolanaTransactionSigner(signer)) {\n    await signer.signTransactions([transaction]);\n}\n```\n\n**`isSolanaMessageSigner`** - Check whether a signer signs off-chain messages via `signMessages`.\n\n**`assertIsSolanaSigner`** - Assert that a value is a SolanaSigner:\n\n```typescript\nimport { assertIsSolanaSigner } from '@solana/keychain-core';\n\nassertIsSolanaSigner(value); // void (throws if not a SolanaSigner)\n```\n\n**`assertIsSolanaTransactionSigner`** - Assert that a value is a SolanaTransactionSigner. Use this where a signer must return signatures for a caller-owned transaction, e.g. before installing it as a Kit client `payer`/`identity`; a managed-broadcast signer fails this assertion.","readmeFilename":"README.md"}