This function sets up SuperTokens with the necessary configuration for the application, including API and website domains, connection URI, and recipe configurations for third-party authentication, email/password authentication, user roles, and session management. It also includes overrides for certain functions to handle custom behavior such as synchronizing new users and assigning roles upon sign-up or sign-in. The function should be called during the application's startup process to ensure that SuperTokens is properly initialized.
Description
This function sets up SuperTokens with the necessary configuration for the application, including API and website domains, connection URI, and recipe configurations for third-party authentication, email/password authentication, user roles, and session management. It also includes overrides for certain functions to handle custom behavior such as synchronizing new users and assigning roles upon sign-up or sign-in. The function should be called during the application's startup process to ensure that SuperTokens is properly initialized.