/** * Turnkey DID Signer Adapter * Adapts Turnkey signing to work with didwebvh-ts signer interface * Uses @turnkey/sdk-server for all Turnkey operations (no viem/ethers dependency) */ import { Turnkey } from '@turnkey/sdk-server'; import type { TurnkeyWalletAccount } from '../types.js'; interface SigningInput { document: Record; proof: Record; } interface SigningOutput { proofValue: string; } /** * Signer that uses Turnkey for signing DID documents * Compatible with didwebvh-ts signer interface */ export declare class TurnkeyDIDSigner { private turnkeyClient; private signWith; private subOrgId; private publicKeyMultibase; private onExpired?; constructor(turnkeyClient: Turnkey, signWith: string, subOrgId: string, publicKeyMultibase: string, onExpired?: () => void); /** * Sign the document and proof using Turnkey */ sign(input: SigningInput): Promise; /** * Signs pre-canonicalized, pre-hashed bytes — the capability that lets a * Turnkey key author CEL events and sign credentials, not just did:webvh * logs. `signerFromExternalSigner` requires exactly this. */ signBytes(data: Uint8Array): Promise<{ signature: Uint8Array; }>; /** Turnkey reports an expired session as a generic error; surface it typed. */ private asExpiryError; /** * Get the verification method ID for this signer */ getVerificationMethodId(): string; /** * Verify a signature */ verify(signature: Uint8Array, message: Uint8Array, publicKey: Uint8Array): Promise; } /** * Create a DID:WebVH using OriginalsSDK.createDIDOriginal() with Turnkey signing */ export declare function createDIDWithTurnkey(params: { turnkeyClient: Turnkey; updateKeyAccount: TurnkeyWalletAccount; subOrgId: string; authKeyPublic: string; assertionKeyPublic: string; updateKeyPublic: string; domain: string; slug: string; onExpired?: () => void; }): Promise<{ did: string; didDocument: unknown; didLog: unknown; }>; export {}; //# sourceMappingURL=turnkey-did-signer.d.ts.map