///
import { useQuery } from '@tanstack/react-query';
import { Address } from 'viem';
export declare enum StatusState {
READY = "ready",
LOADING = "loading",
SUCCESS = "success",
REJECTED = "rejected",
ERROR = "error"
}
export type SIWESession = {
address: Address;
chainId: number;
};
export type SIWEConfig = {
getNonce: () => Promise;
createMessage: (args: {
nonce: string;
address: Address;
chainId: number;
}) => Promise | string;
verifyMessage: (args: {
message: string;
signature: string;
}) => Promise;
getSession: () => Promise;
signOut: () => Promise;
enabled?: boolean;
nonceRefetchInterval?: number;
sessionRefetchInterval?: number;
signOutOnDisconnect?: boolean;
signOutOnAccountChange?: boolean;
signOutOnNetworkChange?: boolean;
};
export type SIWEContextValue = Required & {
nonce: ReturnType>;
session: ReturnType>;
status: StatusState;
signIn: () => Promise;
resetStatus: () => void;
};
export declare const SIWEContext: import("react").Context;