• Stores authentication tokens securely

    Persists the full set of OAuth tokens (access token, refresh token, and expiry time) to secure storage. Dynamically imports the token storage module to avoid circular dependencies.

    This function:

    • Encrypts sensitive token data before storage
    • Updates both memory state and persistent storage
    • Triggers automatic token refresh scheduling
    • Logs appropriate debugging information
    • Handles errors gracefully with detailed reporting

    Parameters

    • tokens: AuthTokens

      Complete authentication token set

    Returns Promise<void>

    Promise resolving when tokens are successfully stored

    // Store tokens after successful authentication
    await setTokens({
    accessToken: "spotify-access-token",
    refreshToken: "spotify-refresh-token",
    expiresIn: 3600
    });
    console.log("User is now authenticated and tokens are stored securely");
    export async function setTokens(tokens: AuthTokens): Promise<void> {
    const mod = await import("./storage/token-operations");
    return mod.setTokens(tokens);
    }