{"_id":"@egym/capacitor-nfc-pass-wallet","_rev":"6-0252c4a16e2b2e48cc89742b79fbeabd","name":"@egym/capacitor-nfc-pass-wallet","dist-tags":{"latest":"0.4.0"},"versions":{"0.1.0":{"name":"@egym/capacitor-nfc-pass-wallet","version":"0.1.0","license":"UNLICENSED","_id":"@egym/capacitor-nfc-pass-wallet@0.1.0","maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"dist":{"shasum":"22e321b6a199ac7bca8cb68d47ecd32b815d28ce","tarball":"https://registry.npmjs.org/@egym/capacitor-nfc-pass-wallet/-/capacitor-nfc-pass-wallet-0.1.0.tgz","fileCount":27,"integrity":"sha512-BT4Sgu+gC4Lkl+9Pg3ERaE8CxrDLas4gCdU1+UxuRu3ymdHO/FI4AQi8DK8uiP43QwHbTUqG0Mon8CTOcQeYkQ==","signatures":[{"sig":"MEYCIQCrCENjwzlIkkTPuXrKynxhHmg/8cuJVlURJGjDduR3ZwIhAJcQa5r0539DE9cDOaC8nhfi/v486+zA4gcP0CPXCmRR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150814},"main":"dist/plugin.js","type":"module","types":"dist/definitions.d.ts","gitHead":"3ab71a0f949d0a685f26c9f9e105aa80a7abb903","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"_npmVersion":"10.8.2","description":"Capacitor plugin for NFC pass wallet integration","directories":{},"_nodeVersion":"20.17.0","_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typescript":"^5.8.2","@capacitor/core":"^6.2.0"},"peerDependencies":{"@capacitor/core":">=6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-nfc-pass-wallet_0.1.0_1773321586641_0.2016452448649737","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@egym/capacitor-nfc-pass-wallet","version":"0.2.0","license":"UNLICENSED","_id":"@egym/capacitor-nfc-pass-wallet@0.2.0","maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"dist":{"shasum":"26e3cf5233a152004f2e3f7bb2a83b0fb4c1b835","tarball":"https://registry.npmjs.org/@egym/capacitor-nfc-pass-wallet/-/capacitor-nfc-pass-wallet-0.2.0.tgz","fileCount":27,"integrity":"sha512-WS/v7/ffWKFfNWtq+pZNV2hDOg4Yj4cprZe2Da1eCiRoR2Jj4m/Xms6tai+SpHBzf6WUkFBtpFD686WOGK+qXA==","signatures":[{"sig":"MEUCIQDDGgfOD/9ym7ZpAVp8pZJgda/H+WQJRYL3Tgg9WKQ2fAIgMO8xmJA/p71Aa1w2MdJ+rOk5OCAxA75evu1rYimT9lo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150950},"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":"4b7898d33d6baae1482389a509499acef7a04db3","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"_npmVersion":"11.6.2","description":"Capacitor plugin for NFC pass wallet integration","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typescript":"^5.8.2","@capacitor/core":"^6.2.0"},"peerDependencies":{"@capacitor/core":">=6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-nfc-pass-wallet_0.2.0_1773658646984_0.9808364441864008","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@egym/capacitor-nfc-pass-wallet","version":"0.2.1","license":"UNLICENSED","_id":"@egym/capacitor-nfc-pass-wallet@0.2.1","maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"homepage":"https://github.com/egym/lib-capacitor-nfc-pass-wallet#readme","bugs":{"url":"https://github.com/egym/lib-capacitor-nfc-pass-wallet/issues"},"dist":{"shasum":"358f4f5e0d0d069c1c39113933f83fcb0ba1d6ae","tarball":"https://registry.npmjs.org/@egym/capacitor-nfc-pass-wallet/-/capacitor-nfc-pass-wallet-0.2.1.tgz","fileCount":19,"integrity":"sha512-ueZXX1+yWcvlboXc4/LLPzRBwV85/4k1eOtpN9daeXb4W9S4fwXXzFDJ6JbXboZTUl10h7KAuLYfzuOmR0PeRQ==","signatures":[{"sig":"MEYCIQCtV7vBw90u4oF/6tcLukR8XQz9hK3r3y204WL/2m1s/AIhAMxw5ZLSnzKdEP6l//zWtgRn0Sz8urMk29eqwIOCG1gg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@egym%2fcapacitor-nfc-pass-wallet@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19505},"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":"e96256673c3d13a5732a9a4968a2c8c40516fe50","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fd608ccc-9d56-480d-9ec9-310cd0524645"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/egym/lib-capacitor-nfc-pass-wallet.git","type":"git","directory":"packages/capacitor"},"_npmVersion":"11.9.0","description":"Capacitor plugin for NFC pass wallet integration","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typescript":"^5.8.2","@capacitor/core":"^6.2.0"},"peerDependencies":{"@capacitor/core":">=6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-nfc-pass-wallet_0.2.1_1774885255255_0.8651545345383931","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@egym/capacitor-nfc-pass-wallet","version":"0.3.0","license":"UNLICENSED","_id":"@egym/capacitor-nfc-pass-wallet@0.3.0","maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"homepage":"https://github.com/egym/lib-capacitor-nfc-pass-wallet#readme","bugs":{"url":"https://github.com/egym/lib-capacitor-nfc-pass-wallet/issues"},"dist":{"shasum":"c0e6efef88ae83d2d000395d4b92c13e08676907","tarball":"https://registry.npmjs.org/@egym/capacitor-nfc-pass-wallet/-/capacitor-nfc-pass-wallet-0.3.0.tgz","fileCount":20,"integrity":"sha512-9o+sGCt0RmHS9ch0asdx79kH5TzzQFVHMsVFgPrB3oFNLKyr9yYgz3tMxW6QABmePKdtAuqvRQCgrkleCwiMXw==","signatures":[{"sig":"MEUCIQDTaEuro8A2y1UYBD7VoUgwSiY0LHwDInNm9DO4zWX94QIgKZiyyjP4LAvsF1SFZgPMnypVtynDPer2tf/0Y1RvJZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@egym%2fcapacitor-nfc-pass-wallet@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20843},"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":"81447ec71ecdfdf0df4bdfab3d220386ea3dc454","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fd608ccc-9d56-480d-9ec9-310cd0524645"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/egym/lib-capacitor-nfc-pass-wallet.git","type":"git","directory":"packages/capacitor"},"_npmVersion":"11.9.0","description":"Capacitor plugin for NFC pass wallet integration","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","typescript":"^5.8.2","@capacitor/core":"^6.2.0"},"peerDependencies":{"@capacitor/core":">=6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-nfc-pass-wallet_0.3.0_1774951179277_0.7597232971702714","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@egym/capacitor-nfc-pass-wallet","version":"0.3.1","license":"Apache-2.0","_id":"@egym/capacitor-nfc-pass-wallet@0.3.1","maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"homepage":"https://github.com/egym/lib-capacitor-nfc-pass-wallet#readme","bugs":{"url":"https://github.com/egym/lib-capacitor-nfc-pass-wallet/issues"},"dist":{"shasum":"48dc5cba50b8b07c672b150556b2fa3e21a2c432","tarball":"https://registry.npmjs.org/@egym/capacitor-nfc-pass-wallet/-/capacitor-nfc-pass-wallet-0.3.1.tgz","fileCount":19,"integrity":"sha512-T3jvEE8zUTD8OevFxvrtU3i/VIGL0zxOJje7wt7DwN1EizUyZRB13gkLsJBrsKyQ3DXMvqqPPiW5ZhtRyFggZA==","signatures":[{"sig":"MEUCIQDzVKxGIaIH8ssCcjUxjj9Y+z48Ha6ITZiyiXkuQunHqQIgZ5tEKc1saoSzJxnCMrBWpwZccxWMtSuDubdwS+07MKo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@egym%2fcapacitor-nfc-pass-wallet@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34121},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"5ad20e850fb5031ba619668473005c11e9196b18","scripts":{"build":"tsc -p tsconfig.json","lint:ts":"npm run typecheck","prepare":"husky","lint:ios":"pod lib lint CapacitorNFCPassWallet.podspec --allow-warnings","build:ios":"pod lib lint CapacitorNFCPassWallet.podspec --allow-warnings","typecheck":"tsc -p tsconfig.json --noEmit","lint:android":"if [ \"$USE_SYSTEM_ANDROID_SDK\" = \"1\" ]; then cd android && gradle lint; elif command -v devenv >/dev/null 2>&1; then devenv shell -- sh -c 'cd android && gradle lint'; else cd android && gradle lint; fi","build:android":"if [ \"$USE_SYSTEM_ANDROID_SDK\" = \"1\" ]; then cd android && gradle assemble; elif command -v devenv >/dev/null 2>&1; then devenv shell -- sh -c 'cd android && gradle assemble'; else cd android && gradle assemble; fi"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fd608ccc-9d56-480d-9ec9-310cd0524645"}},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/egym/lib-capacitor-nfc-pass-wallet.git","type":"git"},"_npmVersion":"11.11.0","description":"Capacitor plugin for NFC pass wallet integration","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","typescript":"^5.8.2","lint-staged":"^15.5.2","@capacitor/core":"^6.2.0","@changesets/cli":"^2.29.6"},"peerDependencies":{"@capacitor/core":">=6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-nfc-pass-wallet_0.3.1_1776178302334_0.8680381152233143","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@egym/capacitor-nfc-pass-wallet","version":"0.4.0","description":"Capacitor plugin for NFC pass wallet integration","repository":{"type":"git","url":"git+https://github.com/egym/lib-capacitor-nfc-pass-wallet.git"},"license":"Apache-2.0","type":"module","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"prepare":"husky","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","verify:lockfile":"node ./scripts/verify-lockfile.mjs","release:prepare":"bash ./scripts/release-prepare.sh","lint:ts":"npm run typecheck","lint:android":"if [ \"$USE_SYSTEM_ANDROID_SDK\" = \"1\" ]; then cd android && ./gradlew lint; elif command -v devenv >/dev/null 2>&1; then devenv shell -- sh -c 'cd android && ./gradlew lint'; else cd android && ./gradlew lint; fi","lint:ios":"pod lib lint CapacitorNFCPassWallet.podspec --allow-warnings","build:android":"if [ \"$USE_SYSTEM_ANDROID_SDK\" = \"1\" ]; then cd android && ./gradlew assemble; elif command -v devenv >/dev/null 2>&1; then devenv shell -- sh -c 'cd android && ./gradlew assemble'; else cd android && ./gradlew assemble; fi","build:ios":"pod lib lint CapacitorNFCPassWallet.podspec --allow-warnings"},"engines":{"node":">=22.0.0"},"peerDependencies":{"@capacitor/core":"^7.0.0 || ^8.0.0"},"devDependencies":{"@capacitor/core":"^8.4.2","@changesets/cli":"^2.29.6","husky":"^9.1.7","lint-staged":"^15.5.2","typescript":"^5.8.2"},"capacitor":{"android":{"src":"android"},"ios":{"src":"ios"}},"gitHead":"9b56e7eb3fe250cb08f54aa98df272dbc7d00775","_id":"@egym/capacitor-nfc-pass-wallet@0.4.0","bugs":{"url":"https://github.com/egym/lib-capacitor-nfc-pass-wallet/issues"},"homepage":"https://github.com/egym/lib-capacitor-nfc-pass-wallet#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-DUxSu6bA0yWrCWFZUvPM9PKSClDxDntnDnmWVaT5nO827tIGxYzIYBL+vF/BodchLJRirGy9NowRe1+T1wNxhA==","shasum":"2c3522d77425f9b986051fef2079cab806e66ec7","tarball":"https://registry.npmjs.org/@egym/capacitor-nfc-pass-wallet/-/capacitor-nfc-pass-wallet-0.4.0.tgz","fileCount":18,"unpackedSize":33613,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@egym%2fcapacitor-nfc-pass-wallet@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEMCH2DioYW8sgLu53xGRWvoeti3I2R7tCUms6X2kdT3HMECICIHlKL0zwsdfWuIrIpFaN2oUTYvi2fFKjjra9pRKqPB"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fd608ccc-9d56-480d-9ec9-310cd0524645"}},"directories":{},"maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/capacitor-nfc-pass-wallet_0.4.0_1785765579384_0.31212449607143533"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-12T13:19:46.579Z","modified":"2026-08-03T13:59:40.071Z","0.1.0":"2026-03-12T13:19:46.772Z","0.2.0":"2026-03-16T10:57:27.144Z","0.2.1":"2026-03-30T15:40:55.424Z","0.3.0":"2026-03-31T09:59:39.437Z","0.3.1":"2026-04-14T14:51:42.504Z","0.4.0":"2026-08-03T13:59:39.503Z"},"bugs":{"url":"https://github.com/egym/lib-capacitor-nfc-pass-wallet/issues"},"license":"Apache-2.0","homepage":"https://github.com/egym/lib-capacitor-nfc-pass-wallet#readme","repository":{"type":"git","url":"git+https://github.com/egym/lib-capacitor-nfc-pass-wallet.git"},"description":"Capacitor plugin for NFC pass wallet integration","maintainers":[{"name":"oleksandrkolomiitsev","email":"alexander.kolomiytsev@gmail.com"},{"name":"egym_pedro_rosa","email":"pedro.rosa@egym.com"},{"name":"anamnizami","email":"anam.nizami@egym.com"},{"name":"nikkarbaum","email":"niklas.karbaum@egym.com"},{"name":"halimdev","email":"abdelhalim.abdelsadek@egym.com"}],"readme":"# @egym/capacitor-nfc-pass-wallet\n\nCapacitor plugin for EGYM NFC pass wallet integration on iOS and Android.\n\nThis package bundles its native implementations, so partner apps do not need separate iOS or Android wrapper libraries for the wallet flows exposed here.\n\nSupported Capacitor versions are 7 and 8. Development requires Node.js 22 or newer; CI and releases use the Node.js version pinned in `.nvmrc`.\n\n## Installation\n\n### Option 1: Install from npm\n\n```bash\nnpm install @egym/capacitor-nfc-pass-wallet\nnpx cap sync\n```\n\n### Option 2: Vendor via git submodule\n\nIf your host projects do not use npm, `npx`, or the Capacitor CLI, you can vendor this repository into your app and wire the native package directly.\n\nAdd the plugin repository as a submodule:\n\n```bash\ngit submodule add https://github.com/egym/lib-capacitor-nfc-pass-wallet.git vendor/lib-capacitor-nfc-pass-wallet\ngit submodule update --init --recursive\n```\n\nThen integrate the native package from the checked-out submodule.\n\nFor iOS with CocoaPods, add the local pod in your `Podfile`:\n\n```ruby\npod 'CapacitorNFCPassWallet', :path => '../vendor/lib-capacitor-nfc-pass-wallet'\n```\n\nIf you prefer Swift Package Manager, add `vendor/lib-capacitor-nfc-pass-wallet` as a local package in Xcode and link the `EgymCapacitorNfcPassWallet` product.\n\nFor Android, include the local Gradle module from the submodule checkout.\n\nIn `settings.gradle`:\n\n```groovy\ninclude ':capacitor-nfc-pass-wallet'\nproject(':capacitor-nfc-pass-wallet').projectDir = new File(settingsDir, '../vendor/lib-capacitor-nfc-pass-wallet/android')\n```\n\nIn your app module `build.gradle`:\n\n```groovy\ndependencies {\n\t\timplementation project(':capacitor-nfc-pass-wallet')\n}\n```\n\nAdjust the relative paths to match your repository layout.\n\nWhen updating the plugin later, pull the new submodule revision first, then rerun your normal native dependency refresh steps such as `pod install` or Gradle sync.\n\n## Import\n\nIf your app consumes the plugin through a JavaScript package dependency, import it from the package name:\n\n```ts\nimport { CapacitorNFCPassWallet } from \"@egym/capacitor-nfc-pass-wallet\";\n```\n\n## API\n\nThe plugin exposes three methods:\n\n- `savePassToWallet`\n- `readPassFromWallet`\n- `isWalletAvailable`\n\n`isWalletAvailable()` and `readPassFromWallet()` both resolve to objects with a boolean `result` property.\n\n```ts\ntype SavePassToWalletOptions = {\n  iosPkPassBase64?: string;\n  androidPassJwt?: string;\n  saveToGooglePayUrl?: string;\n  googlePayJwt?: string;\n};\n\ntype ReadPassFromWalletOptions = {\n  iosPkPassBase64?: string;\n};\n\ntype WalletAvailabilityResult = {\n  result: boolean;\n};\n\ntype ReadPassFromWalletResult = {\n  result: boolean;\n};\n```\n\n### `isWalletAvailable()`\n\nUse this before showing wallet actions in the UI.\n\n```ts\nconst availability = await CapacitorNFCPassWallet.isWalletAvailable();\n\nif (availability.result) {\n  // show wallet CTA\n}\n```\n\n### `savePassToWallet(options)`\n\nOn iOS, pass the Base64-encoded `.pkpass` payload via `iosPkPassBase64`.\n\n```ts\nawait CapacitorNFCPassWallet.savePassToWallet({\n  iosPkPassBase64,\n});\n```\n\nOn Android, prefer `googlePayJwt` when available. `saveToGooglePayUrl` is also supported, and `androidPassJwt` remains available temporarily for backward compatibility.\n\n```ts\nawait CapacitorNFCPassWallet.savePassToWallet({\n  googlePayJwt,\n  saveToGooglePayUrl,\n  androidPassJwt,\n});\n```\n\nAndroid payload precedence is:\n\n1. `googlePayJwt`\n2. `saveToGooglePayUrl`\n3. `androidPassJwt`\n\n### `readPassFromWallet(options)`\n\nThis is supported on iOS only and returns whether the pass is already present in Apple Wallet.\n\n```ts\nconst passState = await CapacitorNFCPassWallet.readPassFromWallet({\n  iosPkPassBase64,\n});\n\nif (passState.result) {\n  // pass already exists in Apple Wallet\n}\n```\n\nOn Android, `readPassFromWallet()` is intentionally unsupported and rejects with `NOT_SUPPORTED`.\n\n## Typical Integration Flow\n\n```ts\nconst availability = await CapacitorNFCPassWallet.isWalletAvailable();\n\nif (!availability.result) {\n  return;\n}\n\nif (platform === \"ios\") {\n  const existingPass = await CapacitorNFCPassWallet.readPassFromWallet({\n    iosPkPassBase64,\n  });\n\n  if (!existingPass.result) {\n    await CapacitorNFCPassWallet.savePassToWallet({ iosPkPassBase64 });\n  }\n}\n\nif (platform === \"android\") {\n  await CapacitorNFCPassWallet.savePassToWallet({\n    googlePayJwt,\n    saveToGooglePayUrl,\n    androidPassJwt,\n  });\n}\n```\n\n## Platform Notes\n\n- iOS availability is based on whether the app can present the Apple Wallet add flow\n- iOS `savePassToWallet()` presents the native Apple Wallet UI\n- Android `savePassToWallet()` launches the Google Wallet add flow\n- Android `readPassFromWallet()` is not supported by Google Wallet APIs\n\n## Errors\n\nThe plugin can reject with these error codes:\n\n- `UNAVAILABLE`\n- `INVALID_PAYLOAD`\n- `NOT_SUPPORTED`\n- `USER_CANCELED`\n- `NATIVE_ERROR`\n\n## Development\n\n### Local Build\n\n```bash\nnpm install\nnpm run build\nnpm run build:android\nnpm run build:ios\n```\n\n### Local Android Toolchain via `devenv`\n\nTo avoid relying on a system-wide Android SDK, this repo supports a project-local Android toolchain via `devenv`.\n\n```bash\ndevenv shell\ncd android\n./gradlew assemble\n./gradlew test\n```\n\n- `devenv` provisions Java and the Android SDK for this project\n- `ANDROID_HOME` and `ANDROID_SDK_ROOT` are set in the shell\n- the checked-in Gradle wrapper pins the build tool version\n- The Android implementation lives in `android`\n- Android consumers inherit AppCompat because Capacitor's bridge exposes `AppCompatActivity`, plus `play-services-pay`; the unused AndroidX Core dependency is intentionally omitted\n\n### Local iOS Validation\n\nThe iOS implementation is distributed through the root podspec.\n\n```bash\npod lib lint CapacitorNFCPassWallet.podspec --allow-warnings\n```\n\n### Release Automation\n\nGitHub Actions workflows in `.github/workflows` cover:\n\n- GitHub release and tag creation via `release-github.yml`\n- npm publication via `publish-npm.yml`\n\nRelease PR preparation is maintainer-driven via `npm run release:prepare`.\n\n### Publish a New Version\n\nThis repository uses Changesets for versioning.\n\n1. Create a changeset:\n\n```bash\nnpx changeset\n```\n\n2. Commit the generated `.changeset/*.md` file together with your code changes.\n3. Merge the change into `main`.\n4. Run `npm run release:prepare` from a clean checkout.\n5. Merge the release PR.\n6. Optionally run `release-github.yml` to create the semver Git tag and GitHub Release.\n7. Run `publish-npm.yml`.\n\nRelease tags are the plain package version (for example, `0.4.0`) so CocoaPods and Swift Package Manager resolve the same release. The release prep command resets `chore/release-package` from `origin/main`, applies pending changesets, refreshes the lockfile, force-pushes the branch, and creates the release PR with `gh` when available. If `gh` is not installed, it prints the exact PR command to run manually.\n","readmeFilename":"README.md"}