UNPKG

@turnkey/ethers

Version:

Turnkey Signer for Ethers

39 lines 2.02 kB
import { type TypedDataDomain, type TypedDataField, type Provider, AbstractSigner, TransactionRequest, ethers } from "ethers"; import { TurnkeyClient, TurnkeyActivityError, TurnkeyRequestError, type TSignature, type TurnkeyApiTypes } from "@turnkey/http"; import type { TurnkeyBrowserClient } from "@turnkey/sdk-browser"; import type { TurnkeyServerClient } from "@turnkey/sdk-server"; import type { TurnkeySDKClientBase } from "@turnkey/core"; type TPayloadEncoding = TurnkeyApiTypes["v1PayloadEncoding"]; type TConfig = { /** * Turnkey client */ client: TurnkeyClient | TurnkeyBrowserClient | TurnkeyServerClient | TurnkeySDKClientBase; /** * Turnkey organization ID */ organizationId: string; /** * Turnkey wallet account address, private key address, or private key ID */ signWith: string; }; export declare class TurnkeySigner extends AbstractSigner implements ethers.Signer { private readonly client; readonly organizationId: string; readonly signWith: string; constructor(config: TConfig, provider?: Provider); connect(provider: Provider): TurnkeySigner; getAddress(): Promise<string>; private _signTransactionImpl; private _signTransactionWithErrorWrapping; signTransaction(transaction: TransactionRequest): Promise<string>; signMessage(message: string | Uint8Array): Promise<string>; _signMessageWithErrorWrapping(message: string, payloadEncoding?: TPayloadEncoding): Promise<string>; _signMessageImpl(message: string, payloadEncoding?: TPayloadEncoding): Promise<string>; signTypedData(domain: TypedDataDomain, types: Record<string, Array<TypedDataField>>, value: Record<string, any>): Promise<string>; _signTypedData: (domain: TypedDataDomain, types: Record<string, Array<TypedDataField>>, value: Record<string, any>) => Promise<string>; } export declare function serializeSignature(signature: TSignature): string; export { TurnkeyActivityError, TurnkeyRequestError }; //# sourceMappingURL=index.d.ts.map