UNPKG

@worldcoin/idkit

Version:

React SDK for World ID built on @worldcoin/idkit-core

50 lines (42 loc) 2.14 kB
import { IDKitErrorCodes, IDKitRequestConfig, Preset, IDKitResult } from '@worldcoin/idkit-core'; export { ConstraintNode, CredentialType, IDKit, IDKitErrorCode, IDKitErrorCodes, IDKitRequestConfig, IDKitResult, Preset, ResponseItemV3, ResponseItemV4, RpContext, deviceLegacy, documentLegacy, orbLegacy, secureDocumentLegacy, selfieCheckLegacy, signRequest } from '@worldcoin/idkit-core'; import { ReactElement } from 'react'; type PollingConfig = { polling?: { interval?: number; timeout?: number; }; }; type IDKitHookResult<TResult> = { open: () => void; reset: () => void; isAwaitingUserConnection: boolean; isAwaitingUserConfirmation: boolean; isSuccess: boolean; isError: boolean; connectorURI: string | null; result: TResult | null; errorCode: IDKitErrorCodes | null; isOpen: boolean; /** Use `isInWorldApp` to determine if the widget is running inside the World App (mini app context). */ isInWorldApp: boolean; }; type IDKitRequestHookConfig = IDKitRequestConfig & PollingConfig & { preset: Preset; }; type UseIDKitRequestHookResult = IDKitHookResult<IDKitResult>; type SupportedLanguage = "en" | "es" | "th"; type MaybePromise<T> = Promise<T> | T; type WidgetSharedProps<TResult> = { open: boolean; onOpenChange: (open: boolean) => void; handleVerify?: (result: TResult) => MaybePromise<void>; onSuccess: (result: TResult) => MaybePromise<void>; onError?: (errorCode: IDKitErrorCodes) => MaybePromise<void>; autoClose?: boolean; language?: SupportedLanguage; }; type IDKitRequestWidgetProps = IDKitRequestHookConfig & WidgetSharedProps<IDKitResult>; declare function useIDKitRequest(config: IDKitRequestHookConfig): UseIDKitRequestHookResult; declare function IDKitRequestWidget({ open, onOpenChange, handleVerify, onSuccess, onError, autoClose, language, ...config }: IDKitRequestWidgetProps): ReactElement | null; export { type IDKitHookResult, type IDKitRequestHookConfig, IDKitRequestWidget, type IDKitRequestWidgetProps, type PollingConfig, type SupportedLanguage, type UseIDKitRequestHookResult, useIDKitRequest };