{
  "api": {
    "name": "AppAttestPlugin",
    "slug": "appattestplugin",
    "docs": "Unified cross-platform attestation plugin for Capacitor.\n\nRecommended methods:\n- `prepare()`\n- `createAttestation()`\n- `createAssertion()`\n\nLegacy aliases are still available for compatibility:\n- `generateKey()`\n- `attestKey()`\n- `generateAssertion()`",
    "tags": [],
    "methods": [
      {
        "name": "isSupported",
        "signature": "() => Promise<IsSupportedResult>",
        "parameters": [],
        "returns": "Promise<IsSupportedResult>",
        "tags": [],
        "docs": "Checks whether native attestation is available on this device.",
        "complexTypes": [
          "IsSupportedResult"
        ],
        "slug": "issupported"
      },
      {
        "name": "getCapabilities",
        "signature": "() => Promise<AppAttestCapabilities>",
        "parameters": [],
        "returns": "Promise<AppAttestCapabilities>",
        "tags": [],
        "docs": "Returns attestation and optional fraud-signal capabilities available on the current platform.\n\nWidevine is Android-only and optional. Apps that do not call Widevine methods do not need any\nWidevine-specific setup.",
        "complexTypes": [
          "AppAttestCapabilities"
        ],
        "slug": "getcapabilities"
      },
      {
        "name": "prepare",
        "signature": "(options?: PrepareOptions | undefined) => Promise<PrepareResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "PrepareOptions | undefined"
          }
        ],
        "returns": "Promise<PrepareResult>",
        "tags": [],
        "docs": "Prepares attestation state and returns the key handle used for later calls.\n\niOS: generates a real App Attest key identifier.\nAndroid: prepares a Play Integrity Standard token provider handle.",
        "complexTypes": [
          "PrepareResult",
          "PrepareOptions"
        ],
        "slug": "prepare"
      },
      {
        "name": "createAttestation",
        "signature": "(options: CreateAttestationOptions) => Promise<CreateAttestationResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "CreateAttestationOptions"
          }
        ],
        "returns": "Promise<CreateAttestationResult>",
        "tags": [],
        "docs": "Creates a registration attestation token bound to a backend-issued challenge.\n\niOS: returns App Attest `attestationObject`.\nAndroid: returns Play Integrity Standard token.",
        "complexTypes": [
          "CreateAttestationResult",
          "CreateAttestationOptions"
        ],
        "slug": "createattestation"
      },
      {
        "name": "createAssertion",
        "signature": "(options: CreateAssertionOptions) => Promise<CreateAssertionResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "CreateAssertionOptions"
          }
        ],
        "returns": "Promise<CreateAssertionResult>",
        "tags": [],
        "docs": "Creates a request assertion token bound to a request payload.\n\niOS: returns App Attest assertion.\nAndroid: returns Play Integrity Standard token.",
        "complexTypes": [
          "CreateAssertionResult",
          "CreateAssertionOptions"
        ],
        "slug": "createassertion"
      },
      {
        "name": "getWidevineFingerprint",
        "signature": "(options?: WidevineFingerprintOptions | undefined) => Promise<WidevineFingerprintResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "WidevineFingerprintOptions | undefined"
          }
        ],
        "returns": "Promise<WidevineFingerprintResult>",
        "tags": [],
        "docs": "Returns an optional Android Widevine-derived fingerprint.\n\nThis method is Android-only and is not part of the normal attestation flow. Call it only when\nyour app needs a DRM-backed fraud signal and your privacy policy covers that use.\n\nThe default `fingerprint` is SHA-256 over the Widevine device unique ID and a salt.\nIf `hashSalt` is not provided, Android uses the app package name as the salt.\n\nThe raw Widevine ID is sensitive and is only returned as base64 when `includeRawId` is true.",
        "complexTypes": [
          "WidevineFingerprintResult",
          "WidevineFingerprintOptions"
        ],
        "slug": "getwidevinefingerprint"
      },
      {
        "name": "getDeviceCheckToken",
        "signature": "() => Promise<DeviceCheckTokenResult>",
        "parameters": [],
        "returns": "Promise<DeviceCheckTokenResult>",
        "tags": [],
        "docs": "Creates an iOS DeviceCheck token for server-side fraud-state lookups.",
        "complexTypes": [
          "DeviceCheckTokenResult"
        ],
        "slug": "getdevicechecktoken"
      },
      {
        "name": "storeKeyId",
        "signature": "(options: StoreKeyIdOptions) => Promise<OperationResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "StoreKeyIdOptions"
          }
        ],
        "returns": "Promise<OperationResult>",
        "tags": [],
        "docs": "Stores/prepares a key identifier for reuse.\n\niOS: persists in UserDefaults.\nAndroid: prepares a native Play Integrity provider for this key id in memory (process lifetime).",
        "complexTypes": [
          "OperationResult",
          "StoreKeyIdOptions"
        ],
        "slug": "storekeyid"
      },
      {
        "name": "getStoredKeyId",
        "signature": "() => Promise<GetStoredKeyIdResult>",
        "parameters": [],
        "returns": "Promise<GetStoredKeyIdResult>",
        "tags": [],
        "docs": "Returns the currently stored/prepared key identifier.\n\nAndroid value is only available while the process is alive.",
        "complexTypes": [
          "GetStoredKeyIdResult"
        ],
        "slug": "getstoredkeyid"
      },
      {
        "name": "clearStoredKeyId",
        "signature": "() => Promise<OperationResult>",
        "parameters": [],
        "returns": "Promise<OperationResult>",
        "tags": [],
        "docs": "Clears stored/prepared key identifiers.",
        "complexTypes": [
          "OperationResult"
        ],
        "slug": "clearstoredkeyid"
      },
      {
        "name": "generateKey",
        "signature": "(options?: PrepareOptions | undefined) => Promise<GenerateKeyResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "PrepareOptions | undefined"
          }
        ],
        "returns": "Promise<PrepareResult>",
        "tags": [
          {
            "name": "deprecated",
            "text": "Use `prepare()`."
          }
        ],
        "docs": "Legacy alias for `prepare()`.",
        "complexTypes": [
          "PrepareResult",
          "GenerateKeyOptions",
          "GenerateKeyResult"
        ],
        "slug": "generatekey"
      },
      {
        "name": "attestKey",
        "signature": "(options: AttestKeyOptions) => Promise<AttestKeyResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "CreateAttestationOptions"
          }
        ],
        "returns": "Promise<AttestKeyResult>",
        "tags": [
          {
            "name": "deprecated",
            "text": "Use `createAttestation()`."
          }
        ],
        "docs": "Legacy alias for `createAttestation()`.",
        "complexTypes": [
          "AttestKeyResult",
          "AttestKeyOptions"
        ],
        "slug": "attestkey"
      },
      {
        "name": "generateAssertion",
        "signature": "(options: GenerateAssertionOptions) => Promise<GenerateAssertionResult>",
        "parameters": [
          {
            "name": "options",
            "docs": "",
            "type": "CreateAssertionOptions"
          }
        ],
        "returns": "Promise<GenerateAssertionResult>",
        "tags": [
          {
            "name": "deprecated",
            "text": "Use `createAssertion()`."
          }
        ],
        "docs": "Legacy alias for `createAssertion()`.",
        "complexTypes": [
          "GenerateAssertionResult",
          "GenerateAssertionOptions"
        ],
        "slug": "generateassertion"
      }
    ],
    "properties": []
  },
  "interfaces": [
    {
      "name": "IsSupportedResult",
      "slug": "issupportedresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "isSupported",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationPlatform"
          ],
          "type": "AttestationPlatform"
        },
        {
          "name": "format",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationFormat"
          ],
          "type": "AttestationFormat"
        }
      ]
    },
    {
      "name": "AppAttestCapabilities",
      "slug": "appattestcapabilities",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "platform",
          "tags": [],
          "docs": "Platform currently executing the plugin.",
          "complexTypes": [
            "AttestationPlatform"
          ],
          "type": "AttestationPlatform"
        },
        {
          "name": "appAttest",
          "tags": [],
          "docs": "Apple App Attest support.",
          "complexTypes": [
            "SupportStatus"
          ],
          "type": "SupportStatus"
        },
        {
          "name": "playIntegrity",
          "tags": [],
          "docs": "Android Play Integrity support.",
          "complexTypes": [
            "SupportStatus"
          ],
          "type": "SupportStatus"
        },
        {
          "name": "deviceCheck",
          "tags": [],
          "docs": "iOS DeviceCheck support.",
          "complexTypes": [
            "SupportStatus"
          ],
          "type": "SupportStatus"
        },
        {
          "name": "widevine",
          "tags": [],
          "docs": "Optional Android Widevine DRM support.",
          "complexTypes": [
            "WidevineCapabilities"
          ],
          "type": "WidevineCapabilities"
        }
      ]
    },
    {
      "name": "SupportStatus",
      "slug": "supportstatus",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "supported",
          "tags": [],
          "docs": "Whether the capability is available on the current device.",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    },
    {
      "name": "WidevineCapabilities",
      "slug": "widevinecapabilities",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "supported",
          "tags": [],
          "docs": "Whether the Widevine DRM scheme is supported by the device.",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "fingerprintAvailable",
          "tags": [],
          "docs": "Whether a Widevine fingerprint can be attempted.\n\nActual access is confirmed when calling `getWidevineFingerprint()`.",
          "complexTypes": [],
          "type": "boolean"
        },
        {
          "name": "securityLevelScanSupported",
          "tags": [],
          "docs": "Whether the Widevine security level property can be read.",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    },
    {
      "name": "PrepareResult",
      "slug": "prepareresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationPlatform"
          ],
          "type": "AttestationPlatform"
        },
        {
          "name": "format",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationFormat"
          ],
          "type": "AttestationFormat"
        }
      ]
    },
    {
      "name": "PrepareOptions",
      "slug": "prepareoptions",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "cloudProjectNumber",
          "tags": [],
          "docs": "Android only. Google Cloud project number for Play Integrity.\nCan be set globally in Capacitor config via `plugins.AppAttest.cloudProjectNumber`.",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "CreateAttestationResult",
      "slug": "createattestationresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "token",
          "tags": [],
          "docs": "Unified attestation token value.\n\niOS: base64 App Attest attestation.\nAndroid: Play Integrity token.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "challenge",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationPlatform"
          ],
          "type": "AttestationPlatform"
        },
        {
          "name": "format",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationFormat"
          ],
          "type": "AttestationFormat"
        }
      ]
    },
    {
      "name": "CreateAttestationOptions",
      "slug": "createattestationoptions",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "challenge",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "cloudProjectNumber",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "CreateAssertionResult",
      "slug": "createassertionresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "token",
          "tags": [],
          "docs": "Unified assertion token value.\n\niOS: base64 App Attest assertion.\nAndroid: Play Integrity token.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "payload",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "platform",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationPlatform"
          ],
          "type": "AttestationPlatform"
        },
        {
          "name": "format",
          "tags": [],
          "docs": "",
          "complexTypes": [
            "AttestationFormat"
          ],
          "type": "AttestationFormat"
        }
      ]
    },
    {
      "name": "CreateAssertionOptions",
      "slug": "createassertionoptions",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "payload",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "cloudProjectNumber",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "WidevineFingerprintResult",
      "slug": "widevinefingerprintresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "platform",
          "tags": [],
          "docs": "Always `android`.",
          "complexTypes": [],
          "type": "'android'"
        },
        {
          "name": "source",
          "tags": [],
          "docs": "Always `widevine`.",
          "complexTypes": [],
          "type": "'widevine'"
        },
        {
          "name": "fingerprint",
          "tags": [],
          "docs": "Salted SHA-256 fingerprint for storing alongside a user record.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "widevineIdSha256",
          "tags": [],
          "docs": "Unsalted SHA-256 hash of the Widevine device unique ID.",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "widevineIdBase64",
          "tags": [],
          "docs": "Raw Widevine device unique ID encoded as base64.\n\nReturned only when `includeRawId` is true.",
          "complexTypes": [],
          "type": "string | undefined"
        },
        {
          "name": "securityLevel",
          "tags": [],
          "docs": "Widevine security level when available, for example `L1` or `L3`.",
          "complexTypes": [],
          "type": "string | undefined"
        },
        {
          "name": "vendor",
          "tags": [],
          "docs": "DRM vendor when available.",
          "complexTypes": [],
          "type": "string | undefined"
        },
        {
          "name": "version",
          "tags": [],
          "docs": "DRM plugin version when available.",
          "complexTypes": [],
          "type": "string | undefined"
        },
        {
          "name": "description",
          "tags": [],
          "docs": "DRM plugin description when available.",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "WidevineFingerprintOptions",
      "slug": "widevinefingerprintoptions",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "includeRawId",
          "tags": [],
          "docs": "Return the raw Widevine device unique ID as base64.\n\nDefaults to `false`.",
          "complexTypes": [],
          "type": "boolean | undefined"
        },
        {
          "name": "hashSalt",
          "tags": [],
          "docs": "Optional salt used to derive `fingerprint`.\n\nAndroid uses the app package name when omitted.",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "DeviceCheckTokenResult",
      "slug": "devicechecktokenresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "token",
          "tags": [],
          "docs": "iOS DeviceCheck token encoded as base64.",
          "complexTypes": [],
          "type": "string"
        }
      ]
    },
    {
      "name": "OperationResult",
      "slug": "operationresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "success",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    },
    {
      "name": "StoreKeyIdOptions",
      "slug": "storekeyidoptions",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string"
        },
        {
          "name": "cloudProjectNumber",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string | undefined"
        }
      ]
    },
    {
      "name": "GetStoredKeyIdResult",
      "slug": "getstoredkeyidresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "keyId",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "string | null"
        },
        {
          "name": "hasStoredKey",
          "tags": [],
          "docs": "",
          "complexTypes": [],
          "type": "boolean"
        }
      ]
    },
    {
      "name": "AttestKeyResult",
      "slug": "attestkeyresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "attestation",
          "tags": [],
          "docs": "Legacy field equal to `token`.",
          "complexTypes": [],
          "type": "string"
        }
      ]
    },
    {
      "name": "GenerateAssertionResult",
      "slug": "generateassertionresult",
      "docs": "",
      "tags": [],
      "methods": [],
      "properties": [
        {
          "name": "assertion",
          "tags": [],
          "docs": "Legacy field equal to `token`.",
          "complexTypes": [],
          "type": "string"
        }
      ]
    }
  ],
  "enums": [],
  "typeAliases": [
    {
      "name": "AttestationPlatform",
      "slug": "attestationplatform",
      "docs": "",
      "types": [
        {
          "text": "'ios'",
          "complexTypes": []
        },
        {
          "text": "'android'",
          "complexTypes": []
        },
        {
          "text": "'web'",
          "complexTypes": []
        }
      ]
    },
    {
      "name": "AttestationFormat",
      "slug": "attestationformat",
      "docs": "",
      "types": [
        {
          "text": "'apple-app-attest'",
          "complexTypes": []
        },
        {
          "text": "'google-play-integrity-standard'",
          "complexTypes": []
        },
        {
          "text": "'web-fallback'",
          "complexTypes": []
        }
      ]
    },
    {
      "name": "GenerateKeyOptions",
      "slug": "generatekeyoptions",
      "docs": "",
      "types": [
        {
          "text": "PrepareOptions",
          "complexTypes": [
            "PrepareOptions"
          ]
        }
      ]
    },
    {
      "name": "GenerateKeyResult",
      "slug": "generatekeyresult",
      "docs": "",
      "types": [
        {
          "text": "PrepareResult",
          "complexTypes": [
            "PrepareResult"
          ]
        }
      ]
    },
    {
      "name": "AttestKeyOptions",
      "slug": "attestkeyoptions",
      "docs": "",
      "types": [
        {
          "text": "CreateAttestationOptions",
          "complexTypes": [
            "CreateAttestationOptions"
          ]
        }
      ]
    },
    {
      "name": "GenerateAssertionOptions",
      "slug": "generateassertionoptions",
      "docs": "",
      "types": [
        {
          "text": "CreateAssertionOptions",
          "complexTypes": [
            "CreateAssertionOptions"
          ]
        }
      ]
    }
  ],
  "pluginConfigs": []
}