type Web3ButtonProps<TActionFn extends ActionFn> = { action: TActionFn;
className: string;
connectWallet: {
auth?: {
loginOptional?: boolean;
onLogin?: (token: string) => void;
onLogout?: () => void;
};
btnTitle?: string;
className?: string;
modalSize?: "compact" | "wide";
modalTitle?: string;
modalTitleIconUrl?: string;
privacyPolicyUrl?: string;
showThirdwebBranding?: boolean;
style?: CSSProperties;
termsOfServiceUrl?: string;
welcomeScreen?: WelcomeScreen;
};
contractAbi: ContractInterface;
contractAddress: string;
isDisabled: boolean;
onError: (error: Error) => void;
onSubmit: () => void;
onSuccess: (result: Awaited<ReturnType<TActionFn>>) => void;
style: CSSProperties;
switchNetworkBtnTitle: string;
theme: "light" | "dark" | Theme;
type: "button" | "reset" | "submit";
};