Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Types don't allow state to be set. #56

Open
Bunpasi opened this issue Nov 29, 2024 · 0 comments
Open

Types don't allow state to be set. #56

Bunpasi opened this issue Nov 29, 2024 · 0 comments

Comments

@Bunpasi
Copy link

Bunpasi commented Nov 29, 2024

Hi.

The state is set for you in Strategy.prototype.authorizationParams. You can override this by setting state to true. This works fine in typeless JS. But in TS the types don't allow this: passport.authenticate('apple', {state: true}).

The Google version has this:

// allow Google-specific options when using "google" strategy
declare module "passport" {
    interface Authenticator<
        InitializeRet = express.Handler,
        AuthenticateRet = any,
        AuthorizeRet = AuthenticateRet,
        AuthorizeOptions = passport.AuthenticateOptions,
    > {
        authenticate(
            strategy: "google",
            options: AuthenticateOptionsGoogle,
            callback?: (...args: any[]) => any,
        ): AuthenticateRet;
        authorize(
            strategy: "google",
            options: AuthenticateOptionsGoogle,
            callback?: (...args: any[]) => any,
        ): AuthorizeRet;
    }
}

I hope this helps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant