### Question:
JWTDecoder implements DecodedJWT, Serializable { @Override public Map<String, Claim> getClaims() { return payload.getClaims(); } JWTDecoder(String jwt);   JWTDecoder(JWTParser converter, String jwt); @Override String getAlgorithm(); @Override String getType(); @Override String getContentType(); @Override String getKeyId(); @Override Claim getHeaderClaim(String name); @Override String getIssuer(); @Override String getSubject(); @Override List<String> getAudience(); @Override Date getExpiresAt(); @Override Date getNotBefore(); @Override Date getIssuedAt(); @Override String getId(); @Override Claim getClaim(String name); @Override Map<String, Claim> getClaims(); @Override String getHeader(); @Override String getPayload(); @Override String getSignature(); @Override String getToken();  }### Answer:
@Test public void shouldGetAvailableClaims() throws Exception { DecodedJWT jwt = JWT.decode("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjEyMzQ1Njc4OTAsImlhdCI6MTIzNDU2Nzg5MCwibmJmIjoxMjM0NTY3ODkwLCJqdGkiOiJodHRwczovL2p3dC5pby8iLCJhdWQiOiJodHRwczovL2RvbWFpbi5hdXRoMC5jb20iLCJzdWIiOiJsb2dpbiIsImlzcyI6ImF1dGgwIiwiZXh0cmFDbGFpbSI6IkpvaG4gRG9lIn0.2_0nxDPJwOk64U5V5V9pt8U92jTPJbGsHYQ35HYhbdE"); assertThat(jwt, is(notNullValue())); assertThat(jwt.getClaims(), is(notNullValue())); assertThat(jwt.getClaims(), is(instanceOf(Map.class))); assertThat(jwt.getClaims().get("exp"), is(notNullValue())); assertThat(jwt.getClaims().get("iat"), is(notNullValue())); assertThat(jwt.getClaims().get("nbf"), is(notNullValue())); assertThat(jwt.getClaims().get("jti"), is(notNullValue())); assertThat(jwt.getClaims().get("aud"), is(notNullValue())); assertThat(jwt.getClaims().get("sub"), is(notNullValue())); assertThat(jwt.getClaims().get("iss"), is(notNullValue())); assertThat(jwt.getClaims().get("extraClaim"), is(notNullValue())); }