UNPKG

@turnkey/sdk-react-native

Version:
85 lines 2.9 kB
import { type ReactNode, type FC } from "react"; import type { TurnkeyClient } from "@turnkey/http"; import type { Activity, HashFunction, PayloadEncoding, Session, SignRawPayloadResult, User, WalletAccountParams } from "../types"; export interface TurnkeyContextType { session: Session | undefined; client: TurnkeyClient | undefined; user: User | undefined; setSelectedSession: (params: { sessionKey: string; }) => Promise<Session | undefined>; updateUser: (params: { email?: string; phone?: string; }) => Promise<Activity>; refreshUser: () => Promise<void>; createEmbeddedKey: (params?: { storageKey?: string; isCompressed?: boolean; }) => Promise<string>; createSession: (params: { bundle: string; expirationSeconds?: number; embeddedStorageKey?: string; sessionKey?: string; }) => Promise<Session>; createSessionFromEmbeddedKey: (params: { subOrganizationId: string; embeddedKey?: string; expirationSeconds?: number; embeddedStorageKey?: string; sessionKey?: string; }) => Promise<Session>; refreshSession: (params?: { expirationSeconds?: number; sessionKey?: string; }) => Promise<Session>; clearSession: (params?: { sessionKey?: string; }) => Promise<void>; clearAllSessions: () => Promise<void>; createWallet: (params: { walletName: string; accounts: WalletAccountParams[]; mnemonicLength?: number; }) => Promise<Activity>; importWallet: (params: { walletName: string; mnemonic: string; accounts: WalletAccountParams[]; }) => Promise<Activity>; exportWallet: (params: { walletId: string; }) => Promise<string>; signRawPayload: (params: { signWith: string; payload: string; encoding: PayloadEncoding; hashFunction: HashFunction; }) => Promise<SignRawPayloadResult>; handleGoogleOAuth: (params: { clientId: string; nonce: string; scheme: string; originUri?: string; redirectUri?: string; onSuccess: (oidcToken: string) => void; }) => Promise<void>; } export declare const TurnkeyContext: import("react").Context<TurnkeyContextType | undefined>; export interface TurnkeyConfig { apiBaseUrl: string; organizationId: string; onSessionCreated?: (session: Session) => void; onSessionSelected?: (session: Session) => void; onSessionExpired?: (session: Session) => void; onSessionCleared?: (session: Session) => void; onSessionEmpty?: () => void; onInitialized?: () => void; onSessionExpiryWarning?: (session: Session) => void; } export declare const TurnkeyProvider: FC<{ children: ReactNode; config: TurnkeyConfig; }>; //# sourceMappingURL=TurnkeyContext.d.ts.map