Need hand-holding in understanding the different parameters passed when creating an Authenticator

The code below is picked from Silhouette but my question is generic. I noticed that when creating an authenticator in Silhouette, I have to pass different parameters. I do not understand the meaning and purpose of these parameters. Could someone please explain to me the meaning of the different parameters?

Cookie authenticator

CookieAuthenticatorService(settings: CookieAuthenticatorSettings, repository: Option[AuthenticatorRepository[CookieAuthenticator]], cookieSigner: CookieSigner, authenticatorEncoder: AuthenticatorEncoder, fingerprintGenerator: FingerprintGenerator, idGenerator: IDGenerator, clock: Clock)(implicit executionContext: ExecutionContext)
JWT Authenticator

new JWTAuthenticatorSettings(fieldName: String = "X-Auth-Token", requestParts: Option[Seq[api.util.RequestPart.Value]] = Some(Seq(RequestPart.Headers)), issuerClaim: String = "play-silhouette", authenticatorIdleTimeout: Option[FiniteDuration] = None, authenticatorExpiry: FiniteDuration = 12 hours, sharedSecret: String)
What does the parameters like Fingerprinting, requestparts etc mean?

Have you looked at the documentation? If some parameters are unclear, maybe it’s a good idea to update the documentation.

So, let me know which parameters are unclear for you.