// VENDORED from @dynamic-labs-sdk/client (src/turboModules/NativeKeychain.ts). // See NativeDynamicWebView.ts in this directory for why the spec is carried here. // Keep byte-identical to the source spec in @dynamic-labs-sdk/client. // // The `interface`, `default export`, and `react-native` import are hard // requirements of the codegen parser and intentionally deviate from the // project's conventions. Codegen discovers specs by the `Native*` filename // prefix, so this file cannot be renamed to `.native.ts`. import { type TurboModule, TurboModuleRegistry } from 'react-native'; export interface Spec extends TurboModule { deleteKey(key: string): Promise; generateKeyPair(key: string): Promise<{ publicKey: string }>; getPublicKey(key: string): Promise<{ publicKey: string } | null>; hasKey(key: string): Promise; isAvailable(): Promise; sign(key: string, payload: string): Promise<{ signature: string }>; } // eslint-disable-next-line import/no-default-export export default TurboModuleRegistry.getEnforcing('DynamicClientKeychain');