useSignOut
Terminate the current Openfort session and reset the provider state.
Request
type Request = {
hook: 'useSignOut',
params: [options?: OpenfortHookOptions]
}
type OpenfortHookOptions = {
onSuccess?: (data: { error?: OpenfortError }) => void
onError?: (error: OpenfortError) => void
onSettled?: (data: { error?: OpenfortError } | undefined | null, error: OpenfortError | null) => void
throwOnError?: boolean
}
type OpenfortError = {
message: string
type: OpenfortErrorType
data: { [key: string]: any }
name: string
}
enum OpenfortErrorType {
AUTHENTICATION_ERROR = "AUTHENTICATION_ERROR",
WALLET_ERROR = "WALLET_ERROR",
CONFIGURATION_ERROR = "CONFIGURATION_ERROR",
VALIDATION_ERROR = "VALIDATION_ERROR",
}Response
type Response = SignOutReturn
type SignOutReturn = SignOutStatusFlags & {
signOut(options?: OpenfortHookOptions): Promise<void | { error: OpenfortError }>
}
type SignOutStatusFlags = {
isLoading: boolean
isError: boolean
isSuccess: boolean
error?: OpenfortError | null
}Example
import { useSignOut } from "@openfort/react"
function LogoutButton() {
const { signOut, isLoading, isError, isSuccess, error } = useSignOut({
throwOnError: true,
onSuccess: () => {},
onError: () => {},
onSettled: () => {},
})
return (
<button onClick={() => signOut()} disabled={isLoading}>
Sign out
</button>
)
}