lib/passport-oauth2-public-client/strategy.js
function Strategy(options, verifyPublic) {
  if (typeof options == 'function') {
    verifyPublic = options;
    options = {};
  }
  if (!verifyPublic) throw new Error('OAuth 2.0 public client strategy requires a verifyPublic function');

  passport.Strategy.call(this);
  this.name = 'oauth2-public-client';
  this._verifyPublic = verifyPublic;
  this._passReqToCallback = options.passReqToCallback;
}
function Strategy(options, verifyPublic) {
  if (typeof options == 'function') {
    verifyPublic = options;
    options = {};
  }
  if (!verifyPublic) throw new Error('OAuth 2.0 public client strategy requires a verifyPublic function');

  passport.Strategy.call(this);
  this.name = 'oauth2-public-client';
  this._verifyPublic = verifyPublic;
  this._passReqToCallback = options.passReqToCallback;
}
function Strategy ( options , verifyPublic ) { if ( typeof options == 'function' ) { verifyPublic = options ; options = { } ; } if ( ! verifyPublic ) throw new Error ( 'OAuth 2.0 public client strategy requires a verifyPublic function' ) ; passport . Strategy . call ( this ) ; this . name = 'oauth2-public-client' ; this . _verifyPublic = verifyPublic ; this . _passReqToCallback = options . passReqToCallback ; }
`PublicClientStrategy` constructor.

@api protected
PublicClientStrategy constructor .