private static List<ValidationEvent> noExtraProperties(
            BiFunction<FromSourceLocation, String, ValidationEvent> emitter,
            FromSourceLocation sourceLocation,
            Map<Identifier, Literal> properties,
            List<Identifier> allowedProperties
    ) {
        List<ValidationEvent> events = new ArrayList<>();
        for (Identifier propertyName : properties.keySet()) {
            if (!allowedProperties.contains(propertyName)) {
                events.add(emitter.apply(sourceLocation,
                        String.format("Unexpected key: `%s` (valid keys: %s)",
                                propertyName,
                                allowedProperties)));
            }
        }
        return events;
    }
Returns if a given auth scheme is equivalent to {@code aws.auth#sigv4a}.

@param authScheme name of the auth scheme.
@return whether the auth scheme is equivalent to {@code aws.auth#sigv4a}.
smithy-aws-endpoints/src/main/java/software/amazon/smithy/rulesengine/aws/language/functions/EndpointAuthUtils.java