UNPKG

takis-idkit-react

Version:

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

47 lines (39 loc) 1.9 kB
import { IDKitErrorCodes, IDKitRequestConfig, Preset, IDKitResult } from '@worldcoin/idkit-core'; export { ConstraintNode, CredentialType, IDKit, IDKitErrorCode, IDKitErrorCodes, IDKitRequestConfig, IDKitResult, Preset, ResponseItemV3, ResponseItemV4, RpContext, documentLegacy, orbLegacy, secureDocumentLegacy, 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; }; 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; 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, onSuccess, onError, autoClose, language, ...config }: IDKitRequestWidgetProps): ReactElement | null; export { type IDKitHookResult, type IDKitRequestHookConfig, IDKitRequestWidget, type IDKitRequestWidgetProps, type PollingConfig, type SupportedLanguage, type UseIDKitRequestHookResult, useIDKitRequest };